本申请涉及内容分发网络,更具体地,涉及一种区域协作节点缓存协同共享技术、计算机设备、计算机可读存储介质及计算机程序产品。
背景技术:
1、聚焦边缘/末端节点分发需求,针对边缘/末端节点计算资源有限、存储资源不足等问题,目前主要利用内容分发网络(content delivery network,简称cdn)将业务内容缓存至靠近用户的缓存节点(也称作cdn节点)上,实现节点用户访问内容的就近获取,一定程度上缓解了节点的流量压力。但是,传统的单一缓存节点往往无法满足高并发、大数据量的访问需求,很难从根本上降低区域节点分发压力、保障节点用户业务体验。
2、现有的缓存技术(即cdn缓存技术)主要通过将业务内容缓存至距离节点较近的缓存服务设备(即缓存节点),通过网络请求重定向将业务请求转发至最近的单一缓存节点予以响应,缩短业务访问时间、缓解节点访问压力。单一缓存节点需要缓存用户访问的所有源站数据,以保障用户的访问需求。
3、在边缘/末端节点缓存协同共享方面,现有的缓存技术主要基于网络拓扑结构、网络负载和节点位置信息进行分簇化管理,进而实现分级缓存。
4、然而,现有的缓存技术仍然存在以下缺陷:1)节点聚类方法不合理:节点聚类通常通过设定协作域内节点数量或内容相似度阈值的方式来实现。尽管这种方法在一定程度上考虑了节点设备和用户信息,但在分簇过程中过度依赖阈值或预先设定的节点数进行协作域划分,可能导致对缓存设备间协作能力的评估产生误差,从而削弱协作缓存的性能。并且,节点聚类的方法虽然能提升协作效率,但当节点间距离过远、网络状况不佳或缓存信息重复率过高时,反而会降低协作效益,增加用户访问时延,对整体缓存命中率提升有限。2)节点协作缓存命中率较低:边缘/末端节点只能与源站通信,缓存源站数据,并且边缘/末端节点的缓存容量有限,难以缓存所有用户可能请求的内容。
技术实现思路
1、为了解决上述问题,本发明提供了一种区域协作节点缓存协同共享技术、计算机设备、计算机可读存储介质及计算机程序产品,将实现节点最优聚类以及基于区域协作的节点缓存内容的协同共享,提高整个缓存系统的缓存命中率和缓存效率。
2、为实现上述目的,按照本发明的第一个方面,提供了一种区域协作节点缓存协同共享技术,该技术包括:
3、获取所有节点的访问历史数据和位置信息;
4、基于所有节点的访问历史数据和位置信息,构建节点关联网络模型;
5、通过聚类算法,将节点关联网络模型中的节点划分为不同的协作域;
6、在每个协作域内选择至少一个超级节点,协作域内的其余节点用于将其缓存内容目录同步至超级节点,超级节点用于管理和调度协作域内的缓存内容、以及与其他协作域内的节点通信。
7、进一步地,基于所有节点的访问历史数据和位置信息,构建节点关联网络模型,包括基于所有节点的访问历史数据,计算节点间的缓存内容相似性;基于所有节点的位置信息,计算节点间的通信能力;将节点作为顶点,将节点间的缓存内容相似性和节点间的通信能力作为边的权重,构建节点关联网络模型。
8、进一步地,基于所有节点的访问历史数据,计算节点间的缓存内容相似性,包括通过余弦相似性,基于所有节点的访问历史数据,计算节点间的缓存内容相似性。
9、进一步地,基于所有节点的位置信息,计算节点间的通信能力,包括基于所有节点的位置信息,计算节点间的位置距离;通过高斯相似性,基于节点间的位置距离,计算节点间的通信能力。
10、进一步地,通过聚类算法,将节点关联网络模型中的节点划分为不同的协作域,包括基于节点关联网络模型构建综合相似度矩阵;通过社区发现fn算法,基于综合相似度矩阵将节点关联网络模型中的节点划分为不同的协作域。
11、进一步地,上述区域协作节点缓存协同共享技术还包括在超级节点离开协作域的情况下,通过指定或选举的方式选择新的超级节点,并将协作域内的其余节点的缓存内容目录同步至新的超级节点。
12、进一步地,上述区域协作节点缓存协同共享技术还包括监控各个协作域内节点的业务访问情况和节点状态,节点状态包括节点加入、节点离开或节点故障;根据协作域内节点的业务访问情况和节点状态,调整协作域的结构和/或重新选择超级节点。
13、按照本发明的第二个方面,还提供了一种计算机设备,其包括存储器、处理器及存储在该存储器上的计算机程序,该处理器执行该计算机程序以实现上述任一项技术的步骤。
14、按照本发明的第三个方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一项技术的步骤。
15、按照本发明的第四个方面,还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述任一项技术的步骤。
16、总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
17、(1)本发明提供的一种区域协作节点缓存协同共享技术,首先基于所有节点的访问历史数据和位置信息,构建节点关联网络模型;然后通过聚类算法,将节点关联网络模型中的节点划分为不同的协作域,实现节点最优聚类以及基于区域协作的节点缓存内容的协同共享,从而最大化提升区域协作效率。并且,通过在每个协作域内选择至少一个超级节点,对协作域内的节点的缓存内容进行统一管理和调度进行统一管理,避免了缓存内容的冗余,显著提高了缓存内容的利用效率,从而达到了提高整个缓存系统的缓存命中率和缓存效率的目的。
18、(2)采用本发明提供的一种区域协作节点缓存协同共享技术,在接收到用户请求时,可以根据节点的缓存内容分布、节点间的网络状态以及用户对特定内容的偏好等因素,在协作域内选择最合适的节点来响应用户请求,因此还能够显著降低用户访问时延,提升用户体验。
19、(3)采用本发明提供的一种区域协作节点缓存协同共享技术,在超级节点因故需要脱离协作域时,可以指定新的超级节点或重新选举超级节点,并同步缓存目录。这种机制确保了协作域在超级节点变动时仍能维持其稳定性和功能性,避免了缓存系统因单个节点故障而崩溃的风险。
20、(4)采用本发明提供的一种区域协作节点缓存协同共享技术,通过协作域划分和超级节点管理机制,能够提高缓存系统的可扩展性。随着网络规模的扩大和节点数量的增加,能够方便地通过增加协作域和超级节点来扩展系统的处理能力,满足不断增长的用户需求。
21、(5)采用本发明提供的一种区域协作节点缓存协同共享技术,通过协作域划分和超级节点管理机制,能够提高网络资源的利用率,减少不必要的网络流量和传输时延,降低网络运营成本。
1.一种区域协作节点缓存协同共享技术,其特征在于,包括:
2.如权利要求1所述的技术,其特征在于,所述基于所有节点的访问历史数据和位置信息,构建节点关联网络模型,包括:
3.如权利要求2所述的技术,其特征在于,所述基于所有节点的访问历史数据,计算节点间的缓存内容相似性,包括:
4.如权利要求2所述的技术,其特征在于,所述基于所有节点的位置信息,计算节点间的通信能力,包括:
5.如权利要求1所述的技术,其特征在于,所述通过聚类算法,将所述节点关联网络模型中的节点划分为不同的协作域,包括:
6.如权利要求1所述的技术,其特征在于,所述技术还包括:
7.如权利要求1所述的技术,其特征在于,所述技术还包括:
8.一种计算机设备,其特征在于,包括存储器、处理器及存储在存储器上的计算机程序,所述处理器执行所述计算机程序以实现权利要求1-7中任一项所述技术的步骤。
9.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7中任一项所述技术的步骤。
10.一种计算机程序产品,其特征在于,包括计算机程序,所述计算机程序被处理器执行时实现权利要求1-7中任一项所述技术的步骤。