分布式消息服务的网络管理方法、系统、设备及存储介质转让专利

申请号 : CN201911120065.9

文献号 : CN110868322B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 马跃曹东阳孙爱林高廉墀闫莉刚

申请人 : 北京京东尚科信息技术有限公司北京京东世纪贸易有限公司

摘要 :

本发明公开了一种分布式消息服务的网络管理方法、系统、设备及存储介质。方法包括:设置业务项目组及挂靠在业务项目组下的业务主题;为业务项目组设置关联的数据生产者和/或数据消费者及操作权限;接收数据生产者的web操作,验证操作是否符合数据生产者的操作权限,若是,则生成可执行命令并发送至分布式消息服务;和/或,接收数据消费者的web操作,验证操作是否符合数据消费者的操作权限,若是,则生成可执行命令并发送至分布式消息服务。本发明面向业务人员,将业务与业务人员相关联,通过权限控制机制对业务人员开放以业务主题为粒度的操作,有利于对分布式消息服务中业务数据的管理,并且还通过web操作降低了操作难度。

权利要求 :

1.一种分布式消息服务的网络管理方法,其特征在于,所述网络管理方法包括:设置业务项目组及挂靠在所述业务项目组下的业务主题;所述业务项目组基于业务需求划分;为所述业务项目组设置关联的数据生产者和/或数据消费者及所关联的数据生产者和/或数据消费者对所述业务主题的操作权限,根据不同的所述业务主题分别设置不同的所述数据生产者和所述数据消费者相应的操作权限;

以及,

接收所述数据生产者执行的web操作,验证所述web操作是否符合所述数据生产者的操作权限,若是,则根据所述web操作生成所述分布式消息服务的可执行命令,并将所述可执行命令发送至所述分布式消息服务;

和/或,接收所述数据消费者执行的web操作,验证所述web操作是否符合所述数据消费者的操作权限,若是,则根据所述web操作生成所述分布式消息服务的可执行命令,并将所述可执行命令发送至所述分布式消息服务;

通过数据字典监控所述业务主题是否超过监控指标阈值,若是,则发出报警信息;

所述数据生产者执行的web操作包括以下操作:创建、删除所述业务项目组和所述业务主题;

配置生产监控指标阈值,接收报警信息;

所述数据消费者执行的web操作包括以下操作:配置消费监控指标阈值,接收报警信息。

2.如权利要求1所述的网络管理方法,其特征在于,所述网络管理方法还包括:读取所述分布式消息服务已接入的业务主题的数据信息并存储至数据字典;

将所述数据信息进行web展示。

3.如权利要求2所述的网络管理方法,其特征在于,所述网络管理方法还包括:接收业务主题查询请求;

通过所述数据字典判断被请求查询的业务主题是否已接入所述分布式消息服务,若是,则为所述数据消费者申请读取被请求查询的业务主题的权限,若否,则为所述数据生产者申请接入被请求查询的业务主题的权限。

4.如权利要求3所述的网络管理方法,其特征在于,申请的权限经审批通过后生效;

和/或,所述网络管理方法还包括:

在接收业务主题查询请求之后,判断是否已创建挂靠被请求查询的业务主题的业务项目组,若否,则创建业务项目组。

5.如权利要求2所述的分布式消息服务的网络管理方法,其特征在于,所述数据生产者执行的web操作包括以下操作中的至少一种:生产业务数据;

维护所述业务主题的主题描述与业务标签;

配置存储信息,所述存储信息包括终端存储分区、数据类型、副本、所在集群、数据有效期和配置参数中的至少一种;

和/或,所述数据消费者执行的web操作包括以下操作中的至少一种:提取业务主题的主题描述与业务标签;

消费业务数据。

6.如权利要求5所述的网络管理方法,其特征在于,所述数据信息包括以下信息中的至少一种:业务信息,所述业务信息包括业务主题名称、业务项目组名称、所述主题描述、所述业务标签以及业务负责人中的至少一种;

所述存储信息;

血缘关系,所述血缘关系包括所述业务主题的上游接入信息及下游消费信息;

监控指标,包括生产监控指标阈值和/或消费监控指标阈值;

变更记录,所述变更记录包括数据变更记录和人工编辑记录。

7.一种分布式消息服务的网络管理系统,其特征在于,所述网络管理系统包括:业务项目组管理模块,用于设置业务项目组及挂靠在所述业务项目组下的业务主题,所述业务项目组基于业务需求划分;以及,为所述业务主题设置关联的数据生产者和/或数据消费者及所关联的数据生产者和/或数据消费者对所述业务主题的操作权限;根据不同的所述业务主题分别设置不同的所述数据生产者和所述数据消费者相应的操作权限;

以及,

数据生产者管理模块,用于接收所述数据生产者执行的web操作,验证所述web操作是否所述数据生产者的操作权限,若是,则根据所述web操作生成所述分布式消息服务的可执行命令,并将所述可执行命令发送至所述分布式消息服务;

和/或,数据消费者管理模块,用于接收所述数据消费者执行的web操作,验证所述web操作是否符合所述数据消费者的操作权限,若是,则根据所述web操作生成所述分布式消息服务的可执行命令,并将所述可执行命令发送至所述分布式消息服务;

监控模块,用于通过数据字典监控所述业务主题是否超过监控指标阈值,若是,则发出报警信息;

所述数据生产者执行的web操作包括以下操作:创建、删除所述业务项目组和所述业务主题;

配置生产监控指标阈值,接收报警信息;

所述数据消费者执行的web操作包括以下操作:配置消费监控指标阈值,接收报警信息。

8.如权利要求7所述的网络管理系统,其特征在于,所述网络管理系统还包括:数据字典模块,用于读取所述分布式消息服务已接入的业务主题的数据信息并存储至数据字典,以及将所述数据信息进行web展示。

9.如权利要求8所述的网络管理系统,其特征在于,所述数据字典模块还用于接收业务主题查询请求,通过所述数据字典判断被请求查询的业务主题是否已接入所述分布式消息服务;

所述网络管理系统还包括:

流程管理模块,用于在判断被请求查询的业务主题已接入所述分布式消息服务时,为所述数据消费者申请读取被请求查询的业务主题的权限,在判断被请求查询的业务主题未接入所述分布式消息服务时,为所述数据生产者申请接入被请求查询的业务主题的权限。

10.如权利要求9所述的网络管理系统,其特征在于,申请的权限经审批通过后生效;

和/或,所述业务项目组管理模块还用于在接收业务主题查询请求之后,判断是否已创建挂靠被请求查询的业务主题的业务项目组,若否,则创建业务项目组。

11.如权利要求8所述的网络管理系统,其特征在于,所述数据生产者执行的web操作包括以下操作中的至少一种:生产业务数据;

维护所述业务主题的主题描述与业务标签;

配置存储信息,所述存储信息包括终端存储分区、数据类型、副本、所在集群、数据有效期和配置参数中的至少一种;

和/或,所述数据消费者执行的web操作包括以下操作中的至少一种:提取业务主题的主题描述与业务标签;

消费业务数据。

12.如权利要求11所述的分布式消息服务的网络管理系统,其特征在于,所述数据信息包括以下信息中的至少一种:业务信息,所述业务信息包括业务主题名称、业务项目组名称、所述主题描述、所述业务标签以及业务负责人中的至少一种;

所述存储信息;

血缘关系,所述血缘关系包括所述业务主题的上游接入信息及下游消费信息;

监控指标,包括生产监控指标阈值和/或消费监控指标阈值;

变更记录,所述变更记录包括数据变更记录和人工编辑记录。

13.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至6中任一项所述的分布式消息服务的网络管理方法。

14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求1至6中任一项所述的分布式消息服务的网络管理方法的步骤。

说明书 :

分布式消息服务的网络管理方法、系统、设备及存储介质

技术领域

[0001] 本发明属于网络管理领域,尤其涉及一种分布式消息服务的网络管理方法、系统、设备及存储介质。

背景技术

[0002] 消息队列是分布式系统中重要的组件,主要解决应用耦合,异步消息,流量削峰等问题。目前在生成环境,使用较多的消息队列有ctiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ等。Kafka(一种分布式发布订阅消息系统)因其高吞吐、高可用、高扩展等优势,在众多企业的实时数据处理业务中,得到了广泛的应用。随着数据量越来越大、业务复杂性越来越高,对于下游数据的使用方来讲,如何从Kafka海量的数据中精确定位到自己所需要的业务数据,就变的越来越复杂;对于企业运营管理者来讲,资源的管理以及业务的运维带来的不便性就越来越大。
[0003] 目前已有的Kafka集群web(网络)管理工具大多可以实现:
[0004] (1)管理多个不同的Kafka集群;
[0005] (2)检查集群的状态,数据分布,负载均衡等;
[0006] (3)通过该web工具对终端进行操作,包括资源分配、参数配置、属性变更、数据迁移以及删除等。
[0007] 然而,上述的web管理工具面向的用户为Kafka集群的运维人员,主要工作目标在于资源合理利用,保障集群的可靠安全。其主要缺点在于不能开放给Kafka生产和消费数据的业务人员使用,业务人员需要借助于运维人员的帮助才能操作业务数据,又因为Kafka数据的生产者和消费者是相互独立的,一个数据写入方可能对应多个数据读取方,并没有一个有效的管理机制,任何一个操作都有可能影响到其他业务方的数据使用。

发明内容

[0008] 本发明实施例要解决的技术问题是为了克服现有技术中缺少面向Kafka等分布式消息服务的数据生产者和消费者的web管理工具的缺陷,提供一种分布式消息服务的网络管理方法、系统、设备及存储介质。
[0009] 本发明实施例是通过以下技术方案解决上述技术问题的:
[0010] 本发明实施例提供一种分布式消息服务的网络管理方法,所述网络管理方法包括:
[0011] 设置业务项目组及挂靠在所述业务项目组下的业务主题;
[0012] 为所述业务项目组设置关联的数据生产者和/或数据消费者及所关联的数据生产者和/或数据消费者对所述业务主题的操作权限;以及,
[0013] 接收所述数据生产者执行的web操作,验证所述web操作是否符合所述数据生产者的操作权限,若是,则根据所述web操作生成所述分布式消息服务的可执行命令,并将所述可执行命令发送至所述分布式消息服务;
[0014] 和/或,接收所述数据消费者执行的web操作,验证所述web操作是否符合所述数据消费者的操作权限,若是,则根据所述web操作生成所述分布式消息服务的可执行命令,并将所述可执行命令发送至所述分布式消息服务。
[0015] 较佳地,所述网络管理方法还包括:
[0016] 读取所述分布式消息服务已接入的业务主题的数据信息并存储至数据字典;
[0017] 将所述数据信息进行web展示。
[0018] 较佳地,所述网络管理方法还包括:
[0019] 接收业务主题查询请求;
[0020] 通过所述数据字典判断被请求查询的业务主题是否已接入所述分布式消息服务,若是,则为所述数据消费者申请读取被请求查询的业务主题的权限,若否,则为所述数据生产者申请接入被请求查询的业务主题的权限。
[0021] 较佳地,申请的权限经审批通过后生效;
[0022] 和/或,所述网络管理方法还包括:
[0023] 在接收业务主题查询请求之后,判断是否已创建挂靠被请求查询的业务主题的业务项目组,若否,则创建业务项目组。
[0024] 较佳地,所述网络管理方法还包括:
[0025] 通过所述数据字典监控所述业务主题是否超过监控指标阈值,若是,则发出报警信息。
[0026] 较佳地,所述数据生产者执行的web操作包括以下操作中的至少一种:
[0027] 创建、删除所述业务项目组和所述业务主题;
[0028] 生产业务数据;
[0029] 维护所述业务主题的主题描述与业务标签;
[0030] 配置存储信息,所述存储信息包括终端存储分区、数据类型、副本、所在集群、数据有效期和配置参数中的至少一种;
[0031] 配置生产监控指标阈值,接收报警信息;
[0032] 和/或,所述数据消费者执行的web操作包括以下操作中的至少一种:
[0033] 提取业务主题的主题描述与业务标签;
[0034] 消费业务数据;
[0035] 配置消费监控指标阈值,接收报警信息。
[0036] 较佳地,所述数据信息包括以下信息中的至少一种:
[0037] 业务信息,所述业务信息包括业务主题名称、业务项目组名称、所述主题描述、所述业务标签以及业务负责人中的至少一种;
[0038] 所述存储信息;
[0039] 血缘关系,所述血缘关系包括所述业务主题的上游接入信息及下游消费信息;
[0040] 监控指标,包括生产监控指标阈值和/或消费监控指标阈值;
[0041] 变更记录,所述变更记录包括数据变更记录和人工编辑记录。
[0042] 本发明实施例还提供一种分布式消息服务的网络管理系统,所述网络管理系统包括:
[0043] 业务项目组管理模块,用于设置业务项目组及挂靠在所述业务项目组下的业务主题,以及,为所述业务主题设置关联的数据生产者和/或数据消费者及所关联的数据生产者和/或数据消费者对所述业务主题的操作权限;以及,
[0044] 数据生产者管理模块,用于接收所述数据生产者执行的web操作,验证所述web操作是否所述数据生产者的操作权限,若是,则根据所述web操作生成所述分布式消息服务的可执行命令,并将所述可执行命令发送至所述分布式消息服务;
[0045] 和/或,数据消费者管理模块,用于接收所述数据消费者执行的web操作,验证所述web操作是否符合所述数据消费者的操作权限,若是,则根据所述web操作生成所述分布式消息服务的可执行命令,并将所述可执行命令发送至所述分布式消息服务。
[0046] 较佳地,所述网络管理系统还包括:
[0047] 数据字典模块,用于读取所述分布式消息服务已接入的业务主题的数据信息并存储至数据字典,以及将所述数据信息进行web展示。
[0048] 较佳地,所述数据字典模块还用于接收业务主题查询请求,通过所述数据字典判断被请求查询的业务主题是否已接入所述分布式消息服务;
[0049] 所述网络管理系统还包括:
[0050] 流程管理模块,用于在判断被请求查询的业务主题已接入所述分布式消息服务时,为所述数据消费者申请读取被请求查询的业务主题的权限,在判断被请求查询的业务主题未接入所述分布式消息服务时,为所述数据生产者申请接入被请求查询的业务主题的权限。
[0051] 较佳地,申请的权限经审批通过后生效;
[0052] 和/或,所述业务项目组管理模块还用于在接收业务主题查询请求之后,判断是否已创建挂靠被请求查询的业务主题的业务项目组,若否,则创建业务项目组。
[0053] 较佳地,所述网络管理系统还包括:
[0054] 监控模块,用于通过所述数据字典监控所述业务主题是否超过监控指标阈值,若是,则发出报警信息。
[0055] 较佳地,所述数据生产者执行的web操作包括以下操作中的至少一种:
[0056] 创建、删除所述业务项目组和所述业务主题;
[0057] 生产业务数据;
[0058] 维护所述业务主题的主题描述与业务标签;
[0059] 配置存储信息,所述存储信息包括终端存储分区、数据类型、副本、所在集群、数据有效期和配置参数中的至少一种;
[0060] 配置生产监控指标阈值,接收报警信息;
[0061] 和/或,所述数据消费者执行的web操作包括以下操作中的至少一种:
[0062] 提取业务主题的主题描述与业务标签;
[0063] 消费业务数据;
[0064] 配置消费监控指标阈值,接收报警信息。
[0065] 较佳地,所述数据信息包括以下信息中的至少一种:
[0066] 业务信息,所述业务信息包括业务主题名称、业务项目组名称、所述主题描述、所述业务标签以及业务负责人中的至少一种;
[0067] 所述存储信息;
[0068] 血缘关系,所述血缘关系包括所述业务主题的上游接入信息及下游消费信息;
[0069] 监控指标,包括生产监控指标阈值和/或消费监控指标阈值;
[0070] 变更记录,所述变更记录包括数据变更记录和人工编辑记录。
[0071] 本发明实施例还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的分布式消息服务的网络管理方法。
[0072] 本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上所述的分布式消息服务的网络管理方法的步骤。
[0073] 在符合本领域常识的基础上,上述各优选条件,可任意组合,即得本发明各较佳实例。
[0074] 本发明实施例的积极进步效果在于:本发明实施例提供了分布式消息服务的网络管理方法、系统、设备及存储介质,其主要面向业务人员,将业务项目组、业务主题与生产数据的业务人员(即数据生产者)、消费数据的业务人员(即数据消费者)相关联,通过权限控制机制对业务人员开放以业务主题为粒度的操作,有利于对分布式消息服务中业务数据的管理,并且还为数据生产者和数据消费者提供了web操作及web操作向分布式消息服务的可执行命令的转换,降低了数据生产者和数据消费者使用分布式消息服务的操作难度。

附图说明

[0075] 图1为本发明较佳实施例1的一种分布式消息服务的网络管理方法的流程图;
[0076] 图2为本发明较佳实施例2的一种分布式消息服务的网络管理方法的部分流程图;
[0077] 图3为本发明较佳实施例3的一种分布式消息服务的网络管理系统的示意框图;
[0078] 图4为本发明较佳实施例4的一种电子设备的结构示意图。

具体实施方式

[0079] 下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
[0080] 实施例1
[0081] 图1为本实施例的一种分布式消息服务的网络管理方法。所述网络管理方法包括以下步骤:
[0082] 步骤11:设置业务项目组及挂靠在所述业务项目组下的业务主题。该步骤中,所述业务项目组可以基于业务需求划分,例如一个数据分析项目可以作为一个业务项目组;业务项目组下挂靠的业务主题通常在业务层面上与该项目组相关联,该业务主题可以直接作为分布式消息服务(如kafka)的topic(主题)。
[0083] 步骤12:为所述业务项目组设置关联的数据生产者和数据消费者及所关联的数据生产者和数据消费者对所述业务主题的操作权限。该步骤中,同一业务项目组关联的数据生产者可以不止一个,关联的数据消费者也可以不止一个;操作权限的设置较为灵活,可以以业务项目组为粒度进行设置,即同一业务项目组关联的所有数据生产者对挂靠在该业务项目组下的所有业务主题都均具有相同的权限,同一业务项目组关联的所有数据生产者对挂靠在该业务项目组下的所有业务主题可以具有相同的权限,也可以以业务主题为粒度进行设置,即根据各业务主题的具体情况分别设置不同数据生产者和数据消费者的相应权限。
[0084] 以及,并行执行步骤13A和步骤13B。
[0085] 步骤13A:接收所述数据生产者执行的web操作,验证所述web操作是否符合所述数据生产者的操作权限,若是,则根据所述web操作生成所述分布式消息服务的可执行命令,并将所述可执行命令发送至所述分布式消息服务,若否,则操作失败,可以拒绝所述web操作或向所述数据生产者反馈操作失败的信息。
[0086] 步骤13B:接收所述数据消费者执行的web操作,验证所述web操作是否符合所述数据消费者的操作权限,若是,则根据所述web操作生成所述分布式消息服务的可执行命令,并将所述可执行命令发送至所述分布式消息服务,若否,则操作失败,可以拒绝所述web操作或向所述数据消费者反馈操作失败的信息。
[0087] 步骤13A和步骤13B中,验证操作权限的过程包括了验证被操作的业务主题是否与执行操作的数据生产者或数据消费者相关联,以及验证操作本身是否在设置的操作权限内。为了生成所述可执行命令,可以预定义好各web操作对应的分布式消息服务命令接口,待鉴权通过后,通过调用对应的命令接口生成相应的命令,发送至所述分布式消息服务后由所述分布式消息服务执行。
[0088] 本实施例的方法将业务项目组、业务主题与生产数据的业务人员(即数据生产者)、消费数据的业务人员(即数据消费者)相关联,通过权限控制机制对业务人员开放以业务主题为粒度的操作,有利于对分布式消息服务中业务数据的管理,并且还为数据生产者和数据消费者提供了web操作及web操作向分布式消息服务的可执行命令的转换,降低了数据生产者和数据消费者使用分布式消息服务的操作难度。
[0089] 本实施例的方法既面向数据生产者又面向数据消费者,在此基础上可以进行变形以形成本发明的其它实施例,例如:方法只面向数据生产者而在步骤12中只设置关联的数据生产者及数据生产者对业务主题的操作权限,并且单独执行步骤13A而不执行步骤13B;或,方法只面向数据消费者而在步骤12中只设置关联的数据消费者及数据消费者对业务主题的操作权限,并且单独执行步骤13B而不执行步骤13A。
[0090] 实施例2
[0091] 本实施例是在实施例1基础上的进一步改进。本实施例的一种分布式消息服务的网络管理方法包括了实施例1中的步骤,还包括图2所示的以下步骤:
[0092] 步骤21:读取所述分布式消息服务的已接入业务主题的数据信息并存储至数据字典。其中,数据信息的读取与存储可以是实时的、定时或不定时的,以所述分布式消息服务为kafka为例,步骤21可以通过访问kafka集群ZooKeeper(一种分布式应用程序协调服务)数据读取所述数据信息。
[0093] 步骤22:将所述数据信息进行web展示。其中,展示可以发生于所述数据字典中的数据信息每次更新之后,或者响应于业务人员的需求而进行。
[0094] 上述的步骤21至步骤22中,通过数据字典管理数据信息,准确掌握所述分布式消息服务上各业务主题的数据情况,web展示可以便于业务人员(包括数据生产者和数据消费者)直观观察。
[0095] 考虑到现有的web管理工具即便存在监控机制,也是主要服务于集群运维人员,监控指标设置和采集多为集群粒度层面(如集群的状态、数据分布或负载均衡),忽视了业务人员的监控需求,对此,本实施例的方法还基于存储的数据字典实现了业务层面上的监控,具体步骤包括:
[0096] 通过所述数据字典监控所述业务主题是否超过监控指标阈值,若是,则发出报警信息。其中,监控指标可以根据业务人员的需求而定,由于数据生产者和数据消费者在业务层面上的关注点有所不同,监控指标也可以分为数据生产者关注的生产监控指标及数据消费者关注的消费监控指标,至于指标的具体阈值可以根据需求灵活设定。发出报警信息的方式也可以由数据生产者或数据消费者自行配置,如以邮件、短信、App的方式均可。
[0097] 本实施例的方法还可以实现业务主题的查询以及业务项目组的完善,具体步骤包括:
[0098] 步骤23:接收业务主题查询请求,所述业务主题查询请求可以包括被请求查询的业务主题的名称、业务标签、主题描述等信息。
[0099] 步骤24:通过所述数据字典判断被请求查询的业务主题是否已接入所述分布式消息服务,若是,则执行步骤251,若否,则执行步骤261。
[0100] 步骤251:判断是否已创建挂靠被请求查询的业务主题的业务项目组,若否,则执行步骤252,若是,则执行步骤253。
[0101] 步骤252:创建业务项目组,然后执行步骤253。
[0102] 步骤253:为所述数据消费者申请读取被请求查询的业务主题的权限。
[0103] 步骤261:判断是否已创建挂靠被请求查询的业务主题的业务项目组,若否,则执行步骤262,若是,则执行步骤263。
[0104] 步骤262:创建业务项目组,然后执行步骤263。
[0105] 步骤263:为所述数据生产者申请接入被请求查询的业务主题的权限。
[0106] 本实施例中,因为所述数据字典存储了所有已接入所述分布式消息服务的业务主题,所以所述数据字典中若存在被请求查询的业务主题,即表明被请求查询的业务主题已接入了所述分布式消息服务,反之,所述数据字典中若不存在被请求查询的业务主题,即表明被请求查询的业务主题未接入所述分布式消息服务。为此,本实施例的方法在查询业务主题时替代了直接查询所述分布式消息服务,而是采用了查询所述数据字典,提高了查询速度。
[0107] 另外,上述步骤还在接收业务主题查询请求之后,无论被请求查询的业务主题是否已接入所述分布式消息服务,均检查了业务主题与业务项目组的挂靠关系,对未创建的业务项目组进行了补充创建,保证了业务主题与业务项目组关系的完整、完善。
[0108] 为了加强流程管理,申请的权限(包括读取被请求查询的业务主题的权限和接入被请求查询的业务主题的权限)均经审批通过后生效,生效后,所述数据消费者才能读取被请求查询的业务主题,所述数据生产者才能接入被请求查询的业务主题,对业务主题数据进行写入或变更等操作。
[0109] 在本实施例的步骤配合下,本实施例中,所述数据生产者执行的web操作可以包括以下操作中的至少一种:
[0110] 创建、删除所述业务项目组和所述业务主题;
[0111] 生产业务数据;
[0112] 维护所述业务主题的主题描述与业务标签;
[0113] 配置存储信息,所述存储信息包括终端存储分区、数据类型、副本、所在集群、数据有效期和配置参数中的至少一种;
[0114] 配置生产监控指标阈值,接收报警信息。
[0115] 所述数据消费者执行的web操作可以包括以下操作中的至少一种:
[0116] 提取业务主题的主题描述与业务标签;
[0117] 消费业务数据;
[0118] 配置消费监控指标阈值,接收报警信息。
[0119] 基于上述的操作,所述数据字典读取并存储的数据信息可以包括以下信息中的至少一种:
[0120] 业务信息,所述业务信息包括业务主题名称、业务项目组名称、所述主题描述、所述业务标签以及业务负责人中的至少一种;
[0121] 所述存储信息;
[0122] 血缘关系,所述血缘关系包括所述业务主题的上游接入信息及下游消费信息;
[0123] 监控指标,包括生产监控指标阈值和/或消费监控指标阈值;
[0124] 变更记录,所述变更记录包括数据变更记录和人工编辑记录。
[0125] 本实施例的方法可以帮助业务人员实现分布式消息服务业务主题的自助查询、多种自动操作,解放运维人员,数据生产者对自己关联的业务主题负责,数据消费者对自己关联的业务主题负责,节省业务人员的查询、操作效率。
[0126] 需要说明的是,本实施例虽然给出了所述方法的一种流程顺序,但是本发明并不局限于此,例如,步骤11至步骤13A、13B可以与步骤21至步骤263同时执行,在步骤21至步骤263之中,判断是否已创建挂靠被请求查询的业务主题的业务项目组的步骤可以提前到步骤23与步骤24之间,只要在不违反公知常识的前提下,对方法中步骤顺序的变换均可作为本发明新的实施例。
[0127] 本实施例的方法可以通过web前端和后端服务器配合实现,web前端可以提供显示页面,显示页面中可以展示所述数据字典中的数据信息,还可以根据上述的方法需求为业务人员提供操作选项、操作提示等以便业务人员操作,如编辑业务项目组名称、业务主题名称、主题描述等,输入业务主题查询条件。针对数据生产者开发的web前端可以用作数据生产客户端,针对数据消费者开发的web前端可以用作数据消费客户端,数据生产客户端和数据消费客户端将接收的操作通过http协议传输至后端服务器,后端服务器实现权限验证、调用预先定义的接口生成可执行命令、访问数据字典查询业务主题、监控报警等。
[0128] 实施例3
[0129] 图3为本实施例的一种分布式消息服务的网络管理系统。所述网络管理系统包括:业务项目组管理模块31、数据生产者管理模块32和数据消费者管理模块33。
[0130] 所述业务项目组管理模块31用于设置业务项目组及挂靠在所述业务项目组下的业务主题,以及,为所述业务主题设置关联的数据生产者和数据消费者及所关联的数据生产者和数据消费者对所述业务主题的操作权限;以及,
[0131] 所述数据生产者管理模块32用于接收所述数据生产者执行的web操作,验证所述web操作是否所述数据生产者的操作权限,若是,则根据所述web操作生成所述分布式消息服务的可执行命令,并将所述可执行命令发送至所述分布式消息服务。
[0132] 所述数据消费者管理模块33用于接收所述数据消费者执行的web操作,验证所述web操作是否符合所述数据消费者的操作权限,若是,则根据所述web操作生成所述分布式消息服务的可执行命令,并将所述可执行命令发送至所述分布式消息服务。
[0133] 本实施例的系统将业务项目组、业务主题与生产数据的业务人员(即数据生产者)、消费数据的业务人员(即数据消费者)相关联,通过权限控制机制对业务人员开放以业务主题为粒度的操作,有利于对分布式消息服务中业务数据的管理,并且还为数据生产者和数据消费者提供了web操作及web操作向分布式消息服务的可执行命令的转换,降低了数据生产者和数据消费者使用分布式消息服务的操作难度。
[0134] 本实施例的系统既面向数据生产者又面向数据消费者,在此基础上可以进行变形以形成本发明的其它实施例,例如:系统只面向数据生产者而在所述业务项目组管理模块31中只设置关联的数据生产者及数据生产者对业务主题的操作权限,并且不包括所述数据消费者管理模块33;或,系统只面向数据消费者而在所述业务项目组管理模块31中只设置关联的数据消费者及数据消费者对业务主题的操作权限,并且不包括所述数据生产者管理模块32。
[0135] 进一步地,所述网络管理系统还可以包括:数据字典模块34。
[0136] 所述数据字典模块34用于读取所述分布式消息服务已接入的业务主题的数据信息并存储至数据字典,以及将所述数据信息进行web展示。
[0137] 所述数据字典模块34通过数据字典管理数据信息,准确掌握所述分布式消息服务上各业务主题的数据情况,web展示可以便于业务人员(包括数据生产者和数据消费者)直观观察。
[0138] 进一步地,考虑到现有的web管理工具即便存在监控机制,也是主要服务于集群运维人员,监控指标设置和采集多为集群粒度层面(如集群的状态、数据分布或负载均衡),忽视了业务人员的监控需求,对此,本实施例的系统还基于存储的数据字典实现了业务层面上的监控,具体包括:监控模块35。
[0139] 所述监控模块35用于通过所述数据字典监控所述业务主题是否超过监控指标阈值,若是,则发出报警信息。
[0140] 进一步地,本实施例的系统还可以实现业务主题的查询,为此,所述数据字典模块34还可以用于接收业务主题查询请求,通过所述数据字典判断被请求查询的业务主题是否已接入所述分布式消息服务。
[0141] 所述网络管理系统还可以包括:流程管理模块36。
[0142] 所述流程管理模块36用于在判断被请求查询的业务主题已接入所述分布式消息服务时,为所述数据消费者申请读取被请求查询的业务主题的权限,在判断被请求查询的业务主题未接入所述分布式消息服务时,为所述数据生产者申请接入被请求查询的业务主题的权限。
[0143] 为了加强流程管理,申请的权限(包括读取被请求查询的业务主题的权限和接入被请求查询的业务主题的权限)均经审批通过后生效,生效后,所述数据消费者才能读取被请求查询的业务主题,所述数据生产者才能接入被请求查询的业务主题,对业务主题数据进行写入或变更等操作。
[0144] 进一步地,本实施例的系统还可以实现业务项目组的完善,所述业务项目组管理模块31还用于在接收业务主题查询请求之后,判断是否已创建挂靠被请求查询的业务主题的业务项目组,若否,则创建业务项目组。
[0145] 进一步地,所述数据生产者执行的web操作可以包括以下操作中的至少一种:
[0146] 创建、删除所述业务项目组和所述业务主题;
[0147] 生产业务数据;
[0148] 维护所述业务主题的主题描述与业务标签;
[0149] 配置存储信息,所述存储信息包括终端存储分区、数据类型、副本、所在集群、数据有效期和配置参数中的至少一种;
[0150] 配置生产监控指标阈值,接收报警信息;
[0151] 和/或,所述数据消费者执行的web操作包括以下操作中的至少一种:
[0152] 提取业务主题的主题描述与业务标签;
[0153] 消费业务数据;
[0154] 配置消费监控指标阈值,接收报警信息。
[0155] 进一步地,所述数据信息可以包括以下信息中的至少一种:
[0156] 业务信息,所述业务信息包括业务主题名称、业务项目组名称、所述主题描述、所述业务标签以及业务负责人中的至少一种;
[0157] 所述存储信息;
[0158] 血缘关系,所述血缘关系包括所述业务主题的上游接入信息及下游消费信息;
[0159] 监控指标,包括生产监控指标阈值和/或消费监控指标阈值;
[0160] 变更记录,所述变更记录包括数据变更记录和人工编辑记录。
[0161] 本实施例的系统可以帮助业务人员实现分布式消息服务业务主题的自助查询、多种自动操作,解放运维人员,数据生产者对自己关联的业务主题负责,数据消费者对自己关联的业务主题负责,节省业务人员的查询、操作效率。
[0162] 实施例4
[0163] 图4为本发明实施例4提供的一种电子设备的结构示意图。所述电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现实施例1或2的分布式消息服务的网络管理方法。图4显示的电子设备40仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
[0164] 如图4所示,电子设备40可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备40的组件可以包括但不限于:上述至少一个处理器41、上述至少一个存储器42、连接不同系统组件(包括存储器42和处理器41)的总线43。
[0165] 总线43包括数据总线、地址总线和控制总线。
[0166] 存储器42可以包括易失性存储器,例如随机存取存储器(RAM)421和/或高速缓存存储器422,还可以进一步包括只读存储器(ROM)423。
[0167] 存储器42还可以包括具有一组(至少一个)程序模块424的程序/实用工具425,这样的程序模块424包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
[0168] 处理器41通过运行存储在存储器42中的计算机程序,从而执行各种功能应用以及数据处理,例如本发明实施例1或2所提供的分布式消息服务的网络管理方法。
[0169] 电子设备40也可以与一个或多个外部设备44(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(I/O)接口45进行。并且,模型生成的设备40还可以通过网络适配器46与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图4所示,网络适配器46通过总线43与模型生成的设备40的其它模块通信。应当明白,尽管图中未示出,可以结合模型生成的设备40使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。
[0170] 应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
[0171] 实施例5
[0172] 本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现实施例1或2所提供的分布式消息服务的网络管理方法的步骤。
[0173] 其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。
[0174] 在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行实现实施例1或2所述的分布式消息服务的网络管理方法中的步骤。
[0175] 其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,所述程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。
[0176] 虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。