CN111857585A - 存储系统自定义业务功能配置方法、装置、设备及介质 - Google Patents
存储系统自定义业务功能配置方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN111857585A CN111857585A CN202010664666.2A CN202010664666A CN111857585A CN 111857585 A CN111857585 A CN 111857585A CN 202010664666 A CN202010664666 A CN 202010664666A CN 111857585 A CN111857585 A CN 111857585A
- Authority
- CN
- China
- Prior art keywords
- client
- message
- service
- subscription
- data
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000012795 verification Methods 0.000 claims abstract description 34
- 230000006870 function Effects 0.000 claims description 82
- 230000008569 process Effects 0.000 claims description 19
- 238000012545 processing Methods 0.000 claims description 12
- 230000002085 persistent effect Effects 0.000 claims description 9
- 230000002688 persistence Effects 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 4
- 238000012544 monitoring process Methods 0.000 abstract description 9
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000000977 initiatory effect Effects 0.000 abstract description 2
- 238000007726 management method Methods 0.000 description 51
- 238000010586 diagram Methods 0.000 description 11
- 230000006399 behavior Effects 0.000 description 8
- 238000011161 development Methods 0.000 description 7
- 238000004573 interface analysis Methods 0.000 description 4
- 238000003032 molecular docking Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000005111 flow chemistry technique Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开了提供的存储系统自定义业务功能配置方法,该方法在对发起消息服务订阅请求的客户端进行客户端身份校验通过后,根据不同客户端自定义的待订阅业务项生成对应的指标订阅任务,根据客户端对应的待订阅业务项获取集群内不同的配置任务比如告警、性能监控、日志管理、数据缓存、业务配置等对应的业务数据,将获取的业务数据主动推送到对应的客户端,支持了该客户端对于存储系统自定义业务功能的实现,实现了可配置的业务功能消息订阅。本申请还提供了一种存储系统自定义业务功能配置装置、设备及一种可读存储介质,具有上述有益效果。
Description
技术领域
本申请涉及分布式存储技术领域,特别涉及一种存储系统自定义业务功能配置方法、装置、设备及一种可读存储介质。
背景技术
以网络互联的新基建在海量存储大数据时代已越发迫切,分布式存储集群及其管理能力在不同的应用场景下也被给予了更为严格、智能、实时、精准的要求和期望。虽然目前大多数分布式管理系统内已集成告警、性能监控、数据缓存、日志管理、业务配置管理等诸多功能,但是随着供应客户业务的增长呈现多元化、定制化、需求差异化方向发展,面对诸如视频监控、海量小文件、交通卡口道路实时成像、医疗影像数据、政务管理数据等不同业务场景下的不同海量存储管理需求,不同的客户群体存在不同的定制化管理要求。
为满足不同客户的不同管理要求,目前普遍采用为不同的客户定制开发不同的业务子系统的方式,但是该种方式下各种业务单元交叉迭代工作量沉重、任务杂乱,使得集群管理臃肿累赘,不利于统一化管理。
因此,如何在满足客户差异化分布式管理系统的功能管理需求的同时保证高效的统一管理,是本领域技术人员急需解决的问题。
发明内容
本申请的目的是提供一种存储系统自定义业务功能配置方法,该方法可以在满足客户差异化分布式管理系统的功能管理需求的同时保证高效的统一管理;本申请的另一目的是提供一种存储系统自定义业务功能配置装置、设备及一种可读存储介质。
为解决上述技术问题,本申请提供一种存储系统自定义业务功能配置方法,包括:
服务端接收到客户端发起的消息服务订阅请求后,对所述客户端进行身份鉴权校验;
若校验通过,接收客户的消息订阅请求数据,并根据所述消息订阅请求数据建立客户与待订阅业务项间的对应关系;其中,所述消息订阅请求数据包括分布式管理系统的自定义业务功能管理项;
根据所述客户端对应的待订阅业务项,获取集群对应的业务数据;
将所述业务数据推送至所述客户端的订阅消息上报地址。
可选地,所述服务端接收到客户端发起的消息服务订阅请求后,对所述客户端进行身份鉴权校验,包括:
服务端接收到客户端发起的消息服务订阅请求后,确定所述客户端的客户标识、用户名以及密码,作为待校验信息;
对所述待校验信息进行基本参数格式校验;
若所述基本参数格式校验通过,对所述待校验信息进行解密验证;
若所述解密验证通过,根据解密后的待校验信息查询所述客户端是否为身份认证用户;
若是,判定所述客户端身份鉴权校验通过。
可选地,在所述接收客户的消息订阅请求数据之前,还包括:
生成身份认证令牌,并将所述身份认证令牌持久化;
则在执行所述接收客户的消息订阅请求数据的同时,还包括:判断对应的令牌信息是否过期;若已过期,则更新该令牌的过期时间,并同步更新持久化操作。
可选地,在所述接收客户的消息订阅请求数据之前,还包括:启动文件排它锁。
可选地,所述接收客户的消息订阅请求数据,并根据所述消息订阅请求数据建立客户与待订阅业务项间的对应关系,包括:
生成对应模板消息类的实例对象,并打开消息通道,创建消息连接;
根据所述消息连接传输的消息订阅请求数据初始化全局定时器;
开启消息订阅主进程;
初始化线程池,并将全局定时器实例化后启动;
根据所述消息订阅请求数据中客户端订阅业务功能以及订阅反馈周期为所述全局定时器添加对应的订阅任务;
将根据所述订阅任务生成的客户端订阅信息持久化。
可选地,在根据客户订阅配置初始化全局的定时器之前,还包括:
将所述实例对象全局化。
可选地,将所述业务数据推送至所述客户端的订阅消息上报地址,包括:
判断是否存储有所述客户端订阅消息的上报地址;
若未存储,向所述客户端发送集群ID,请求获取订阅消息的上报地址;
接收到所述上报地址后,将所述上报地址保存至所述订阅信息数据表中所述客户端对应的数据项中;
将所述业务数据发送至所述上报地址;
若已存储,判断所述客户端的上报地址令牌时间是否过期;
若已过期,执行向所述客户端发送集群ID,请求获取订阅消息的上报地址的步骤;
若未过期,执行将所述业务数据发送至所述上报地址的步骤。
本申请还提供了一种存储系统自定义业务功能配置装置,应用于服务端,该装置包括:
鉴权校验单元,用于接收到客户端发起的消息服务订阅请求后,对所述客户端进行身份鉴权校验;若校验通过,触发请求数据处理单元;
请求数据处理单元,用于接收客户的消息订阅请求数据,并根据所述消息订阅请求数据建立客户与待订阅业务项间的对应关系;其中,所述消息订阅请求数据包括分布式管理系统的自定义业务功能管理项;
业务数据获取单元,用于根据所述客户端对应的待订阅业务项,获取集群对应的业务数据;
业务数据推送单元,用于将所述业务数据推送至所述客户端的订阅消息上报地址。
本申请还提供了一种计算机设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现所述的存储系统自定义业务功能配置方法的步骤。
本申请还提供了一种可读存储介质,所述可读存储介质上存储有程序,所述程序被处理器执行时实现所述存储系统自定义业务功能配置方法的步骤。
本申请所提供的存储系统自定义业务功能配置方法,该方法在对发起消息服务订阅请求的客户端进行客户端身份校验通过后,根据不同客户端自定义的待订阅业务项生成对应的指标订阅任务,根据客户端对应的待订阅业务项获取集群内不同的配置任务比如告警、性能监控、日志管理、数据缓存、业务配置等对应的业务数据,将获取的业务数据主动推送到对应的客户端,支持了该客户端对于存储系统自定义业务功能的实现,实现了可配置的业务功能消息订阅。
本申请还提供了一种存储系统自定义业务功能配置装置、设备及一种可读存储介质,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种存储系统自定义业务功能配置方法的流程图;
图2为本申请实施例提供的一种数据流程处理时序图;
图3为本申请实施例提供的一种身份认证数据持久化具体表结构及属性示意图;
图4为本申请实施例提供的一种订阅信息数据表结构及属性示意图;
图5为本申请实施例提供的一种数据库结构表和属性ER示意图;
图6为本申请实施例提供的一种存储系统自定义业务功能配置装置的结构框图;
图7为本申请实施例提供的一种整体部署框架图;
图8为本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
本申请的核心是提供一种存储系统自定义业务功能配置方法,该方法可以在满足客户差异化分布式管理系统的功能管理需求的同时保证高效的统一管理;本申请的另一核心是提供一种存储系统自定义业务功能配置装置、设备及一种可读存储介质。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参考图1,图1为本实施例提供的存储系统自定义业务功能配置方法的流程图,该方法主要包括以下步骤:
步骤s110、服务端接收到客户端发起的消息服务订阅请求后,对客户端进行身份鉴权校验;
客户端申请对存储系统进行自定义业务功能配置时向服务端发起消息服务订阅请求,由服务端统一对各客户端的自定义业务功能配置进行管理。
服务端接收到客户端发起的消息服务订阅请求后,对客户端进行身份鉴权校验,身份鉴权校验主要指对客户端是否具有合法的存储系统自定义业务功能配置权利进行校验,具体地可以包括对客户端登录的信息进行校验以及用户身份进行校验等,本实施例中对于身份鉴权校验的具体校验方式不做限定,可以根据实际鉴权需要进行设定。
可选地,一种服务端接收到客户端发起的消息服务订阅请求后,对客户端进行身份鉴权校验的实现方式具体包括如下几个步骤:
(1)服务端接收到客户端发起的消息服务订阅请求后,确定客户端的客户标识、用户名以及密码,作为待校验信息;
客户端发送客户标识、用户名、密码至服务端,服务端确定各部分信息,并作为待校验信息。
(2)对待校验信息进行基本参数格式校验;
服务端对待校验信息进行基本参数格式校验,如果校验通过则转下一步;如果失败可以抛出错误码,供界面解析反馈至客户端,其中基本参数格式校验操作可以包括参数长度、模式匹配、用户是否存在等常规校验,具体地本实施例内不做限定。
(3)若基本参数格式校验通过,对待校验信息进行解密验证;
服务端在集群内部可以通过分布式加密算法解密客户标识、用户名、密码,验证客户端身份,如果验证通过则转下一步;否则抛出错误码,供界面解析反馈至客户端,其中,具体采用的加密算法本实施例中不做限定,以分布式加密算法为例。
(4)若解密验证通过,根据解密后的待校验信息查询客户端是否为身份认证用户;
预先存储有所有认证过的用户信息,通过该信息验证当前客户端是否属于预先认证过的用户。
(5)若是,判定客户端身份鉴权校验通过。
若基本参数格式校验未通过,和/或,客户端非身份认证用户,可以判定该客户端身份鉴权校验未通过,本实施例中对于该种情况下的处理方式不做限定。
本实施例中仅以上述鉴权校验实现方式为例进行介绍,其他实现方式均可参照上述介绍,在此不再赘述。
若客户端身份鉴权校验通过,触发步骤s120,若校验未通过,本实施例中对于该种情况下的处理方式不做限定,可以反馈校验失败,并返回错误码。
步骤s120、接收客户的消息订阅请求数据,并根据消息订阅请求数据建立客户与待订阅业务项间的对应关系;
消息订阅请求数据包括分布式管理系统的自定义业务功能管理项,其中可以包括对于分布式管理系统内集成的告警、性能监控、数据缓存、日志管理、业务配置管理等诸多功能的功能管理配置项,比如可以指定告警方式(比如硬盘告警、CPU告警、硬件告警、软件告警、服务告警等),可以指定性能监控的性能指标项,可以指定日志管理中具体管理的日志项目,指定对于哪些行为进行日志记录等,可以指定数据缓存的模式(包括缓存数据项的指定等),还可以包括业务配置管理中具体的配置的功能选项(比如占用容量等),本实施中仅以上述待订阅业务类型进行介绍,其他科配置的订阅业务均可参照本实施例的介绍,在此不再赘述。
接收客户的消息订阅请求数据,并根据消息订阅请求数据建立客户与待订阅业务项间的对应关系,比如用户1告警方式选择软件告警,同时选择对所有用户行为以及后台行为进行日志记录,并根据消息订阅请求数据建立客户与待订阅业务项间的对应关系,比如用户1为模式1(告警方式选择软件告警,同时选择对所有用户行为以及后台行为进行日志记录),用户2为模式2(告警方式选择CPU告警,同时选择对所有用户行为进行日志记录)以确定不同客户端间不同的业务功能配置,从而为各客户端区分性提供消息订阅业务。其中,消息订阅请求数据即对于自定义的业务功能的服务消息的订阅,本申请中“自定义业务功能”与“消息订阅”含义大体相同。
而具体地,监听客户的消息订阅请求数据并建立客户与待订阅业务项间的对应关系的实现方式本实施例中不做限定,可选地,一种实现方式如下:
(1)生成对应模板消息类的实例对象,并打开消息通道,创建消息连接;
生成一个对应模板消息类的实例对象,打开消息通道,创建消息连接,将所有的用户操作数据封装为一个类,存储至实例对象,完成消息事件初始化及回调方法初始化。
(2)根据消息连接传输的消息订阅请求数据初始化全局定时器;
根据客户订阅配置初始化一个全局的定时器,以便根据用户的消息订阅需求添加对应的订阅任务以便后台的多用户自定义功能配置的实现。
可选地,在根据客户订阅配置初始化全局的定时器之前,可以进一步将实例对象全局化将该消息实例对象全局化,保证在系统作用域内唯一,防止生成多个实例对象干扰消息传递。
(3)开启消息订阅主进程;
消息订阅主进程开启,消息订阅主进程用于控制后续消息订阅流程的实现。
(4)初始化线程池,并将全局定时器实例化后启动;
(5)根据消息订阅请求数据中客户端订阅业务功能以及订阅反馈周期为全局定时器添加对应的订阅任务;
根据不同的客户端订阅业务以及订阅周期的反馈周期(配置的上报周期)为全局定时器添加对应的订阅任务,可选地,可以进一步配置一个特殊的定时任务,该定时任务的主要功能是检测当前集群内存中正在运行的定时任务和所有产生订阅关系的定时任务做比对,定时拉起未生效的订阅任务,防止订阅任务因故障等异常造成的主从节点切换而导致的订阅任务丢失。
(6)将根据订阅任务生成的客户端订阅信息持久化。
本实施例中仅以上述接收客户的消息订阅请求数据,并根据消息订阅请求数据建立客户与待订阅业务项间的对应关系的实现方式为例进行介绍,其他基于本实施例的实现方式均可参照上述介绍,在此不再赘述。
可选地,在接收客户的消息订阅请求数据之前,可以启动文件排它锁。初始化一个文件排他锁,可以防止多个主进程同时启动,确保消息事件发送给一个处理主进程。
另外,可选地,在接收客户的消息订阅请求数据之前,可以生成身份认证令牌,并将身份认证令牌持久化;则在执行接收客户的消息订阅请求数据的同时,还包括:判断对应的令牌信息是否过期;若已过期,则更新该令牌的过期时间,并同步更新持久化操作。
通过为每次用户操作生成一个身份认证令牌,可以保证操作过程的安全性。
步骤s130、根据客户端对应的待订阅业务项,获取集群对应的业务数据;
确定了客户端需要订阅哪些存储系统业务功能的业务消息后,需要根据该待订阅业务项获取集群对应的业务数据,比如客户端选择存储系统中的日志管理功能以对所有后台行为进行日志记录模式运作时,服务端负责获取集群中日志管理单元中对于后台行为进行记录的日志部分,并将该部分日志作为用户自定义定义的业务数据。
步骤s140、将业务数据推送至客户端的订阅消息上报地址。
获取客户端的订阅消息上报地址,该上报地址为客户端用于接收自定义的订阅消息的地址,并将获取的用户自定义的订阅消息发送至该地址,从而实现了用户对于自定义存储系统业务功能数据的获取,保证了自定义业务功能的配置。
而本实施例中对于本步骤具体的后台实现方式不做限定,可选地,一种实现方式如下:
(1)判断是否存储有客户端订阅消息的上报地址;
判断是否已获取了客户端的上报地址,若是,则可以直接根据该地址进行数据的发送,若没有,则需要向客户端请求获取上报地址。
(2)若未存储,向客户端发送集群ID,请求获取订阅消息的上报地址;
此时客户端可以根据集群ID对服务端进行验证,验证服务端是否为预先订阅业务消息的服务端,实现客户端与服务端的双向验证。
(3)接收到上报地址后,将上报地址保存至订阅信息数据表中客户端对应的数据项中;
接收到上报地址后,将上报地址保存至订阅信息数据表中客户端对应的数据项中,以便后续消息发送时直接从该数据项中获取上报地址,提升响应速度。
(4)将业务数据发送至上报地址;
(5)若包括,判断客户端的上报地址令牌时间是否过期;
为了验证上报地址的有效性,可以为存储的上报地址设置令牌有效时间,通过验证上报地址令牌时间是否过期来判断上报地址是否在有效期限内。
(6)若已过期,执行向客户端发送集群ID,请求获取订阅消息的上报地址的步骤;
若上报地址过期,则可以按照上述上报地址的获取步骤重新获取上报地址。
(7)若未过期,执行将业务数据发送至上报地址的步骤。
若上报地址有效,则可以直接执行数据发送的步骤。
本实施例提供的存储系统自定义业务功能配置方法对于集群功能运作不做调整,从集群功能的业务数据获取入手,根据用户自定义的业务功能获取相应的业务数据,并反馈至相应的客户端,从而实现了存储系统自定义业务功能配置,实现方式简单易行,管理方式简单。
为加深对上述实施例中提供的存储系统自定义业务功能配置方法的介绍,本实施例中以ism_sever作为服务端,ism_client作为存储集群订阅客户端为例对整体实现过程进行介绍。
其中,ism_sever指示包含管理软件的分布式存储集群,集群内通常包含若干个存储服务器节点,提供分布式存储功能,不同ism_client对应不同的订阅服务,本实施例中以针对单个ism_client的服务请求响应过程为例进行介绍,数据流程处理时序图如图2所示,实现步骤如下:
步骤1:客户端ism_client发送客户标识、用户名、密码至ism_server。
步骤2:ism_server进行基本参数格式校验,如果校验通过则转下一步;如果失败抛出错误码,供界面解析反馈至客户端(校验操作包括参数长度、模式匹配、用户是否存在等常规校验,具体地本实实施例内不做限定)。
步骤3:ism_server在集群内部通过分布式加密算法解密客户标识、用户名、密码,验证客户端身份,如果验证通过则转下一步;否则抛出错误码,供界面解析反馈至客户端(具体加密算法不做特殊要求)。
步骤4:ism_server从身份认证数据持久化DB接口保存用户用户名密码中查询该客户端是否存在,如果不存在则抛出错误码,结束当前流程;如果存在,则转步骤5。
步骤5:ism_server生成身份认证令牌,并将令牌数据信息持久化(一种身份认证数据持久化具体表结构及属性如下图3所示),每次操作生成一个身份认证令牌,以保证操作过程的安全性。
图3中各字段信息解释如下表1所示:
表1
步骤6:ism_server判断对应的令牌信息是否过期,如果过期则更新该令牌的过期时间指示订阅操作时间,并同步更新持久化操作。
步骤7:封装ism_client登录认证数据包装成对应的消息结构体返回给界面回显。
步骤8:启动前初始化一个文件排他锁,防止多个主进程同时启动,确保消息事件发送给一个处理主进程。
步骤9:生成一个对应模板消息类的实例对象,打开消息通道,创建消息连接,将所有的用户操作数据封装为一个类,存储至实例对象,完成消息事件初始化及回调方法初始化。
步骤10:将该消息实例对象全局化,保证在系统作用域内唯一,防止生成多个实例对象干扰消息传递。
步骤11:根据客户订阅配置初始化一个全局的定时器。
步骤12:消息订阅主进程开启。
步骤13:初始化线程池,并将全局定时器实例化,并启动。
步骤14:根据不同的客户端订阅业务+订阅周期的反馈周期为全局定时器添加对应的订阅任务。
步骤15:将生成对应的客户端订阅信息持久化到订阅DB订阅关系中(订阅信息数据表结构及属性如图4所示)。
图4中各字段信息解释如下表2所示:
字段名称 | 类型 | 备注 |
cs_id | Varchar,字符串 | 集群ID,主键,唯一标示符 |
c_id | Varchar,字符串 | 客户端标识符 |
c_name | Varchar,字符串 | 客户端用户名,http请求携带 |
c_passwd | Varchar,字符串 | 客户端密码,http请求携带 |
token_uri | Varchar,字符串 | 集群向客户端申请令牌的地址 |
sc_period | Varchar,字符串 | 客户端的订阅任务上报周期 |
sc_time | Varchar,字符串 | 订阅创建时间 |
sc_list | Varchar,字符串 | 订阅项列表,以逗号分隔的字符串 |
表2
步骤16:根据配置和订阅消息关系建立若干个工作线程。
步骤17:每个工作线程先判断当前节点是否为集群管理主节点发送数据的执行主体,如果是转下一步;如果不是打印日志,则不执行处理动作,以保证集群所有节点同一时刻只有主节点相关管理进程工作进程。
步骤18:工作线程判断ism_server是否获取了客户端的上报地址或者请求客户端的上报地址令牌时间是否过期,如果过期则转步骤4,否则转步骤5。
步骤19:ism_server向客户端发送集群ID,请求获取订阅消息的上报地址,并将获得的客户端上报地址信息持久化到DB中(具体的数据库结构表和属性ER图如图5所示)。
图5中各字段信息解释如下表3所示:
字段名称 | 类型 | 备注 |
id | Varchar,字符串 | 集群ID,主键,唯一标示符 |
cs_id | Varchar,字符串 | 集群标识符 |
c_id | Varchar,字符串 | 客户端唯一标识符 |
ct_str | Varchar,字符串 | 客户端客户端令牌字符串 |
ct_issued | Varchar,字符串 | 客户端令牌发放时间 |
ct_expire | Varchar,字符串 | 客户端令牌过期时间 |
ct_uri | Varchar,字符串 | 订阅数据上报地址 |
表3
步骤20:工作线程将获取集群对应的订阅数据封装成对应的数据结构,按照上报地址发送http请求,将数据发送给客户端。
本实施例提供的存储系统自定义业务功能配置实现方式中通过对客户端进行登录认证进行客户端身份校验,根据不同客户端的不同订阅关系和用户配置实例化消息对象,初始化任务定时器,生成对应的指标订阅任务,从客户端中获取订阅消息上报地址,将存储集群内不同的配置任务(告警、性能监控、日志管理、数据缓存、业务配置等)按照配置策略和上报地址定将响应数据主动推送到对应的客户端,该实现方式不仅可以分离主业务逻辑与定制化业务逻辑,减少客户定制化开发的任务量,同时提供对外提供第三方对接接口,便于满足不同的客户管理需求;同时,对于开发框架而言,将请求及服务扁平化、分离处理,集群管理逻辑完全集中于集群内部服务端,利于整体开发框架的完整性和易用性,也丰富完善了存储集群的多元化管理能力。
请参考图6,图6为本实施例提供的存储系统自定义业务功能配置装置的结构框图;该装置主要包括:鉴权校验单元110、请求数据处理单元120、业务数据获取单元130以及业务数据推送单元140。本实施例提供的存储系统自定义业务功能配置装置可与上述实施例提供的存储系统自定义业务功能配置方法相互对照。
其中,鉴权校验单元110主要用于接收到客户端发起的消息服务订阅请求后,对客户端进行身份鉴权校验;若校验通过,触发请求数据处理单元120;
请求数据处理单元120主要用于接收客户的消息订阅请求数据,并根据消息订阅请求数据建立客户与待订阅业务项间的对应关系;其中,消息订阅请求数据包括分布式管理系统的自定义业务功能管理项;
业务数据获取单元130主要用于根据客户端对应的待订阅业务项,获取集群对应的业务数据;
业务数据推送单元140主要用于将业务数据推送至客户端的订阅消息上报地址。
基于上述介绍,本实施例提供的存储系统自定义业务功能配置装置通过在已有集群管理系统内新增一个虚拟装置,专门用于对接不同的客户指标订阅服务,为不同的客户群体提供差异化的管理关注需求,通过简单的界面配置来完成客户对不同的需求关注点的消息服务功能。本实施例提供的装置不仅可以分离主业务逻辑与定制化业务逻辑,减少客户定制化开发的任务量,同时提供对外提供第三方对接接口,便于满足不同的客户管理需求;同时,对于开发框架而言,将请求及服务扁平化、分离处理,集群管理逻辑完全集中于集群内部服务端,利于整体开发框架的完整性和易用性,也丰富完善了存储集群的多元化管理能力。
本实施例中提供另一种存储系统自定义业务功能配置装置的单元划分方式,需要说明的是,用于实现上述实施例中提供的存储系统自定义业务功能配置方法的虚拟装置的具体单元单元的划分方式本申请中不做限定,仅以上述实施例与本实施例中两种划分方式为例进行介绍,其他用于实现存储系统自定义业务功能配置方法的虚拟装置的单元单元的划分方式均可参照本实施例与上述实施例的介绍,在此不再赘述。
本实施例中提供的存储系统自定义业务功能配置装置主要分为三个部分:客户端登录鉴权单元、消息服务订阅单元、服务消息主动推送单元,每个单元均可以以独立进程的形式存在于集群中,三个单元可以通过异步消息通道进行数据通信和交互。
客户端登录鉴权单元主要提供ism_server对接用户的服务端和客户端ism_client之间的双向身份认证鉴权功能,主要包括两个方面:1.ism_server端校验客户端身份,隔离非法非订阅客户请求;2.在向客户端发送集群ID,请求获取订阅消息的上报地址,客户端对ism_server端进行验证,验证通过后,服务端通过ism_server验证的服务端向ism_server提供订阅消息服务的上报地址以供集群主动向对应地址推送订阅数据。
消息服务订阅单元主要负责在集群内维护不同客户端的订阅关系以及上报地址,通过该单元将集群内不同的消息服务实体配置信息与不同的客户订阅服务完成配对,根据不同的客户端配置需求,生成对应订阅业务订阅关系;同时,该单元还可以向外提供订阅查询、删除等基本功能以完成界面管理功能。
服务消息主动推送单元主要负责根据订阅关系和上报地址将集群内不同的消息单元数据和配置上报周期,定时推送给对应的客户端。该单元与集群内各个业务子单元交互。
需要说明的是,本实施例与上述实施例中提供的存储系统自定义业务功能配置装置可以设置于集群中的任意节点,对于部署节点不做限定,如图7所示为一种整体部署框架图,分布式存储集群中各节点(节点1、节点2以及节点3)均部署有客户端登录鉴权单元、消息服务订阅单元、服务消息主动推送单元,各节点通过消息通道与网络层的各客户实现信息交互,从而为各客户实现存储系统自定义业务功能配置。
需要说明的是,本实施例中提供的三单元配合实现存储系统自定义业务功能配置的执行步骤在此不再赘述,可以参照图2对应实施例的介绍,具体地,步骤1至步骤7可以由客户端登录鉴权单元执行,步骤8至步骤15可以由消息服务订阅单元执行,步骤16至步骤20可以由服务消息主动推送单元控制执行,具体步骤在此不再赘述,可参照上述实施例的介绍。
本实施例提供的存储系统自定义业务功能配置装置中,客户端鉴权单元负责客户端与集群管理系统的登录认证进行客户端身份校验以及从客户端中获取订阅消息上报地址等鉴权操作的数据处理;消息服务订阅单元根据不同客户端的不同订阅关系和用户配置实例化消息对象,初始化任务定时器,生成对应的指标订阅任务;服务消息主动推送单元负责将存储集群内不同的配置任务(告警、性能监控、日志管理、数据缓存、业务配置等)按照配置策略和上报地址定将响应数据主动推送到对应的客户端;三个单元有机结合、相互作用实现了可配置的消息订阅管理。
本实施例提供一种计算机设备,主要包括:存储器以及处理器。
其中,存储器用于存储程序;
处理器用于执行程序时实现如上述实施例介绍的存储系统自定义业务功能配置方法的步骤,具体可参照上述存储系统自定义业务功能配置方法的介绍。
请参考图8,为本实施例提供的计算机设备的结构示意图,该计算机设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processingunits,CPU)322(例如,一个或一个以上处理器)和存储器332,一个或一个以上存储应用程序342或数据344的存储介质330(例如一个或一个以上海量存储设备)。其中,存储器332和存储介质330可以是短暂存储或持久存储。存储在存储介质330的程序可以包括一个或一个以上单元(图示没标出),每个单元可以包括对数据处理设备中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储介质330通信,在计算机设备301上执行存储介质330中的一系列指令操作。
计算机设备301还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作系统341,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上面图1所描述的存储系统自定义业务功能配置方法中的步骤可以由本实施例介绍的计算机设备的结构实现。
本实施例公开一种可读存储介质,其上存储有程序,程序被处理器执行时实现如上述实施例介绍的存储系统自定义业务功能配置方法的步骤,具体可参照上述实施例中对存储系统自定义业务功能配置方法的介绍。
该可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件单元,或者二者的结合来实施。软件单元可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的存储系统自定义业务功能配置方法、装置、设备及可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
Claims (10)
1.一种存储系统自定义业务功能配置方法,其特征在于,该方法包括:
服务端接收到客户端发起的消息服务订阅请求后,对所述客户端进行身份鉴权校验;
若校验通过,接收客户的消息订阅请求数据,并根据所述消息订阅请求数据建立客户与待订阅业务项间的对应关系;其中,所述消息订阅请求数据包括分布式管理系统的自定义业务功能管理项;
根据所述客户端对应的待订阅业务项,获取集群对应的业务数据;
将所述业务数据推送至所述客户端的订阅消息上报地址。
2.如权利要求1所述的存储系统自定义业务功能配置方法,其特征在于,所述服务端接收到客户端发起的消息服务订阅请求后,对所述客户端进行身份鉴权校验,包括:
服务端接收到客户端发起的消息服务订阅请求后,确定所述客户端的客户标识、用户名以及密码,作为待校验信息;
对所述待校验信息进行基本参数格式校验;
若所述基本参数格式校验通过,对所述待校验信息进行解密验证;
若所述解密验证通过,根据解密后的待校验信息查询所述客户端是否为身份认证用户;
若是,判定所述客户端身份鉴权校验通过。
3.如权利要求1所述的存储系统自定义业务功能配置方法,其特征在于,在所述接收客户的消息订阅请求数据之前,还包括:
生成身份认证令牌,并将所述身份认证令牌持久化;
则在执行所述接收客户的消息订阅请求数据的同时,还包括:判断对应的令牌信息是否过期;若已过期,则更新该令牌的过期时间,并同步更新持久化操作。
4.如权利要求1所述的存储系统自定义业务功能配置方法,其特征在于,在所述接收客户的消息订阅请求数据之前,还包括:启动文件排它锁。
5.如权利要求1所述的存储系统自定义业务功能配置方法,其特征在于,所述接收客户的消息订阅请求数据,并根据所述消息订阅请求数据建立客户与待订阅业务项间的对应关系,包括:
生成对应模板消息类的实例对象,并打开消息通道,创建消息连接;
根据所述消息连接传输的消息订阅请求数据初始化全局定时器;
开启消息订阅主进程;
初始化线程池,并将全局定时器实例化后启动;
根据所述消息订阅请求数据中客户端订阅业务功能以及订阅反馈周期为所述全局定时器添加对应的订阅任务;
将根据所述订阅任务生成的客户端订阅信息持久化。
6.如权利要求5所述的存储系统自定义业务功能配置方法,其特征在于,在根据客户订阅配置初始化全局的定时器之前,还包括:
将所述实例对象全局化。
7.如权利要求1所述的存储系统自定义业务功能配置方法,其特征在于,将所述业务数据推送至所述客户端的订阅消息上报地址,包括:
判断是否存储有所述客户端订阅消息的上报地址;
若未存储,向所述客户端发送集群ID,请求获取订阅消息的上报地址;
接收到所述上报地址后,将所述上报地址保存至所述订阅信息数据表中所述客户端对应的数据项中;
将所述业务数据发送至所述上报地址;
若已存储,判断所述客户端的上报地址令牌时间是否过期;
若已过期,执行向所述客户端发送集群ID,请求获取订阅消息的上报地址的步骤;
若未过期,执行将所述业务数据发送至所述上报地址的步骤。
8.一种存储系统自定义业务功能配置装置,其特征在于,应用于服务端,该装置包括:
鉴权校验单元,用于接收到客户端发起的消息服务订阅请求后,对所述客户端进行身份鉴权校验;若校验通过,触发请求数据处理单元;
请求数据处理单元,用于接收客户的消息订阅请求数据,并根据所述消息订阅请求数据建立客户与待订阅业务项间的对应关系;其中,所述消息订阅请求数据包括分布式管理系统的自定义业务功能管理项;
业务数据获取单元,用于根据所述客户端对应的待订阅业务项,获取集群对应的业务数据;
业务数据推送单元,用于将所述业务数据推送至所述客户端的订阅消息上报地址。
9.一种计算机设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述的存储系统自定义业务功能配置方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有程序,所述程序被处理器执行时实现如权利要求1至7任一项所述存储系统自定义业务功能配置方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010664666.2A CN111857585A (zh) | 2020-07-10 | 2020-07-10 | 存储系统自定义业务功能配置方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010664666.2A CN111857585A (zh) | 2020-07-10 | 2020-07-10 | 存储系统自定义业务功能配置方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111857585A true CN111857585A (zh) | 2020-10-30 |
Family
ID=72983990
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010664666.2A Withdrawn CN111857585A (zh) | 2020-07-10 | 2020-07-10 | 存储系统自定义业务功能配置方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111857585A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112667987A (zh) * | 2020-12-30 | 2021-04-16 | 江苏达科信息科技有限公司 | 大数据访问授权方法、装置及存储介质 |
CN113193974A (zh) * | 2021-07-02 | 2021-07-30 | 深圳华云信息系统有限公司 | 基于组播的行情信息推送方法、系统、设备及介质 |
CN113190778A (zh) * | 2021-04-30 | 2021-07-30 | 深圳壹账通创配科技有限公司 | 业务数据推送方法、系统、计算机设备及计算机存储介质 |
CN113641139A (zh) * | 2021-08-05 | 2021-11-12 | 珠海格力电器股份有限公司 | 可实现异步编程的系统、控制器、控制系统、存储介质 |
CN114338797A (zh) * | 2021-11-12 | 2022-04-12 | 上海铂铸信息科技有限公司 | 适于多版本时序数据传输和重放的系统及方法 |
CN114844995A (zh) * | 2022-04-07 | 2022-08-02 | 中国联合网络通信集团有限公司 | 信息的处理方法、服务器和终端 |
CN115242768A (zh) * | 2022-06-30 | 2022-10-25 | 南京南瑞继保电气有限公司 | 一种地铁综合监控系统数据转发方法、装置及存储介质 |
CN115914393A (zh) * | 2022-11-29 | 2023-04-04 | 北京科银京成技术有限公司 | 一种通信方法、装置、设备和介质 |
WO2024045980A1 (zh) * | 2022-08-29 | 2024-03-07 | 支付宝(杭州)信息技术有限公司 | 一种分布式定时消息系统测试方法、装置以及设备 |
-
2020
- 2020-07-10 CN CN202010664666.2A patent/CN111857585A/zh not_active Withdrawn
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112667987A (zh) * | 2020-12-30 | 2021-04-16 | 江苏达科信息科技有限公司 | 大数据访问授权方法、装置及存储介质 |
CN113190778A (zh) * | 2021-04-30 | 2021-07-30 | 深圳壹账通创配科技有限公司 | 业务数据推送方法、系统、计算机设备及计算机存储介质 |
CN113193974A (zh) * | 2021-07-02 | 2021-07-30 | 深圳华云信息系统有限公司 | 基于组播的行情信息推送方法、系统、设备及介质 |
CN113193974B (zh) * | 2021-07-02 | 2021-11-09 | 深圳华云信息系统有限公司 | 基于组播的行情信息推送方法、系统、设备及介质 |
CN113641139A (zh) * | 2021-08-05 | 2021-11-12 | 珠海格力电器股份有限公司 | 可实现异步编程的系统、控制器、控制系统、存储介质 |
CN114338797A (zh) * | 2021-11-12 | 2022-04-12 | 上海铂铸信息科技有限公司 | 适于多版本时序数据传输和重放的系统及方法 |
CN114338797B (zh) * | 2021-11-12 | 2024-03-19 | 上海铂铸信息科技有限公司 | 适于多版本时序数据传输和重放的系统及方法 |
CN114844995A (zh) * | 2022-04-07 | 2022-08-02 | 中国联合网络通信集团有限公司 | 信息的处理方法、服务器和终端 |
CN115242768A (zh) * | 2022-06-30 | 2022-10-25 | 南京南瑞继保电气有限公司 | 一种地铁综合监控系统数据转发方法、装置及存储介质 |
WO2024045980A1 (zh) * | 2022-08-29 | 2024-03-07 | 支付宝(杭州)信息技术有限公司 | 一种分布式定时消息系统测试方法、装置以及设备 |
CN115914393A (zh) * | 2022-11-29 | 2023-04-04 | 北京科银京成技术有限公司 | 一种通信方法、装置、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111857585A (zh) | 存储系统自定义业务功能配置方法、装置、设备及介质 | |
CN112422532B (zh) | 业务通信方法、系统、装置及电子设备 | |
US8554749B2 (en) | Data file access control | |
US7178163B2 (en) | Cross platform network authentication and authorization model | |
US20170289134A1 (en) | Methods and apparatus for assessing authentication risk and implementing single sign on (sso) using a distributed consensus database | |
CN110417790B (zh) | 区块链实名制排队系统及方法 | |
US8201231B2 (en) | Authenticated credential-based multi-tenant access to a service | |
US11632247B2 (en) | User security token invalidation | |
EP3791545A1 (en) | Telecom node control via blockchain | |
CN111177246B (zh) | 一种业务数据的处理方法及装置 | |
CN111698126B (zh) | 信息监控方法、系统及计算机可读存储介质 | |
JP2021527970A (ja) | クラウドベースの鍵管理 | |
US20220029820A1 (en) | Validated payload execution | |
US10237252B2 (en) | Automatic creation and management of credentials in a distributed environment | |
US7823190B1 (en) | System and method for implementing a distributed keystore within an enterprise network | |
CN109829271B (zh) | 鉴权方法及相关产品 | |
CN114598481A (zh) | 一种授权认证方法、装置、电子设备及存储介质 | |
CN113225351A (zh) | 一种请求处理方法、装置、存储介质及电子设备 | |
US20230244797A1 (en) | Data processing method and apparatus, electronic device, and medium | |
CN112751800B (zh) | 一种认证方法及装置 | |
US9418167B2 (en) | System and method for invoking web services from command-line program | |
CN112634040A (zh) | 一种数据处理方法及装置 | |
WO2016122686A1 (en) | Authentication for multiple user data storage and separation | |
CN113177215B (zh) | 一种用户登录凭证的处理方法及装置 | |
CN111782406B (zh) | 资源配置方法、装置、电子设备及计算机可读存储介质 |
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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20201030 |