The architecture method and network structure of the invention adopt Redis centralized caching queue service technology, deploy Redis application service according to Master/Slave mode on the caching queue server, and realize disaster tolerance for the data and service of the node. When the Master node is down, the Slave node automatically replaces. Through Sentinel technology, multiple caching queue servers are clustered. When the existing caching queue service can not meet the performance requirements of current Internet applications, new nodes can be deployed to join the caching queue constructed by Sentinel dynamically. After the modification of the encapsulated caching queue service client program, the operation capability of the caching queue service cluster is provided. Through the built-in uniqueness algorithm, the fragmentation location of data storage is calculated. Combined with the service capability provided by Sentinel, the caching queue service client program can quickly and accurately locate to the corresponding caching queue node group, which perfectly solves the horizontal expansion problem of the caching queue service.
【技术实现步骤摘要】
基于Redis的集中式缓存队列服务架构方法及网络结构
本专利技术涉及一种通过服务架构的调整和优化来提升应用服务器的性能,从而提高响应速度的技术,具体的说是一种基于Redis的集中式缓存队列服务架构方法及网络结构。技术背景目前在大型互联网应用的运营过程中,伴随着用户量的逐步增长,应用的访问量和应用的复杂度都日益提升,要想为用户提供一个良好的访问体验,就必须解决用户访问应用时,应用的响应速度问题(包括网页的打开速度和APP程序的数据获取和刷新速度)。大多数互联网应用在建设初期,并未考虑过此方面的问题,或者对此方面预估不足,当应用的响应速度不足以支撑用户的体量和业务逻辑的复杂度时,互联网应用的运营商一般会采用两个渠道并行的方式解决问题:第一种是更换、增加硬件的方式提升应用服务器的性能,从而提高响应速度,但是以此带来的问题,是较大的硬件资源投入和旧的资源的浪费;第二种是软件侧进行架构的调整和程序代码的优化,通过架构体系的调整从根本上解决性能的瓶颈,通过程序代码的重构改造实现程序业务逻辑处理速度的提升。而在软件侧改造的过程中,对于缓存队列的使用是一个使用率相当高的解决方案。传统的对于缓存队列的使用,都是直接采用开源的软件项目(例如:Memcached、Redis),直接部署单点的缓存队列服务器,通过开源项目提供的客户端程序,让互联网应用服务端对缓存服务器进行读取。此种模式有几个问题:(1)单点的缓存服务器在容灾方面的不足,若出现单点的服务器宕机,则缓存队列服务立刻停止,依赖于此服务的应用将相继发生错误;(2)单点的缓存队列服务也存在着性能的瓶颈,当访问体量超过单 ...
【技术保护点】
1.基于Redis的集中式缓存队列服务架构方法,其特征在于包括以下步骤:由两个Redis节点按Master/Slave方式部署构造成一个具备服务和数据容灾的高速缓存队列服务节点组的步骤;利用Sentinel技术,将多组高速缓存队列服务节点组进行集群,组成高速缓存队列服务集群,以统一的地址和端口对外提供服务的步骤;应用程序节点通过内嵌的缓存队列客户端程序包与高速缓存队列服务集群进行通信,利用程序包提供的接口,实现对缓存队列操作的步骤。
【技术特征摘要】
1.基于Redis的集中式缓存队列服务架构方法,其特征在于包括以下步骤:由两个Redis节点按Master/Slave方式部署构造成一个具备服务和数据容灾的高速缓存队列服务节点组的步骤;利用Sentinel技术,将多组高速缓存队列服务节点组进行集群,组成高速缓存队列服务集群,以统一的地址和端口对外提供服务的步骤;应用程序节点通过内嵌的缓存队列客户端程序包与高速缓存队列服务集群进行通信,利用程序包提供的接口,实现对缓存队列操作的步骤。2.根据权利要求1基于Redis的集中式缓存队列服务架构方法,其特征在于:所述由两个或两个以上的Redis节点按Master/Slave方式部署构造成一个具备服务和数据容灾的高速缓存队列服务节点组的步骤包括,准备多台缓存队列服务器,在每台服务器上采用Master/Slave模式部署Redis应用节点,组成高速缓存队列服务节点组;所述利用Sentinel技术,将多组高速缓存队列服务节点组进行集群,以统一的地址和端口对外提供服务的步骤包括,通过Sentinel模式将多台服务器的高速缓存队列节点进行集群,由Sentinel统一暴露出缓存队列服务的调用地址和端口。3.根据权利要求1基于Redis的集中式缓存队列服务架构方法,其特征在于:还包括嵌入缓存队列客户端程序包的步骤,互联网应用的服务端由多个应用节点构成的应用集群,在应用集群的每个节点的应用程序中嵌入缓存队列客户端程序包,同时修改该节点的配置文件,设置配置文件中的节点唯一标识属性值和缓存队列服务调用地址和端口。4.根据权利要求1基于Redis的集中式缓存队列服务架构方法,其特征在于:所述用程序节点通过内嵌的缓存队列客户端程序包与高速缓存队列服务集群进行通信,利用程序包提供的接口,实现对缓存队列操作的步骤包括,...
【专利技术属性】
技术研发人员:甘傲然,
申请(专利权)人:南京感度信息技术有限责任公司,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。