多系统联动控制方法、装置、设备和计算机可读存储介质

文档序号:877480 发布日期:2021-03-19 浏览:2次 >En<

阅读说明:本技术 多系统联动控制方法、装置、设备和计算机可读存储介质 (Multi-system linkage control method, device, equipment and computer readable storage medium ) 是由 许黛妮 于 2020-12-11 设计创作,主要内容包括:本申请涉及数据库领域,提供了多系统联动控制方法、装置、设备和计算机可读存储介质,以降低成本,提升系统的兼容性和自适应能力。所述方法包括:接收多个客户机对同步服务模块的应用程序接口API的调用请求,并将多个客户机对同步服务模块的应用程序接口API的调用请求向同步服务模块转发;同步服务模块接受多个客户机对同步服务模块的应用程序接口API的调用请求,对整个服务集群的状态进行同步;将调用请求的结果返回给多个客户机。本申请的技术方案开发前置条件少,开发周期短,成本较低,能够以较为灵活的方式汇聚多个开发主体开发的系统,不仅实现了联动控制,而且系统的兼容性和自适应能力都较强。(The application relates to the field of databases, and provides a multi-system linkage control method, a multi-system linkage control device, multi-system linkage control equipment and a computer-readable storage medium, so that cost is reduced, and system compatibility and self-adaptive capacity are improved. The method comprises the following steps: receiving call requests of a plurality of clients to an Application Program Interface (API) of the synchronous service module, and forwarding the call requests of the plurality of clients to the API of the synchronous service module to the synchronous service module; the synchronization service module receives the call requests of a plurality of clients to an Application Program Interface (API) of the synchronization service module, and synchronizes the state of the whole service cluster; the results of the invocation request are returned to the plurality of clients. The technical scheme of the application has the advantages of few development preconditions, short development period and low cost, and can converge a plurality of systems developed by development main bodies in a flexible way, thereby not only realizing linkage control, but also having strong system compatibility and self-adaptive capacity.)

多系统联动控制方法、装置、设备和计算机可读存储介质

技术领域

本发明涉及网络通信领域,尤其涉及一种多系统联动控制方法、装置、设备和计算机可读存储介质。

背景技术

多系统联动一般是为了在同一时刻实现多种不同功能的目的,例如,监控系统、多会场的视频会议系统等等,是为了在同一时刻能够监控不同的位置或接入多个地理位置不同的会议,等等。目前,多系统联动控制的实现更多是基于操作系统层面,内置分布式协调的组件和服务,具体而言,在局域网内,设备与设备建立通信来发送数据包实现信息状态的同步,以此来实现多系统联动的功能。

上述多系统联动控制的应用程序主要是基于C/S的架构,在不同设备安装相同应用程序,通过在客户机保存系统配置文件为XML格式,在服务端同样运行这个XML的配置文件来进行状态和信息间的同步。

然而,现有的多系统联动控制的方法,其显著缺陷在于需要在操作系统层面进行相对应的开发和配置,因而开发周期长、成本高;另一方面,需要汇聚多个开发主体开发的多个系统,因而对于不同系统的兼容性弱,自适应能力也较差。

发明内容

本申请提供一种多系统联动控制方法、装置、设备和计算机可读存储介质,以降低成本,提升系统的兼容性和自适应能力。

一方面,本申请提供了一种多系统联动控制方法,包括:

接收多个客户机对同步服务模块的应用程序接口API的调用请求,并将所述多个客户机对所述同步服务模块的应用程序接口API的调用请求向所述同步服务模块转发;

所述同步服务模块接受所述多个客户机对同步服务模块的应用程序接口API的调用请求,对整个服务集群的状态进行同步;

将所述调用请求的结果返回给所述多个客户机。

另一方面,本申请提供了一种多系统联动控制装置,包括:

第一接收模块,用于接收多个客户机对同步服务模块的应用程序接口API的调用请求,并将所述多个客户机对所述同步服务模块的应用程序接口API的调用请求向所述同步服务模块转发;

同步服务模块,用于接受所述多个客户机对同步服务模块的应用程序接口API的调用请求,对整个服务集群的状态进行同步;

结果返回模块,用于将所述调用请求的结果返回给所述多个客户机。

第三方面,本申请提供了一种设备,所述设备包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述技术方案的方法的步骤。

第四方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述技术方案的方法的步骤。

从上述本申请提供的技术方案可知,一方面,由于客户机通过对同步服务模块等服务模块的应用程序接口API的调用,即可实现相应的功能,换言之,是在应用层对功能进行实现,无需在操作系统层面进行相对应的开发和配置,因此,开发前置条件少,开发周期短,成本较低;另一方面,通过同步服务模块对整个服务集群的状态的同步,能够以较为灵活的方式汇聚多个开发主体开发的系统,不仅实现了联动控制,而且系统的兼容性和自适应能力都较强。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的多系统联动控制方法的流程图;

图2是本申请实施例提供的以B/S和C/S两种架构相结合的多系统联动控制的系统示意图;

图3是本申请实施例提供的客户机通过API网关调用服务模块的示意图;

图4是本申请实施例提供的多系统联动控制装置的结构示意图;

图5是本申请实施例提供的设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

在本说明书中,诸如第一和第二这样的形容词仅可以用于将一个元素或动作与另一元素或动作进行区分,而不必要求或暗示任何实际的这种关系或顺序。在环境允许的情况下,参照元素或部件或步骤(等)不应解释为局限于仅元素、部件、或步骤中的一个,而可以是元素、部件、或步骤中的一个或多个等。

在本说明书中,为了便于描述,附图中所示的各个部分的尺寸并不是按照实际的比例关系绘制的。

本申请提出了一种多系统联动控制方法,如附图1所示,主要包括步骤S101至S103,详述如下:

步骤S101:接收多个客户机对同步服务模块的应用程序接口API的调用请求,并将多个客户机对同步服务模块的应用程序接口API的调用请求向同步服务模块转发。

本申请实施例从应用层面来实现多系统联动控制,具体是以浏览器/服务器(Browser/Server,B/S)和客户机/服务器(Client/Server,C/S)两种架构相结合,控制端采用B/S架构,不同终端设备只要具备浏览器即可打开控制端,无需安装任何其他应用程序,即可通过控制端对大屏端的多系统进行联动控制。大屏端采用C/S架构,大屏端的应用程序是通过Electron构建的可支持跨平台的桌面应用程序,以此接入和聚合各开发主体开发的各种类型的可视化专题网页,通过推送(push)服务模块实现网络的实时通信,获取控制端的状态同步。API 网关(API Gateway)是将所有API的调用统一接入API网关层,由网关层负责接入和输出,用于统一接入、协议适配、流量管理与容错、以及安全防护等方面,其架构示意如图2所示。API 网关接收多个客户机对同步服务模块的应用程序接口(ApplicationProgramming Interface,API)的调用请求,并将多个客户机对同步服务模块的应用程序接口API的调用请求向同步服务模块转发。

步骤S102:同步服务模块接受多个客户机对同步服务模块的应用程序接口API的调用请求,对整个服务集群的状态进行同步。

具体地,作为本申请一个实施例,同步服务模块接受多个客户机对同步服务模块的应用程序接口API的调用请求,对整个服务集群的状态进行同步可以是:通过分布式锁进行加锁操作,对整个服务集群的状态进行锁定,通过对分布式锁进行解锁操作,对整个服务集群的状态统一更新,以实现对整个服务集群的状态进行同步,其中,通过对分布式锁进行解锁操作,对整个服务集群的状态统一更新,以实现对整个服务集群的状态进行同步可以是:当整个服务集群中任一服务S对整个服务集群的状态修改完毕时,释放附加于服务S上的分布式锁;将修改后的状态广播至整个服务集群中其他服务,以使整个服务集群中其他服务通过与分布式缓存进行对比,完成整个服务集群的状态的同步。换言之,同步服务模块(sync-store模块)采用无中心和分布式的设计模式,基于进程间的通信,提供一个通用的状态树管理服务,用于支撑多端状态同步的场景,通过分布式锁对整个服务集群的状态的变动进行锁定,防止一个服务在修改状态尚未完成时,其他服务亦在修改状态。当状态修改完成后,释放分布式锁,并且通过分布式消息中间件对变更后的状态进行广播,不同的服务接收到状态之后,再与分布式缓存进行比对,确定无误后完成整个服务集群的状态同步,从而能够实现对数据状态树的管理,再根据数据相应状态的改变,将数据的变化状态推推送至消息队列。

步骤S103:将调用请求的结果返回给多个客户机。

从上述附图1示例的多系统联动控制方法可知,一方面,由于客户机通过对同步服务模块等服务模块的应用程序接口API的调用,即可实现相应的功能,换言之,是在应用层对功能进行实现,无需在操作系统层面进行相对应的开发和配置,因此,开发前置条件少,开发周期短,成本较低;另一方面,通过同步服务模块对整个服务集群的状态的同步,能够以较为灵活的方式汇聚多个开发主体开发的系统,不仅实现了联动控制,而且系统的兼容性和自适应能力都较强。

由于本申请实施例中,系统还包括推送服务模块(push服务模块)、预览服务模块(preview服务模块)和导出服务模块(export服务模块)等多个服务模块,因此,除了接收多个客户机对同步服务模块的API的调用请求,API 网关还可以接收多个客户机对推送服务模块的API调用请求,并将多个客户机对推送服务模块的API调用请求向推送服务模块转发,然后,推送服务模块向多个客户机推送实时消息。换言之,作为一个通用的消息推送服务模块,推送服务模块打通了浏览器和服务器之间实时、双向通信,从而实现服务器到客户机的实时消息推送。

类似地,API 网关还可以接收多个客户机对预览服务模块的API调用请求,并将多个客户机对预览服务模块的API调用请求向预览服务模块转发,然后,预览服务模块获取不同系统的界面后予以预览呈现,此处的系统,是发送对预览服务模块的API调用请求的客户机要求展示其他界面的系统。在本申请实施例中,预览服务模块使用Puppeteer库爬取HTML页面,生成预渲染的内容,从而实时获取不同系统的界面,实现预览功能。

上述本申请实施例中,API 网关还可以接收多个客户机对导出服务模块的API调用请求,并将多个客户机对导出服务模块的API调用请求向导出服务模块转发,导出服务模块对图像进程处理,导出实时截取的页面界面。具体而言,导出服务模块使用OpenCV库,通过对图像进程处理,包括过滤、转换和拼接等,还原实时截取的页面界面,以实现多系统联动控制的预览和导出功能。

如图3所示,用户通过各种客户机(个人电脑、平板电脑和智能终端,等等)向API网关(图中使用API Gateway标识)发送API调用请求,API网关以http方式向同步服务模块、推送服务模块、预览服务模块或导出服务模块转发,以对应实现对整个服务集群的状态进行同步、向客户机推送实时消息、获取不同系统的界面后予以预览呈现或导出实时截取的页面界面等功能。

请参阅附图4,是本申请实施例提供的一种多系统联动控制装置,可以包括第一调用请求接收模块401、同步服务模块402和结果返回模块403,详述如下:

第一调用请求接收模块401,用于接收多个客户机对同步服务模块的应用程序接口API的调用请求,并将多个客户机对同步服务模块的应用程序接口API的调用请求向同步服务模块转发;

同步服务模块402,用于接受多个客户机对同步服务模块的应用程序接口API的调用请求,对整个服务集群的状态进行同步;

结果返回模块403,用于将调用请求的结果返回给多个客户机。

可选地,附图4示例的同步服务模块402可包括状态锁定单元和状态更新单元,其中:

状态锁定单元,用于通过分布式锁进行加锁操作,对整个服务集群的状态进行锁定;

状态更新单元,用于通过对分布式锁进行解锁操作,对整个服务集群的状态统一更新,以实现对整个服务集群的状态进行同步。

可选地,上述状态更新单元可以包括释放单元和广播单元,其中:

释放单元,用于当整个服务集群中任一服务S对整个服务集群的状态修改完毕时,释放附加于服务S上的分布式锁;

广播单元,用于将修改后的状态广播至整个服务集群中其他服务,以使整个服务集群中其他服务通过与分布式缓存进行对比,完成整个服务集群的状态的同步。

可选地,附图示例的装置还可以包括聚合模块,用于对可用工作节点返回的查询结果进行数据聚合,经聚合后的查询结果返回给查询端。

可选地,附图4示例的装置还可以包括第二调用请求接收模块和推送服务模块,其中:

第二调用请求接收模块,用于接收多个客户机对推送服务模块的API调用请求,并将多个客户机对推送服务模块的API调用请求向推送服务模块转发;

推送服务模块,用于向多个客户机推送实时消息。

可选地,附图4示例的装置还可以包括第三调用请求接收模块和预览服务模块,其中:

第三调用请求接收模块,用于接收多个客户机对预览服务模块的API调用请求,并将多个客户机对预览服务模块的API调用请求向预览服务模块转发;

预览服务模块,用于获取不同系统的界面后予以预览呈现。

可选地,附图4示例的装置还可以包括第四调用请求接收模块和导出服务模块,其中:

第四调用请求接收模块,用于接收多个客户机对导出服务模块的API调用请求,并将多个客户机对导出服务模块的API调用请求向导出服务模块转发;

导出服务模块,用于对图像进程处理,导出实时截取的页面界面。

从以上技术方案的描述中可知,一方面,由于客户机通过对同步服务模块等服务模块的应用程序接口API的调用,即可实现相应的功能,换言之,是在应用层对功能进行实现,无需在操作系统层面进行相对应的开发和配置,因此,开发前置条件少,开发周期短,成本较低;另一方面,通过同步服务模块对整个服务集群的状态的同步,能够以较为灵活的方式汇聚多个开发主体开发的系统,不仅实现了联动控制,而且系统的兼容性和自适应能力都较强。

图5是本申请一实施例提供的设备的结构示意图。如图5所示,该实施例的设备5主要包括:处理器50、存储器51以及存储在存储器51中并可在处理器50上运行的计算机程序52,例如多系统联动控制方法的程序。处理器50执行计算机程序52时实现上述多系统联动控制方法实施例中的步骤,例如图1所示的步骤S101至S103。或者,处理器50执行计算机程序52时实现上述各装置实施例中各模块/单元的功能,例如图4所示第一调用请求接收模块401、同步服务模块402和结果返回模块403的功能。

示例性地,多系统联动控制方法的计算机程序52主要包括:接收多个客户机对同步服务模块的应用程序接口API的调用请求,并将多个客户机对同步服务模块的应用程序接口API的调用请求向同步服务模块转发;接受多个客户机对同步服务模块的应用程序接口API的调用请求,对整个服务集群的状态进行同步;将调用请求的结果返回给多个客户机。计算机程序52可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器51中,并由处理器50执行,以完成本申请。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序52在设备5中的执行过程。例如,计算机程序52可以被分割成第一调用请求接收模块401、同步服务模块402和结果返回模块403(虚拟装置中的模块)的功能,各模块具体功能如下:第一调用请求接收模块401,用于接收多个客户机对同步服务模块的应用程序接口API的调用请求,并将多个客户机对同步服务模块的应用程序接口API的调用请求向同步服务模块转发;同步服务模块402,用于接受多个客户机对同步服务模块的应用程序接口API的调用请求,对整个服务集群的状态进行同步;结果返回模块403,用于将调用请求的结果返回给多个客户机。

设备5可包括但不仅限于处理器50、存储器51。本领域技术人员可以理解,图5仅仅是设备5的示例,并不构成对设备5的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如计算设备还可以包括输入输出设备、网络接入设备、总线等。

所称处理器50可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器 (Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列 (Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

存储器51可以是设备5的内部存储单元,例如设备5的硬盘或内存。存储器51也可以是设备5的外部存储设备,例如设备5上配备的插接式硬盘,智能存储卡(Smart MediaCard,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器51还可以既包括设备5的内部存储单元也包括外部存储设备。存储器51用于存储计算机程序以及设备所需的其他程序和数据。存储器51还可以用于暂时地存储已经输出或者将要输出的数据。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即,将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述装置中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

在本申请所提供的实施例中,应该理解到,所揭露的装置/设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个非临时性计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,多系统联动控制方法的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤,即,接收多个客户机对同步服务模块的应用程序接口API的调用请求,并将多个客户机对同步服务模块的应用程序接口API的调用请求向同步服务模块转发;接受多个客户机对同步服务模块的应用程序接口API的调用请求,对整个服务集群的状态进行同步;将调用请求的结果返回给多个客户机。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。非临时性计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读内存(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,非临时性计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,非临时性计算机可读介质不包括电载波信号和电信信号。以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

13页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于处理相干数据的方法和系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!