信号实时监测方法、系统、电子设备以及存储介质转让专利

申请号 : CN202110265634.X

文献号 : CN112688835B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 高林明范哲权孙政

申请人 : 索思(苏州)医疗科技有限公司

摘要 :

本发明实施例公开了一种信号实时监测方法、系统、电子设备以及存储介质。该方法包括:获取信号检测端采集的目标对象的实时检测信号;基于业务服务端接收订单创建指令,根据订单创建指令创建目标对象的信号检测订单;获取信号检测订单,并根据信号检测订单中的网关信息确定对应的网关端,并从对应的网关端分批次获取目标对象的实时检测信号,并将实时检测信号发送至Kafka平台进行存储;获取Kafka平台的实时检测信号,并根据实时检测信号的信号检测订单将读取的实时检测信号转发至对应的设备端;将目标对象的订单创建指令发送至业务服务端,并接收发布服务端发送的实时检测信号,显示实时检测信号。通过本发明实施例的技术方案实现将监测数据实时显示。

权利要求 :

1.一种信号实时监测系统,其特征在于,包括:至少一个网关端、至少一个设备端、业务服务端、通信服务端、Kafka平台和发布服务端,其中:网关端,用于获取信号检测端采集的目标对象的实时检测信号;

所述业务服务端,分别与所述网关端和所述设备端通信连接,用于接收所述设备端传输的订单创建指令,根据所述订单创建指令创建目标对象的信号检测订单,所述信号检测订单中携带有网关信息和设备信息;

所述通信服务端,分别与所述网关端、所述业务服务端和Kafka平台通信连接,用于获取所述信号检测订单,并根据所述信号检测订单中的网关信息确定对应的网关端,并从所述对应的网关端分批次获取目标对象的实时检测信号,并将所述实时检测信号发送至Kafka平台进行存储;

所述Kafka平台,用于存储目标对象各批次的实时检测信号;

所述发布服务端,分别与所述Kafka平台和设备端通信连接,用于获取所述Kafka平台的实时检测信号,并根据所述实时检测信号的信号检测订单将读取的所述实时检测信号转发至对应的设备端;

所述设备端,用于将目标对象的订单创建指令发送至所述业务服务端,并接收所述发布服务端发送的实时检测信号,显示所述实时检测信号。

2.根据权利要求1所述的系统,其特征在于,所述网关端还用于与所述通信服务端建立Netty通信连接,并基于GChannel命令向所述通信服务端实时发送所述目标对象的实时检测信号;其中,所述GChannel命令为实时传输命令。

3.根据权利要求1所述的系统,其特征在于,所述Kafka平台中存储的实时检测信号包括序列标识;

所述发布服务端还用于按序从所述Kafka平台读取所述实时检测信号,并基于多线程网络库zeroMQ将所述实时检测信号传输至所述设备端进行显示。

4.根据权利要求1所述的系统,其特征在于,所述设备端还用于将接收到的实时检测信号进行数据整合,并将整合后的信号进行实时显示。

5.根据权利要求1所述的系统,其特征在于,所述业务服务端还用于根据接收到的所述设备端传输的订单变更指令对所述信号检测订单进行变更,得到信号检测变更订单,并将所述信号检测变更订单发送至所述通信服务端;

所述通信服务端基于所述信号检测变更订单向所述网关端和设备端发送订单变更提示信息。

6.根据权利要求1所述的系统,其特征在于,所述通信服务端还用于监听所述至少一个设备端的第一心跳信息,根据所述第一心跳信息确定所述设备端与所述通信服务端的通信状态;

以及监听所述至少一个网关端的第二心跳信息,根据所述第二心跳信息确定所述网关端与所述通信服务端的通信状态。

7.根据权利要求1所述的系统,其特征在于,还包括:所述业务服务端、通信服务端和发布服务端均包括至少两个子服务端,所述子服务端包括第一子服务端和至少一个第二子服务端;

用于若所述业务服务端、所述通信服务端和所述发布服务端中任一项的第一子服务端发生宕机情况,则将所述第一子服务端的数据转至任一第二子服务端进行处理。

8.根据权利要求1所述的系统,其特征在于,所述系统还包括redis库;

所述redis库分别与所述业务服务端、所述通信服务端和所述发布服务端通信连接,接收所述业务服务端、所述通信服务端和所述发布服务端分别发送的第三心跳信息,并将各所述第三心跳信息进行广播;

所述业务服务端、所述通信服务端和所述发布服务端分别建立对应的集群,所述集群用于存储订阅的服务端标识以及服务端标识对应的第三心跳信息;若根据所述第三心跳信息确定任一服务端发生宕机情况,则向其余服务端发送宕机服务端的离线通知信息。

9.一种信号实时监测方法,其特征在于所述方法应用于权利要求1‑8中任一所述的信号实时监测系统,包括:

基于网关端获取信号检测端采集的目标对象的实时检测信号;

基于设备端向业务服务端发送订单创建指令;

基于业务服务端接收所述订单创建指令,根据所述订单创建指令创建目标对象的信号检测订单,所述信号检测订单中携带有网关信息和设备信息;

基于通信服务端获取所述信号检测订单,并根据所述信号检测订单中的网关信息确定对应的网关端,并从所述对应的网关端分批次获取目标对象的实时检测信号,并将所述实时检测信号发送至Kafka平台进行存储;

基于Kafka平台存储目标对象各批次的实时检测信号;

基于发布服务端获取所述Kafka平台的实时检测信号,并根据所述实时检测信号的信号检测订单将读取的所述实时检测信号转发至对应的设备端;

基于所述设备端将目标对象的订单创建指令发送至所述业务服务端,并接收所述发布服务端发送的实时检测信号,显示所述实时检测信号。

说明书 :

信号实时监测方法、系统、电子设备以及存储介质

技术领域

[0001] 本发明实施例涉及生理特征监测技术领域,尤其涉及一种信号实时监测方法、系统、电子设备以及存储介质。

背景技术

[0002] 随着技术的发展,心电监测设备的体积越来越便于携带,从一开始只能固定在医院里无法随意移动的大型监测设备,到俗称“背盒子”的Holter,再到尺寸更小并且更易于
随身携带的可穿戴式心电监测设备,设备的进化尤其是便携意味着能够更长期地随身监测
患者的心电信号,并且不会给患者带来额外的负担影响患者的正常生活作息,从而还原患
者在监测或诊断过程中的常规性活动,使检测更准确但是现有技术中的可穿戴式心电监测
设备的储存数据需要停止使用后送给医生进行分析,医生无法根据患者的心电图异常及时
针对性的做出治疗方案,无法及时解除患者的危险情况。

发明内容

[0003] 本发明提供一种信号实时监测方法、系统、电子设备以及存储介质,以实现将监测数据实时进行设备,达到便于医生及时诊断治疗疾病的目的。
[0004] 第一方面,本发明实施例提供了一种信号实时监测系统,该系统包括:至少一个网关端、至少一个设备端、业务服务端、通信服务端、Kafka平台和发布服务端,其中:
[0005] 网关端,用于获取信号检测端采集的目标对象的实时检测信号;
[0006] 所述业务服务端,分别与所述网关端和所述设备端通信连接,用于接收所述设备端传输的订单创建指令,根据所述订单创建指令创建目标对象的信号检测订单,所述信号
检测订单中携带有网关信息和设备信息;
[0007] 所述通信服务端,分别与所述网关端、所述业务服务端和Kafka平台通信连接,用于获取所述信号检测订单,并根据所述信号检测订单中的网关信息确定对应的网关端,并
从所述对应的网关端分批次获取目标对象的实时检测信号,并将所述实时检测信号发送至
Kafka平台进行存储;
[0008] 所述Kafka平台,用于存储目标对象各批次的实时检测信号;
[0009] 所述发布服务端,分别与所述Kafka平台和设备端通信连接,用于获取所述Kafka平台的实时检测信号,并根据所述实时检测信号的信号检测订单将读取的所述实时检测信
号转发至对应的设备端;
[0010] 所述设备端,用于将目标对象的订单创建指令发送至所述业务服务端,并接收所述发布服务端发送的实时检测信号,显示所述实时检测信号。
[0011] 第二方面,本发明实施例还提供了一种信号实时监测方法,该方法包括:
[0012] 基于网关端获取信号检测端采集的目标对象的实时检测信号;
[0013] 基于设备端向业务服务端发送订单创建指令;
[0014] 基于业务服务端接收所述订单创建指令,根据所述订单创建指令创建目标对象的信号检测订单,所述信号检测订单中携带有网关信息和设备信息;
[0015] 基于通信服务端获取所述信号检测订单,并根据所述信号检测订单中的网关信息确定对应的网关端,并从所述对应的网关端分批次获取目标对象的实时检测信号,并将所
述实时检测信号发送至Kafka平台进行存储;
[0016] 基于Kafka平台存储目标对象各批次的实时检测信号;
[0017] 基于发布服务端获取所述Kafka平台的实时检测信号,并根据所述实时检测信号的信号检测订单将读取的所述实时检测信号转发至对应的设备端;
[0018] 基于所述设备端将目标对象的订单创建指令发送至所述业务服务端,并接收所述发布服务端发送的实时检测信号,显示所述实时检测信号。
[0019] 第三方面,本发明实施例还提供了一种电子设备,所述电子设备包括:
[0020] 一个或多个处理器;
[0021] 存储端,用于存储一个或多个程序,
[0022] 当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明任意实施例提供的信号实时监测方法。
[0023] 第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例提供的信号实时监测方法。
[0024] 本实施例的技术方案,设备端基于目标对象向业务服务端发送订单创建指令,业务服务端根据接收到的订单创建指令创建目标对象的信号检测订单,该信号检测订单中包
含有网关信息和设备信息;通信服务端基于从业务服务端获取到的信号检测订单中的网关
信息中对应的网关端,从该对应的网关端分批次获取信号检测端采集的目标对象的实时检
测信号,并将该实时检测信号基于通信服务端中的即时通讯服务快速将检测信号发送至
Kafka平台,以使Kafka平台存储目标对象各批次的实时检测信号;发布服务端获取Kafka平
台的实时检测信号,并根据所述实时检测信号的信号检测订单将读取的所述实时检测信号
转发至对应的设备端,基于所述设备端将目标对象的订单创建指令发送至所述业务服务
端,并接收所述发布服务端发送的实时检测信号,显示所述实时检测信号。本发明的技术方
案基于业务服务端建立目标对象对应的信号检测订单,基于该信号检测订单确定对应的网
关端,以实现准确采集目标对象的生理信号;基于通信服务端即时将采集到的检测信号发
送至Kafka平台进行顺序存放,以使发布服务端依次获取目标对象的检测信号,并且将检测
信号在对应的设备端进行实时显示,达到便于医生及时诊断治疗疾病的目的。

附图说明

[0025] 为了更加清楚地说明本发明示例性实施例的技术方案,下面对描述实施例中所需要用到的附图做一简单介绍。显然,所介绍的附图只是本发明所要描述的一部分实施例的
附图,而不是全部的附图,对于本领域普通技术人员,在不付出创造性劳动的前提下,还可
以根据这些附图得到其他的附图。
[0026] 图1是本发明实施例一提供的信号实时监测系统的结构示意图;
[0027] 图2是本发明实施例二提供的信号实时监测方法的流程示意图;
[0028] 图3是本发明实施例二涉及的信号实时监测系统的结构示意图;
[0029] 图4为本发明实施例三提供的电子设备的结构示意图。

具体实施方式

[0030] 下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便
于描述,附图中仅示出了与本发明相关的部分而非全部结构。
[0031] 实施例一
[0032] 图1为本发明实施例一提供的一种信号实时监测系统的结构示意图,本实施例可适用于在对目标用户进行生理信号实时监测的情况。如图1所示,该系统具体包括:至少一
个网关端110、业务服务端120、通信服务端130、Kafka平台140、发布服务端150和至少一个
设备端160,其中:
[0033] 网关端110,用于获取信号检测端采集的目标对象的实时检测信号。
[0034] 业务服务端120,分别与网关端110和设备端160通信连接,用于接收设备端160传输的订单创建指令,根据订单创建指令创建目标对象的信号检测订单,信号检测订单中携
带有网关信息和设备信息。
[0035] 通信服务端130,分别与网关端110、业务服务端120和Kafka平台140通信连接,用于获取信号检测订单,并根据信号检测订单中的网关信息确定对应的网关端110,并从对应
的网关端110分批次获取目标对象的实时检测信号,并将实时检测信号发送至Kafka平台
140进行存储。
[0036] 发布服务端150,分别与Kafka平台140和设备端160通信连接,用于获取Kafka平台140的实时检测信号,并根据实时检测信号的信号检测订单将读取的实时检测信号转发至
对应的设备端160。
[0037] Kafka平台140,用于存储目标对象各批次的实时检测信号。
[0038] 设备端160,用于将目标对象的订单创建指令发送至业务服务端120,并接收发布服务端150发送的实时检测信号,显示实时检测信号。
[0039] 在本发明实施例中,信号检测端可以包含有至少一个信号检测传感器,分别与至少一个网关端110通信连接,用于根据目标对象的唯一标识将检测传感器采集的目标对象
的实时检测信号发送至网关端110。其中,检测信号可以是但不限于心电信号也可以是脑电
信号等的生理信号,本实施例对检测信号的信号类型不加以限制。
[0040] 可选的,网关端110还用于与通信服务端130建立Netty通信连接,并基于GChannel命令向通信服务端130实时发送目标对象的实时检测信号。其中,GChannel命令为网关端
110预先注册的用于发送实时检测信号的命令。Netty通信连接可以为基于Netty服务中的
socket协议建立的通信通道,用于实现通信连接。具体的,网关端110可以基于与通信服务
端130建立的Netty通信连接以及预先注册的GChannel命令向通信服务端130发送目标对象
的实时检测信号。其中,发送的实时检测信号可以是实时检测信号的数据包,用于方便信号
快速传输。
[0041] 在本发明实施例中,业务服务端120可以提供各业务功能webapi接口,以使当前业务服务端120可以通过http等协议与其他端之间进行通信连接。订单创建指令为设备端160
基于目标对象的信号检测需求创建的订单创建指令,并发送至业务服务端120,业务服务端
120根据该订单创建指令创建信号检测订单。该信号检测订单中携带有用于显示检测信号
的设备信息和用于转发检测信号的网关信息,进一步的,信号检测订单还具有唯一订单号,
该订单号可以是根据订单中携带的设备信息和网关信息所生成的,也可以是根据目标对象
的唯一标识生成的,本实施例对订单号的生成方式不加以限制。
[0042] 可选的,业务服务端120还用于根据接收到的设备端160传输的订单变更指令对信号检测订单进行变更,得到信号检测变更订单,并将信号检测变更订单发送至通信服务端
130;通信服务端130将信号检测变更订单向网关端110和设备端160发送订单变更提示信
息。
[0043] 其中,订单变更指令可以是包括对当前已创建的信号检测订单进行变更的指令,例如可以是修改当前信号检测订单,也可以是结束当前信号检测订单。具体的,可以是根据
设备端160的输入信息对当前信号检测订单中携带的网关信息进行修改,也可以是对当前
信号检测订单中的目标对象的唯一标识进行修改,也可以是结束当前信号检测订单,当然
还可以是对当前信号检测订单进行其他变更,本实施例对变更的内容不加以限制。
[0044] 具体的,业务服务端120将根据设备端160发送的订单变更指令得到信号检测变更订单,并将信号检测变更订单发送至通信服务端130,以使通信服务端130将信号检测变更
订单向订单中携带得网关信息和设备信息分别对应的网关端110和设备端160发送订单变
更提示信息。
[0045] 在本发明实施例中,通信服务端130中包含socket等可以实现即时通信的协议,以使通信服务端130将获取到的实时检测信号即时发送至Kafka平台140存储,以使发布服务
端150能够从Kafka平台140获取实时检测信号,并将获取到的实时检测信号在设备端160进
行实时显示。网关信息中包含有IP号和端口号,通信服务端130可以根据IP号和端口号确定
该信号检测订单中信号采集对应的网关端110。具体的,通信服务端130根据获取到的信号
检测订单中携带的网关信息确定对应的网关端110,并从该网关端110依次获取对应的信号
检测端依次采集的实时检测信号,并将实时检测信号发送至Kafka平台140进行存储。
[0046] 可选的,通信服务端130还用于监听至少一个设备端160的第一心跳信息,根据第一心跳信息确定设备端160与通信服务端130的通信状态;以及监听至少一个网关端110的
第二心跳信息,根据第二心跳信息确定网关端110与通信服务端130的通信状态。
[0047] 具体的,根据第一心跳信息分别确定至少一个网关端110与通信服务端130的通信状态,基于第二心跳信息确定至少一个设备端160与通信服务端130的通信状态,以保证网
关端110、设备端160分别与通信服务端130的良好的通信状态。通信服务端130在接收到信
号检测订单或者信号检测变更订单时,根据订单中携带的网关信息和设备信息可以及时向
对应的网关端110和设备端160发送订单创建提示信息和订单变更提示信息。
[0048] 其中,第一心跳信息为至少一个设备端160的心跳信息,第二心跳信息为至少一个网关端110的心跳信息,所以第一心跳信息和第二心跳信息的数量为至少一个。
[0049] 在本实施例中,Kafka平台140中存储的实时检测信号包括序列标识;其中,序列标识可以是根据存入平台的序列号确定的唯一序列标识,也可以是根据存入平台的时间戳确
定的唯一序列标识。具体的,根据实时检测信号存储至平台的序列标识进行顺序存储,以使
发布服务端150可以依照实时检测信号的序列标识顺序获取存储的实时检测信号,并发送
至设备端160进行信号显示。
[0050] 可选的,发布服务端150基于Kafka平台140中实时检测信号的序列标识按序从Kafka平台140读取实时检测信号,并基于线程网络库zeroMQ将实时检测信号传输至设备端
160进行显示。具体的,基于线程网络库zeroMQ确定获取的当前的实时检测信号对应的信号
检测订单中携带的设备信息,并根据该设备信息的IP号和端口号确定该信号检测订单对应
的设备端160,以将获取到的实时检测信号发送至对应的设备端160进行信号显示。
[0051] 可选的,设备端160将接收到的实时检测信号进行数据整合,并将整合后的信号进行实时显示。具体的,由于数据在传输过程中可能会出现数据丢失的情况,设备端160在接
收到实时检测信号是可以先对信号数据进行修复,例如对信号数据中丢失的数据包进行数
据包以及对数据包中丢失的数据帧进行补帧,对数据整合还可以包括将修复后的信号数据
按照采集数据时的时间戳进行顺序排布,以使数据可以顺序在设备端160进行显示。
[0052] 在上述实施例的基础上,系统还包括redis库;redis库分别与业务服务端120、通信服务端130和发布服务端150通信连接,接收业务服务端120、通信服务端130和发布服务
端150分别发送的第三心跳信息,并将各第三心跳信息进行广播;业务服务端120、通信服务
端130和发布服务端150分别建立对应的集群,集群用于存储订阅的服务端标识以及服务端
标识对应的第三心跳信息;若根据第三心跳信息确定任一服务端发生宕机情况,则向其余
服务端发送宕机服务端的离线通知信息。其中,第三心跳信息包括业务服务端120、通信服
务端130和发布服务端150的心跳信息,所以第三心跳信息的数量为多个。
[0053] 具体的,将各第三心跳信息进行广播的方法可以是:采用redis库基于预先建立的心跳队列将接收到的第三心跳信息广播;业务服务端120、通信服务端130和发布服务端150
中任一服务端接收广播的其他服务端的第三心跳信息,并将接收到的第三心跳信息存储至
当前服务器预先建立的集群中。在预设间隔内根据接收到的第三心跳信息确定集群中的第
三心跳信息的服务端标识对应的服务端是否处于运行状态,若根据第三心跳信息确定任一
服务端发生宕机情况,则向其余服务端发送宕机服务端的离线通知信息,可以实现使当前
服务端及时了解其余各服务端的运行状态,避免任一服务端宕机导致的信号显示中断。
[0054] 可选的,业务服务端120、通信服务端130和发布服务端150均包括至少两个子服务端,子服务端包括第一子服务端和至少一个第二子服务端;用于若所述业务服务端120、所
述通信服务端130和所述发布服务端150中任一项的第一子服务端发生宕机情况,则将所述
第一子服务端的数据转至任一第二子服务器进行处理。
[0055] 本实施例的技术方案,设备端160基于目标对象向业务服务端120发送订单创建指令,业务服务端120根据接收到的订单创建指令创建目标对象的信号检测订单,该信号检测
订单中包含有网关信息和设备信息;通信服务端130基于从业务服务端120获取到的信号检
测订单中的网关信息中对应的网关端110,从该对应的网关端110分批次获取信号检测端采
集的目标对象的实时检测信号,并将该实时检测信号基于通信服务端130中的即时通讯服
务快速将检测信号发送至Kafka平台140,以使Kafka平台140存储目标对象各批次的实时检
测信号;发布服务端150获取Kafka平台140的实时检测信号,并根据所述实时检测信号的信
号检测订单将读取的所述实时检测信号转发至对应的设备端160,基于所述设备端160将目
标对象的订单创建指令发送至所述业务服务端120,并接收所述发布服务端150发送的实时
检测信号,显示所述实时检测信号。本发明的技术方案基于业务服务端120建立目标对象对
应的信号检测订单,基于该信号检测订单确定对应的网关端110,以实现准确采集目标对象
的生理信号;基于通信服务端130即时将采集到的检测信号发送至Kafka平台140进行顺序
存放,以使发布服务端150依次获取目标对象的检测信号,并且将检测信号在对应的设备端
160进行实时显示,达到便于医生及时诊断治疗疾病的目的。
[0056] 以下是本发明实施例提供的信号实时监测方法的实施例,该方法与上述各实施例的信号实时监测系统属于同一个发明构思,在信号实时监测方法的实施例中未详尽描述的
细节内容,可以参考上述信号实时监测系统的实施例。
[0057] 实施例二
[0058] 图2为本发明实施例二提供的信号实时监测方法的流程示意图,本实施例可适用于在对目标用户进行生理信号实时监测的情况。该方法可以由上述实施例提供的信号实时
监测系统来执行,该系统可以由软件和/或硬件的方式来实现。
[0059] 在执行本实施例的技术方案之前,先对上述实施例中的信号实时监测系统中的网关端和设备端分别与通信服务端建立通信连接,以使信号可以实时传输。具体的:设备端在
开机时可以采用预设设置的账号进行账号登录,以使登录后设备端可以根据目标对象创建
订单创建指令,在设备端登录成功时和通信服务端建立Netty通信连接,并向通信服务端发
送PAuth登录认证,以通信服务端缓存当前设备端的设备信息。通信服务端确定设备端的
PAuth登录认证成功时,向当前设备端返回登录成功的反馈命令,该反馈命令中包含有当前
设备端的信号检测订单信息和发布服务端的信息。在设备端接收到通信服务端发送的反馈
命令时,创建订单创建指令,并给所有的订单创建指令订阅发布服务端的zeroMQ服务。
[0060] 网关端在开机时和通信服务端建立Netty通信连接,并向通信服务端发送GAuth登录认证,以通信服务端缓存当前网关端的网关信息。
[0061] 如图2所示,该信号实时监测方法的具体步骤如下:
[0062] S210、基于网关端获取信号检测端采集的目标对象的实时检测信号。
[0063] S220、基于设备端向业务服务端发送订单创建指令。
[0064] S230、基于业务服务端接收所述订单创建指令,根据所述订单创建指令创建目标对象的信号检测订单,所述信号检测订单中携带有网关信息和设备信息。
[0065] S240、基于通信服务端获取所述信号检测订单,并根据所述信号检测订单中的网关信息确定对应的网关端,并从所述对应的网关端分批次获取目标对象的实时检测信号,
并将所述实时检测信号发送至Kafka平台进行存储。
[0066] S250、基于Kafka平台存储目标对象各批次的实时检测信号。
[0067] S260、基于发布服务端获取所述Kafka平台的实时检测信号,并根据所述实时检测信号的信号检测订单将读取的所述实时检测信号转发至对应的设备端。
[0068] S270、基于所述设备端将目标对象的订单创建指令发送至所述业务服务端,并接收所述发布服务端发送的实时检测信号,显示所述实时检测信号。
[0069] 本实施例的技术方案,设备端基于目标对象向业务服务端发送订单创建指令,业务服务端根据接收到的订单创建指令创建目标对象的信号检测订单,该信号检测订单中包
含有网关信息和设备信息;通信服务端基于从业务服务端获取到的信号检测订单中的网关
信息中对应的网关端,从该对应的网关端分批次获取信号检测端采集的目标对象的实时检
测信号,并将该实时检测信号基于通信服务端中的即时通讯服务快速将检测信号发送至
Kafka平台,以使Kafka平台存储目标对象各批次的实时检测信号;发布服务端获取Kafka平
台的实时检测信号,并根据所述实时检测信号的信号检测订单将读取的所述实时检测信号
转发至对应的设备端,基于所述设备端将目标对象的订单创建指令发送至所述业务服务
端,并接收所述发布服务端发送的实时检测信号,显示所述实时检测信号。本发明的技术方
案基于业务服务端建立目标对象对应的信号检测订单,基于该信号检测订单确定对应的网
关端,以实现准确采集目标对象的生理信号;基于通信服务端即时将采集到的检测信号发
送至Kafka平台进行顺序存放,以使发布服务端依次获取目标对象的检测信号,并且将检测
信号在对应的设备端进行实时显示,达到便于医生及时诊断治疗疾病的目的。
[0070] 在上述技术方案的基础上,该方法还包括:
[0071] 网关端还基于GChannel命令向所述通信服务端实时发送所述目标对象的实时检测信号。
[0072] 在上述技术方案的基础上,Kafka平台中存储的实时检测信号包括序列标识。
[0073] 在上述技术方案的基础上,该方法还包括:
[0074] 基于发布服务端按序从所述Kafka平台读取所述实时检测信号,并基于多线程网络库zeroMQ将所述实时检测信号传输至所述设备端进行显示。
[0075] 在上述技术方案的基础上,该方法还包括:
[0076] 基于设备端将接收到的实时检测信号进行数据整合,并将整合后的信号进行实时显示。
[0077] 在上述技术方案的基础上,该方法还包括:
[0078] 基于业务服务端根据接收到的所述设备端传输的订单变更指令对所述信号检测订单进行变更,得到信号检测变更订单,并将所述信号检测变更订单发送至所述通信服务
端;
[0079] 所述通信服务端将所述信号检测变更订单向所述网关端和设备端发送订单变更提示信息。
[0080] 在上述技术方案的基础上,该方法还包括:
[0081] 基于所述通信服务端监听所述至少一个设备端的第一心跳信息,根据所述第一心跳信息确定所述设备端与所述通信服务端的通信状态;
[0082] 以及监听所述至少一个网关端的第二心跳信息,根据所述第二心跳信息确定所述网关端与所述通信服务端的通信状态。
[0083] 在上述技术方案的基础上,所述业务服务端、通信服务端和发布服务端均包括至少两个子服务端,所述子服务端包括第一子服务端和至少一个第二子服务端;
[0084] 若所述业务服务端、所述通信服务端和所述发布服务端中任一项的第一子服务端发生宕机情况,则将所述第一子服务端的数据转至任一第二子服务器进行处理。
[0085] 在上述技术方案的基础上,所述系统还包括redis库;
[0086] 所述redis库分别与所述业务服务端、所述通信服务端和所述发布服务端通信连接,接收所述业务服务端、所述通信服务端和所述发布服务端分别发送的第三心跳信息,并
将各所述第三心跳信息进行广播;
[0087] 所述业务服务端、所述通信服务端和所述发布服务端分别建立对应的集群,所述集群用于存储订阅的服务端标识以及服务端标识对应的第三心跳信息;若根据所述第三心
跳信息确定任一服务端发生宕机情况,则向其余服务端发送宕机服务端的离线通知信息。
[0088] 本发明实施例所提供的信号实时监测端可执行本发明任意实施例所提供的信号实时监测方法,具备执行方法相应的功能模块和有益效果。
[0089] 值得注意的是,上述信号实时监测端的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另
外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
[0090] 本发明实施例还提供了一个优选实施例,在上述实施例的技术上,分别将上述信号实时监测系统中提供的各端口配置于本实施提供的信号实时监测系统中各设备和服务
器中。具体的如图3所示的信号实时监测系统,将至少一个信号检测端配置于传感器主机
中、将至少一个网关端配置于gateway中、将业务服务端配置于a服务器中、将通信服务端配
置于b服务器中、将发布服务端配置于c服务器中,将至少一个设备端配置于player中,且a
服务器、b服务器和c服务器与redis库通信连接。
[0091] 在本发明实施例中,a服务器用于提供业务功能webapi接口。b服务器用于与各终端进行通讯。gateway(网关端)和player(设备端)统称device(终端)。其中,gateway是一种
心电数据转发设备,用于把采集的心电数据实时传输给b服务器,player是一种心电数据显
示设备。c服务器用于向各player提供心电数据以供显示。
[0092] 在进行心电数据采集之前,需要先将各服务器进行启动,具体的,首先将本地服务器进行启动并初始化确定本地服务器的服务器类型,其中本地服务器为a服务器、b服务器
和c服务器中的任一种服务器。分别建立redis库与a服务器、b服务器和c服务器之间的通信
连接,并为a服务器、b服务器和c服务器分别建立a服务器、b服务器和c服务器对应的集群,
集群用于存储基于rides库订阅的各服务器的标识以及各服务器的标识对应的心跳信息。
redis库中包含有cache‑redis,用于实现c服务器缓存信号检查订单信息,以及实现b服务
器缓存网关信息(含网关在线情况)。redis库中还包含有mq‑redis,以实现为各服务器提供
订阅基础;mq‑redis还用于订阅心跳队列cluster‑heart,心跳队列用于实现使任一服务器
能收到其他服务器发来的心跳消息;mq‑redis还用于订阅业务队列{x}‑info:保证a服务
器、b服务器、c服务器可相互通信。本实施例提供的信号实时监测系统中还包括有至少两个
定时器。其中,定时器1用于在预设间隔时间内,通过负责订阅的redis(mq‑redis),使用队
列cluster‑heart,向集群(cluster)发出集群心跳消息(cluster‑heart‑info);定时器2用
于在预设间隔时间内,通过集群心跳消息(cluster‑heart‑info)检查集群(cluster)中的
每一个服务器是否在线,并根据集群心跳信息确定任一服务器发生宕机情况,则向其余服
务器发送宕机服务器的离线通知信息。
[0093] 在上述实施例的基础上,b服务器还可以用于注册集群命令OrderChange:保证b服务器能通知到连接的所有的player和gateway发出订单变更的通知,其中,订单变更包括订
单创建、修改和结束。b服务器还可以用于启动Netty服务,通过Netty服务注册设备断线事
件,用于监听连接的所有的player和gateway的离线情况,即相当于上述实施例中的于监听
至少一个设备端的第一心跳信息,根据第一心跳信息确定设备端与通信服务端的通信状
态;以及监听至少一个网关端的第二心跳信息,根据第二心跳信息确定网关端与通信服务
端的通信状态。b服务器还可以通过Netty服务注册各种设备事件的命令。例如,GAuth命令,
用于实现gateway的登录认证、GChannel命令,用于实现gateway发出心电数据。PAuth命令,
用于实现player的登录认证。HeartJump命令,用于实现监听各终端是否运行良好。b服务器
还用于初始化kafka平台的生产者模式,即使kafka平台可以获取心电数据。
[0094] 在上述实施例的基础上,c服务器还可以用于初始化kafka平台的消费者模式,即使kafka平台可以发送心电数据;c服务器还可以用于初始化zeroMQ发布者模式,即使c服务
器可以基于zeroMQ将心电数据发送至对应的player。
[0095] 基于上述实施例的基础,对本发明实施例中的gateway和player与通信服务端建立通信连接,以使信号可以实时传输。具体的:player在开机时可以采用预先设置的账号进
行账号登录,以使登录后player可以根据目标对象创建订单创建指令,在player登录成功
时和通信服务端建立Netty通信连接,并向通信服务端发送PAuth登录认证,以使通信服务
端缓存当前player的设备信息。通信服务端确定player的PAuth登录认证成功时,向当前
player返回登录成功的反馈命令,该反馈命令中包含有当前player的信号检测订单信息和
发布服务端的信息。在player接收到通信服务端发送的反馈命令时,创建订单创建指令,并
给所有的订单创建指令订阅发布服务端的zeroMQ服务。gateway在开机时和通信服务端建
立Netty通信连接,并向通信服务端发送GAuth登录认证,以使通信服务端缓存当前gateway
的网关信息。且在进行数据心电数据采集之前,预先建立传感器主机与gateway之间的通信
连接,以使传感器主机可以通过低功耗蓝牙等通讯方式将采集心电数据传输至gateway。
[0096] 在各服务器和设备均建立连接的情况下,基于gateway获取信号检测端采集的目标对象的实时检测信号;基于player向a服务器发送订单创建指令;基于a服务器接收订单
创建指令,根据订单创建指令创建目标对象的信号检测订单,信号检测订单中携带有网关
信息和设备信息;基于b服务器获取信号检测订单,并根据信号检测订单中的网关信息确定
对应的gateway,并从对应的gateway分批次获取目标对象的实时检测信号,并将实时检测
信号发送至Kafka平台进行存储;基于Kafka平台存储目标对象各批次的实时检测信号;基
于c服务器获取Kafka平台的实时检测信号,并根据实时检测信号的信号检测订单将读取的
实时检测信号转发至对应的player;基于player将目标对象的订单创建指令发送至业务服
务端,并接收发布服务端发送的实时检测信号,显示实时检测信号。
[0097] 实施例三
[0098] 图4为本发明实施例三提供的一种电子设备的结构示意图。图4示出了适于用来实现本发明实施方式的示例性电子设备12的框图。图4设备的电子设备12仅仅是一个示例,不
应对本发明实施例的功能和使用范围带来任何限制。
[0099] 如图4所示,电子设备12以通用计算电子设备的形式表现。电子设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件
(包括系统存储器28和处理单元16)的总线18。
[0100] 总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举
例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)
总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
[0101] 电子设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
[0102] 系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。电子设备12可以进一步包括其它可移动/不可移
动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可
移动的、非易失性磁介质(图4未显示 ,通常称为“硬盘驱动器”)。尽管图4中未示出,可以提
供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光
盘(例如CD‑ROM, DVD‑ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器
可以通过一个或者多个数据介质接口与总线18相连。系统存储器28可以包括至少一个程序
产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明
各实施例的功能。
[0103] 具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如系统存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块
以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42
通常执行本发明所描述的实施例中的功能和/或方法。
[0104] 电子设备12也可以与一个或多个外部设备14(例如键盘、指向设备、设备器24等)通信,还可与一个或者多个使得用户能与该电子设备12交互的设备通信,和/或与使得该电
子设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)
通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,电子设备12还可以通过网络适
配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)
通信。如图4所示,网络适配器20通过总线18与电子设备12的其它模块通信。应当明白,尽管
图4中未示出,可以结合电子设备12使用其它硬件和/或软件模块,包括但不限于:微代码、
设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储
系统等。
[0105] 处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及样本数据获取,例如实现本发实施例所提供的一种信号实时监测方法步骤,信号实时监测
方法包括:
[0106] 基于网关端获取信号检测端采集的目标对象的实时检测信号;
[0107] 基于设备端向业务服务端发送订单创建指令;
[0108] 基于业务服务端接收所述订单创建指令,根据所述订单创建指令创建目标对象的信号检测订单,所述信号检测订单中携带有网关信息和设备信息;
[0109] 基于通信服务端获取所述信号检测订单,并根据所述信号检测订单中的网关信息确定对应的网关端,并从所述对应的网关端分批次获取目标对象的实时检测信号,并将所
述实时检测信号发送至Kafka平台进行存储;
[0110] 基于Kafka平台存储目标对象各批次的实时检测信号;
[0111] 基于发布服务端获取所述Kafka平台的实时检测信号,并根据所述实时检测信号的信号检测订单将读取的所述实时检测信号转发至对应的设备端;
[0112] 基于所述设备端将目标对象的订单创建指令发送至所述业务服务端,并接收所述发布服务端发送的实时检测信号,显示所述实时检测信号。
[0113] 当然,本领域技术人员可以理解,处理器还可以实现本发明任意实施例所提供的样本数据获取方法的技术方案。
[0114] 实施例四
[0115] 本实施例四提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现例如实现本发实施例所提供的一种信号实时监测方法步骤,信号实时监
测方法包括:
[0116] 基于网关端获取信号检测端采集的目标对象的实时检测信号;
[0117] 基于设备端向业务服务端发送订单创建指令;
[0118] 基于业务服务端接收所述订单创建指令,根据所述订单创建指令创建目标对象的信号检测订单,所述信号检测订单中携带有网关信息和设备信息;
[0119] 基于通信服务端获取所述信号检测订单,并根据所述信号检测订单中的网关信息确定对应的网关端,并从所述对应的网关端分批次获取目标对象的实时检测信号,并将所
述实时检测信号发送至Kafka平台进行存储;
[0120] 基于Kafka平台存储目标对象各批次的实时检测信号;
[0121] 基于发布服务端获取所述Kafka平台的实时检测信号,并根据所述实时检测信号的信号检测订单将读取的所述实时检测信号转发至对应的设备端;
[0122] 基于所述设备端将目标对象的订单创建指令发送至所述业务服务端,并接收所述发布服务端发送的实时检测信号,显示所述实时检测信号。
[0123] 本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读
存储介质例如可以是但不限于:电、磁、光、电磁、红外线、或半导体的系统、端或器件,或者
任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或
多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可
擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD‑ROM)、光存
储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以
是任何包含或存储程序的有形介质,该程序可以被指令执行系统、端或者器件使用或者与
其结合使用。
[0124] 计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限
于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可
读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于
由指令执行系统、端或者器件使用或者与其结合使用的程序。
[0125] 计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
[0126] 可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、Smalltalk、C++,还
包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完
全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分
在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务端上执行。在涉
及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网
(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通
过因特网连接)。
[0127] 本领域普通技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算端来实现,它们可以集中在单个计算端上,或者分布在多个计算端所组成的网络上,可选
地,他们可以用计算机端可执行的程序代码来实现,从而可以将它们存储在存储端中由计
算端来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤
制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件的结合。
[0128] 注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、
重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行
了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还
可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。