CN114546580A - 缓存部署系统、缓存部署方法、电子设备及存储介质 - Google Patents
缓存部署系统、缓存部署方法、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114546580A CN114546580A CN202011334113.7A CN202011334113A CN114546580A CN 114546580 A CN114546580 A CN 114546580A CN 202011334113 A CN202011334113 A CN 202011334113A CN 114546580 A CN114546580 A CN 114546580A
- Authority
- CN
- China
- Prior art keywords
- cache
- address
- cluster
- redis cluster
- redis
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供了一种缓存部署系统、缓存部署方法、电子设备及存储介质,涉及数据缓存技术领域。该方法包括:缓存管理平台,用于接收用户输入的模板内容,将模板内容导入至模板文件中获得部署请求,将部署请求发送至缓存计算平台;缓存计算平台,用于根据部署请求确定部署所需的Redis集群的规模,将Redis集群的地址以及代理服务器集群的地址写入环境变量;代理程序,用于读取环境变量以获得Redis集群的地址以及代理服务器集群的地址,将Redis集群的地址注册至代理服务器集群;代理服务器集群,用于将Redis集群的地址推送至应用程序。本申请实施例提高了部署效率。
Description
技术领域
本申请涉及数据缓存技术领域,具体而言,本申请涉及一种缓存部署系统、缓存部署方法、电子设备及存储介质。
背景技术
现有技术通常根据常用的集群形态整体构建部署包,需要时,通过部署工具进行部署并启动,线下提供实例调用地址,使用者配置缓存实例地址进行调用;资源不足时,通过缓存的CPU,内存使用情况进行实例的新增部署,加入集群,多为运维人员手动操作。
用户申请使用Redis中间件无规范流程,没有方便的通道;全部流程为线下人工操作,费时费力且易出错;并且应用配置使用Redis需要重启应用,影响用户体验。
发明内容
本发明实施例提供一种克服上述问题或者至少部分地解决上述问题的缓存部署系统、缓存部署方法、电子设备及存储介质。
第一方面,提供了一种缓存部署系统,该系统包括:
缓存管理平台,用于接收用户输入的模板内容,将模板内容导入至模板文件中获得部署请求,将部署请求发送至缓存计算平台;
缓存计算平台,用于根据部署请求确定部署所需的Redis集群的规模,并根据规模构建并启动Redis集群,将Redis集群的地址以及代理服务器集群的地址写入环境变量;
代理程序,用于读取环境变量以获得Redis集群的地址以及代理服务器集群的地址,将Redis集群的地址注册至代理服务器集群;
代理服务器集群,用于将Redis集群的地址推送至应用程序,以使得应用程序获得Redis集群地址并进行缓存数据的读写。
在一个可能的实现方式中,代理程序还用于根据Redis集群的地址,监控Redis集群中部署的缓存资源的使用状态,将监控结果上报至缓存管理平台。
在一个可能的实现方式中,缓存管理平台还用于:若监控结果符合预设的扩容要求,则向缓存计算平台发送扩容请求,以使得缓存计算平台增加Redis集群中Redis节点的个数。
在一个可能的实现方式中,模板内容还包括用户的唯一标识以及应用程序的唯一标识;
代理服务器集群还用于将Redis集群的地址同步至缓存管理平台,以使得缓存管理平台建立用户的唯一标识、应用程序的唯一标识以及Redis集群的地址的映射关系。
在一个可能的实现方式中,缓存管理平台还用于根据映射关系,向用户提供Redis集群的地址以及监控结果。
在一个可能的实现方式中,代理服务器集群包括主代理服务器以及从代理服务器;
其中,主代理服务器用于接收代理程序发送的注册请求,注册请求中记录Redis集群的地址,存储Redis集群的地址,将Redis集群的地址同步至从代理服务器中。
第二方面,提供了一种根据如上的缓存部署系统的缓存部署方法,包括:
缓存管理平台接收用户输入的模板内容,将模板内容导入至模板文件中获得部署请求,将部署请求发送至缓存计算平台;
缓存计算平台根据部署请求确定部署所需的Redis集群的规模,并根据规模构建并启动Redis集群,将Redis集群的地址以及代理服务器集群的地址写入环境变量;
代理程序读取环境变量以获得Redis集群的地址以及代理服务器集群的地址,将Redis集群的地址注册至代理服务器集群;
代理服务器集群将Redis集群的地址推送至应用程序,以使得应用程序获得Redis集群地址并进行缓存数据的读写。
第三方面,本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如第二方面所提供的方法的步骤。
第四方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第二方面所提供的方法的步骤。
本发明实施例提供的缓存部署系统、缓存部署方法、电子设备及存储介质,通过缓存管理平台接收用户输入的模板内容,将模板内容到模板文件获得部署请求,相比现有技术完全由用户自己编写代码生成部署请求,提高了部署效率,并且由缓存计算平台根据部署请求确定Redis集群的规模,能够适应性构建Redis集群,避免Redis集群容量冗余或不够的问题。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的一种缓存部署系统的结构示意图;
图2为本申请实施例的目标文件的界面示意图;
图3为本申请实施例的缓存管理平台、代理服务器集群以及缓存计算平台三方的交互示意图;
图4为本申请实施例的缓存管理平台与代理服务器集群的交互示意图;
图5示出了本申请实施例根据缓存部署系统进行缓存部署的方法;
图6为本申请另一个实施例的缓存部署系统的工作流程图;
图7为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本申请提供的缓存部署系统、缓存部署方法、电子设备及存储介质,旨在解决现有技术的如上技术问题。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
本申请实施例中提供了一种缓存部署系统,如图1所示,该系统包括:
缓存管理平台101,用于接收用户输入的模板内容,将模板内容导入至模板文件中获得部署请求,将部署请求发送至缓存计算平台,模板内容包括用户开发的应用程序所需的缓存资源。
本申请实施例的缓存管理平台通过向用户提供模板文件,从而使用户根据模板文件输入相应的模板内容,即可快速生成部署请求。应当理解的是,本申请实施例的模板内容用于记录配置应用程序所需缓存资源的规格。
参见图2,为本申请实施例的模板文件的界面示意图,如图所示,本申请实施例的模板文件的界面非常直观,可以设置版本类型、版本号、架构类型、分片数、节点类型、实例规格以及密码设置等模板内容。
具体地,本申请实施例支持两种版本类型,分别为社区办以及企业版,其中社区版能够做到即开即用,简单上手,并且完全兼容Redis协议。
版本号为指用来存储缓存资源的Redis集群的版本号,本申请实施例支持创建Redis5.0、Redis4.0以及Redis2.8等多个版本的Redis集群,从而为用户提供了丰富的应用场景,为了进一步方便用户结合自身的实际需求选择版本号,还支持查看每种版本号的Redis集群所支持的命令。
架构类型提供了集群版、标准版以及读写分离版等多种类型。
分片数是指将数据,在本申请实施例中特指缓存资源,拆分到多少个Redis实例中,这样每个实例将只包含所有键的子集。Redis的分片承担着两个主要目标:
允许使用很多电脑的内存总和来支持更大的数据库。没有分片,就被局限于单机能支持的内存容量。
允许伸缩计算能力到多核或多服务器,伸缩网络带宽到多服务器或多网络适配器。
本申请实施例可以支持4分配、8分片、10分片等。
节点类型即Redis节点是单副本还是双副本,以双副本为例,双副本是双击热备架构,双机热备的工作机制实际上是为整个网络系统的中心服务器提供了一种故障自动恢复能力,具有数据持久化,提供数据可靠性。
实例规格也即Redis节点的规格,该规格与上述架构类型存在对应关系,比如当选择集群版架构类型时,实例规格可以是16G集群版(8节点),模板文件还只是显示不同规格下的具体细节,例如在16G集群版(8节点)的规格下,每秒新建连接数:5万,最大连接数8万,每分片贷款:96Mbyte最大内网贷款:768Mbyte,集群机构8个节点。
缓存管理平台在获得部署请求后,将部署请求发送至缓存计算平台,以使得缓存计算平台具体计算创建的Redis集群的规模。
缓存计算平台102,用于根据部署请求确定部署所需的Redis集群的规模,并根据规模构建并启动Redis集群,将Redis集群的地址以及代理服务器集群的地址写入环境变量。
本申请实施例由缓存计算平台接收部署请求,并根据部署请求中记录的模板内容确定所需的Redis集群的规模,实现缓存实例容器化部署,容器技术可根据缓存实例运行情况,实现弹性扩缩容。
Redis集群是一个分布式(distributed)、容错(fault-tolerant)的Redis实现,Redis集群可以使用的功能是普通单机Redis所能使用的功能的一个子集(subset)。Redis集群中不存在中心(central)节点或者代理(proxy)节点,集群的其中一个主要设计目标是达到线性可扩展性(linear scalability)。Redis集群提供了一种运行Redis的方式,其中数据在多个Redis节点间自动分区。Redis集群还在分区期间提供一定程度的可用性,即在实际情况下能够在某些节点发生故障或无法通信时继续运行。本申请实施例的Redis集群用于存储应用程序所需的缓存资源。
环境变量(environment variables)指在操作系统中用来指定操作系统运行环境的一些参数,如:临时文件夹位置和系统文件夹位置等。环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。在本申请实施例中,环境变量用于存储Redis集群的地址以及代理服务器集群的地址。记录Redis集群的地址为后续应用程序利用Redis集群部署缓存做准备,记录代理服务器集群,是因为本申请实施例中向应用程序推送Redis集群地址的事项由代理服务器执行。
代理程序103,用于读取环境变量以获得Redis集群的地址以及代理服务器集群的地址,将Redis集群的地址注册至代理服务器集群。
本申请实施例通过设置代理程序,由代理程序将Redis集群的地址注册至代理服务器集群,使得代理服务器后续将Redis集群的地址推送至应用程序。
代理服务器集群104,用于将Redis集群的地址推送至应用程序,以使得应用程序获得Redis集群地址并进行缓存数据的读写。
本申请实施例的缓存部署系统,通过缓存管理平台接收用户输入的模板内容,将模板内容到模板文件获得部署请求,相比现有技术完全由用户自己编写代码生成部署请求,提高了部署效率,并且由缓存计算平台根据部署请求确定Redis集群的规模,能够适应性构建Redis集群,避免Redis集群容量冗余或不够的问题。
在上述各实施例的基础上,作为一种可选实施例,代理程序还用于根据Redis集群的地址,监控Redis集群中部署缓存资源的使用状态,将监控结果上报至缓存管理平台。
本申请实施例的代理程序能够将Redis集群的地址注册至代理服务器集群,还有一个重要的功能是对Redis集群中部署的缓存资源的使用状态进行监控,从而为后续扩容Redis集群奠定基础。并且,由于用户是通过与缓存管理平台交互的,缓存管理平台相当于前端,所以代理程序将监控结果上报至缓存管理平台,能够达到由缓存管理平台对监控结果进行展示的目的,从而方便用户直观地获取到缓存资源的使用状态。
作为一种可选实施例,代理程序与Redis集群部署在一起,同属一个JVM(JavaVirtual Machine,Java虚拟机),这样代理程序能够更迅速地获取Redis集群的负载,也即Redis集群中部署的缓存资源的使用状态,使用状态越高,说明Redis集群的负载越大,越需要进行扩容。
在上述各实施例的基础上,作为一种可选实施例,缓存管理平台还用于:若监控结果符合预设的扩容要求,则向缓存计算平台发送扩容请求,以使得缓存计算平台增加Redis集群中Redis节点的个数。
具体地,例如当缓存资源的使用状态过于频繁,使得Redis集群的内存利用率高于95%时,视为监控结果符合预设的扩容要求。缓存计算平台扩容后会缓存资源根据新的分片算法进行后台迁移操作。
在上述各实施例的基础上,作为一种可选实施例,模板内容还包括用户的唯一标识以及应用程序的唯一标识;
代理服务器集群还用于将Redis集群的地址同步至缓存管理平台,以使得缓存管理平台建立用户的唯一标识、应用程序的唯一标识以及Redis集群的地址的映射关系。
图3为本申请实施例的缓存管理平台、代理服务器集群以及缓存计算平台三方的交互示意图,如图3所示,缓存计算平台在构建Redis集群中的各个Redis节点后,由代理程序向代理服务器集群上报Redis集群的地址,代理服务器集群进一步将Redis集群的地址同步至缓存管理平台,用户能够获知应用程序的缓存资源部署的位置。
本申请实施例的缓存管理平台可以在本地创建目录,目录的级别从高到低分别为用户、应用程序以及Redis集群,例如用户001开发的应用程序110的缓存部署在Redis集群200中,那么Redis集群200的地址存放在缓存管理平台的用户001的文件夹中应用程序110的子文件夹中,用户001还开发了另一款应用程序120,应用程序120的缓存部署在Redis集群300中,那么Redis集群300的地址存在在缓存管理平台的用户001的文件夹中应用程序120的子文件夹中。当用户打开缓存管理平台中的用户001的文件夹后,可以看到应用程序110和应用程序120的子文件夹,从而方便用户更好地管理缓存资源。
在上述各实施例的基础上,作为一种可选实施例,本申请实施例的缓存管理平台还根据映射关系,向用户提供Redis集群的地址以及监控结果。
需要说明的是,用户可以向缓存管理平台输入查询请求,查询请求中记录用户的唯一标识,从而缓存管理平台根据查询请求中记录的用户的唯一标识,根据映射关系,提供Redis集群的地址以及监控结果。
在上述各实施例的基础上,本申请实施例的代理服务器集群包括主代理服务器以及从代理服务器;
其中,主代理服务器用户接收代理程序发送的注册请求,注册请中记录Redis集群的地址,存储Redis集群的地址,将Redis集群的地址同步至从代理服务器中。
图4为本申请实施例的缓存管理平台与代理服务器集群的交互示意图,如图4所示,代理程序在获取代理服务器集群的地址后,可以向代理服务器集群中的任意一个主代理服务器建立连接,然后向其发送Redis集群的地址,接收到Redis集群的地址的主代理服务器将Redis集群的地址同步给其他主代理服务器以及与自身连接的从代理服务器,从而使得代理服务器集群均同步有Redis集群的地址,主代理服务器还向缓存管理平台同步Redis集群的地址。
本申请实施例的代理服务器集群中的代理服务器具有两种角色,一种是具有读写权限的主代理服务器,一种是只具有读权限的从代理服务器,从代理服务器具有选主能力。
主代理服务器用于接收代理程序发送的注册请求,注册请求中记录Redis集群的地址,主代理服务其在接收到注册请求后,一方面存储Redis集群的地址,另一方面将Redis集群的地址同步至从代理服务器,使得整个代理服务器集群内的所有代理服务器都同步Redis集群的地址,那么任何一个代理服务器都可以向应用程序推送Redis集群的地址。本申请实施例可以由主代理服务器向缓存管理平台同步Redis集群的地址。
在上述各实施例的基础上,代理服务器集群中的代理服务器个数为单数,这样能够保证在小部分代理服务器宕机情况下成功选主。
图5示出了本申请实施例根据缓存部署系统进行缓存部署的方法,参见图5,可知:
S101、用户通过缓存管理平台提供的模板文件,输入目标内容,由缓存管理平台生成部署请求,并将部署请求发送至缓存计算平台;
S102、缓存计算平台根据部署请求确定部署所需的Redis集群的规模,并根据规模构建并启动Redis集群,将Redis集群的地址以及代理服务器集群的地址写入环境变量;
S104、代理程序读取环境变量,获得Redis集群的地址以及代理服务器集群的地址,将Redis集群的地址注册到代理服务器集群中;
S105、代理服务器集群将Redis集群的地址推送至应用程序,应用程序将缓存资源部署至Redis集群,完成缓存资源的布置。
图6为本申请另一个实施例的缓存部署系统的工作流程图,如图6所示,包括:
第一步,缓存技术服务化,线下申请的长流程转换为线上可见的自服务:用户在缓存管理平台通过模板文件可视化地申请应用运行所需缓存资源。通过编排模板的方式提供标准化的Redis集群的指标,根据用户的需要,编排出所需Redis集群。将Redis中间件作为服务提供给用户,按需分配。
第二步,部署自动化,集成缓存计算平台,实现Redis集群的自动部署及集群搭建:与传统手工及脚本的方式部署、配置缓存集群不同,本申请实施例通过缓存计算平台实现Redis集群规模的计算,网络资源的调度,并根据用户编排的模板文件,完成Redis集群的部署及自动化脚本配置。节省人工成本,降低人工操作的风险。
第三步,注册与发现自动化,使用代理程序及代理服务器集群实现Redis集群的自动注册及Redis集群地址的推送。通过代理程序实现Redis集群启动后的地址信息注册到代理服务器集群,代理服务器集群通过推送功能,实现应用对Redis集群的发现,减少了人工的配置及线下与使用者的交互,代理服务器集群提供对缓存的监控,健康检查,在提升效率的同时保障了系统的高可用性。
第四步,应用根据获取到的Redis集群的地址,实现缓存部署。
本申请实施例中提供了一种电子设备,该电子设备包括:存储器和处理器;至少一个程序,存储于存储器中,用于被处理器执行时,与现有技术相比可实现:通过缓存管理平台接收用户输入的模板内容,将模板内容到模板文件获得部署请求,相比现有技术完全由用户自己编写代码生成部署请求,提高了部署效率,并且由缓存计算平台根据部署请求确定Redis集群的规模,能够适应性构建Redis集群,避免Redis集群容量冗余或不够的问题。
在一个可选实施例中提供了一种电子设备,如图7所示,图7所示的电子设备4000包括:处理器4001和存储器4003。其中,处理器4001和存储器4003相连,如通过总线4002相连。可选地,电子设备4000还可以包括收发器4004。需要说明的是,实际应用中收发器4004不限于一个,该电子设备4000的结构并不构成对本申请实施例的限定。
处理器4001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(FieldProgrammable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器4001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线4002可包括一通路,在上述组件之间传送信息。总线4002可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线4002可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器4003可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscReadOnly Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器4003用于存储执行本申请方案的应用程序代码,并由处理器4001来控制执行。处理器4001用于执行存储器4003中存储的应用程序代码,以实现前述方法实施例所示的内容。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与现有技术相比,通过缓存管理平台接收用户输入的模板内容,将模板内容到模板文件获得部署请求,相比现有技术完全由用户自己编写代码生成部署请求,提高了部署效率,并且由缓存计算平台根据部署请求确定Redis集群的规模,能够适应性构建Redis集群,避免Redis集群容量冗余或不够的问题。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种缓存部署系统,其特征在于,包括:
缓存管理平台,用于接收用户输入的模板内容,将所述模板内容导入至模板文件中获得部署请求,将所述部署请求发送至缓存计算平台;
所述缓存计算平台,用于根据所述部署请求确定部署所需的Redis集群的规模,并根据所述规模构建并启动Redis集群,将所述Redis集群的地址以及代理服务器集群的地址写入环境变量;
代理程序,用于读取环境变量以获得所述Redis集群的地址以及代理服务器集群的地址,将所述Redis集群的地址注册至代理服务器集群;
所述代理服务器集群,用于将Redis集群的地址推送至应用程序,以使得所述应用程序获得Redis集群地址并进行缓存数据的读写。
2.根据权利要求1所述的缓存部署系统,其特征在于,所述代理程序还用于根据所述Redis集群的地址,监控所述Redis集群中部署的缓存资源的使用状态,将监控结果上报至所述缓存管理平台。
3.根据权利要求2所述的缓存部署系统,其特征在于,所述缓存管理平台还用于:若所述监控结果符合预设的扩容要求,则向所述缓存计算平台发送扩容请求,以使得所述缓存计算平台增加所述Redis集群中Redis节点的个数。
4.根据权利要求2所述的缓存部署系统,其特征在于,所述模板内容还包括用户的唯一标识以及应用程序的唯一标识;
所述代理服务器集群还用于将所述Redis集群的地址同步至所述缓存管理平台,以使得所述缓存管理平台建立所述用户的唯一标识、应用程序的唯一标识以及所述Redis集群的地址的映射关系。
5.根据权利要求4所述的缓存部署系统,其特征在于,所述缓存管理平台还用于根据所述映射关系,向用户提供Redis集群的地址以及所述监控结果。
6.根据权利要求1所述的缓存部署系统,其特征在于,所述代理服务器集群包括主代理服务器以及从代理服务器;
其中,所述主代理服务器用于接收所述代理程序发送的注册请求,所述注册请求中记录Redis集群的地址,存储所述Redis集群的地址,将所述Redis集群的地址同步至所述从代理服务器中。
7.根据权利要求6所述的缓存部署系统,其特征在于,所述代理服务器集群中代理服务器的个数为单数。
8.一种根据权利要求1-7任意一项所述缓存部署系统的缓存部署方法,其特征在于,包括:
缓存管理平台接收用户输入的模板内容,将所述模板内容导入至模板文件中获得部署请求,将所述部署请求发送至缓存计算平台;
缓存计算平台根据所述部署请求确定部署所需的Redis集群的规模,并根据所述规模构建并启动Redis集群,将所述Redis集群的地址以及代理服务器集群的地址写入环境变量;
代理程序读取环境变量以获得所述Redis集群的地址以及代理服务器集群的地址,将所述Redis集群的地址注册至代理服务器集群;
代理服务器集群将Redis集群的地址推送至应用程序,以使得所述应用程序获得Redis集群地址并进行缓存数据的读写。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求8所述缓存部署方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求8所述缓存部署方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011334113.7A CN114546580A (zh) | 2020-11-24 | 2020-11-24 | 缓存部署系统、缓存部署方法、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011334113.7A CN114546580A (zh) | 2020-11-24 | 2020-11-24 | 缓存部署系统、缓存部署方法、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114546580A true CN114546580A (zh) | 2022-05-27 |
Family
ID=81660056
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011334113.7A Pending CN114546580A (zh) | 2020-11-24 | 2020-11-24 | 缓存部署系统、缓存部署方法、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114546580A (zh) |
-
2020
- 2020-11-24 CN CN202011334113.7A patent/CN114546580A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10891267B2 (en) | Versioning of database partition maps | |
CA2978889C (en) | Opportunistic resource migration to optimize resource placement | |
US8386540B1 (en) | Scalable relational database service | |
US9201742B2 (en) | Method and system of self-managing nodes of a distributed database cluster with a consensus algorithm | |
EP2810164B1 (en) | Managing partitions in a scalable environment | |
US9852010B2 (en) | Decoupling partitioning for scalability | |
CN103095687B (zh) | 元数据处理方法及装置 | |
US8380757B1 (en) | Techniques for providing a consolidated system configuration view using database change tracking and configuration files | |
CN102938784A (zh) | 应用于分布式存储系统中的数据存储方法和系统 | |
CN101901275A (zh) | 一种分布式存储系统及其方法 | |
US10154091B1 (en) | Deploying infrastructure units according to resource hosting constraints | |
CN110347651A (zh) | 基于云存储的数据同步方法、装置、设备及存储介质 | |
CN110413694A (zh) | 元数据管理方法及相关装置 | |
CN105095103A (zh) | 用于云环境下的存储设备管理方法和装置 | |
CN113051102A (zh) | 文件备份方法、装置、系统、存储介质和计算机设备 | |
CN104517067A (zh) | 访问数据的方法、装置及系统 | |
CN102867029B (zh) | 一种管理分布式文件系统目录的方法及分布式文件系统 | |
CN115470303B (zh) | 一种数据库访问方法、装置、系统、设备及可读存储介质 | |
CN111274004A (zh) | 进程实例管理方法、装置及计算机存储介质 | |
Pankowski | Consistency and availability of Data in replicated NoSQL databases | |
CN114328007B (zh) | 一种容器备份还原方法、装置及其介质 | |
US8886751B1 (en) | Methods and apparatus for a data driven system implementation using model components | |
CN114546580A (zh) | 缓存部署系统、缓存部署方法、电子设备及存储介质 | |
CN111212138B (zh) | 一种跨站点存储系统及数据信息访问方法 | |
US11121981B1 (en) | Optimistically granting permission to host computing resources |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |