信号实时监测方法、系统、电子设备以及存储介质转让专利
申请号 : CN202110265634.X
文献号 : CN112688835B
文献日 : 2021-07-02
发明人 : 高林明 , 范哲权 , 孙政
申请人 : 索思(苏州)医疗科技有限公司
摘要 :
权利要求 :
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平台的实时检测信号,并根据所述实时检测信号的信号检测订单将读取的所述实时检测信号转发至对应的设备端;
基于所述设备端将目标对象的订单创建指令发送至所述业务服务端,并接收所述发布服务端发送的实时检测信号,显示所述实时检测信号。
说明书 :
信号实时监测方法、系统、电子设备以及存储介质
技术领域
背景技术
随身携带的可穿戴式心电监测设备,设备的进化尤其是便携意味着能够更长期地随身监测
患者的心电信号,并且不会给患者带来额外的负担影响患者的正常生活作息,从而还原患
者在监测或诊断过程中的常规性活动,使检测更准确但是现有技术中的可穿戴式心电监测
设备的储存数据需要停止使用后送给医生进行分析,医生无法根据患者的心电图异常及时
针对性的做出治疗方案,无法及时解除患者的危险情况。
发明内容
检测订单中携带有网关信息和设备信息;
从所述对应的网关端分批次获取目标对象的实时检测信号,并将所述实时检测信号发送至
Kafka平台进行存储;
号转发至对应的设备端;
述实时检测信号发送至Kafka平台进行存储;
含有网关信息和设备信息;通信服务端基于从业务服务端获取到的信号检测订单中的网关
信息中对应的网关端,从该对应的网关端分批次获取信号检测端采集的目标对象的实时检
测信号,并将该实时检测信号基于通信服务端中的即时通讯服务快速将检测信号发送至
Kafka平台,以使Kafka平台存储目标对象各批次的实时检测信号;发布服务端获取Kafka平
台的实时检测信号,并根据所述实时检测信号的信号检测订单将读取的所述实时检测信号
转发至对应的设备端,基于所述设备端将目标对象的订单创建指令发送至所述业务服务
端,并接收所述发布服务端发送的实时检测信号,显示所述实时检测信号。本发明的技术方
案基于业务服务端建立目标对象对应的信号检测订单,基于该信号检测订单确定对应的网
关端,以实现准确采集目标对象的生理信号;基于通信服务端即时将采集到的检测信号发
送至Kafka平台进行顺序存放,以使发布服务端依次获取目标对象的检测信号,并且将检测
信号在对应的设备端进行实时显示,达到便于医生及时诊断治疗疾病的目的。
附图说明
附图,而不是全部的附图,对于本领域普通技术人员,在不付出创造性劳动的前提下,还可
以根据这些附图得到其他的附图。
具体实施方式
于描述,附图中仅示出了与本发明相关的部分而非全部结构。
个网关端110、业务服务端120、通信服务端130、Kafka平台140、发布服务端150和至少一个
设备端160,其中:
带有网关信息和设备信息。
的网关端110分批次获取目标对象的实时检测信号,并将实时检测信号发送至Kafka平台
140进行存储。
对应的设备端160。
的实时检测信号发送至网关端110。其中,检测信号可以是但不限于心电信号也可以是脑电
信号等的生理信号,本实施例对检测信号的信号类型不加以限制。
110预先注册的用于发送实时检测信号的命令。Netty通信连接可以为基于Netty服务中的
socket协议建立的通信通道,用于实现通信连接。具体的,网关端110可以基于与通信服务
端130建立的Netty通信连接以及预先注册的GChannel命令向通信服务端130发送目标对象
的实时检测信号。其中,发送的实时检测信号可以是实时检测信号的数据包,用于方便信号
快速传输。
基于目标对象的信号检测需求创建的订单创建指令,并发送至业务服务端120,业务服务端
120根据该订单创建指令创建信号检测订单。该信号检测订单中携带有用于显示检测信号
的设备信息和用于转发检测信号的网关信息,进一步的,信号检测订单还具有唯一订单号,
该订单号可以是根据订单中携带的设备信息和网关信息所生成的,也可以是根据目标对象
的唯一标识生成的,本实施例对订单号的生成方式不加以限制。
130;通信服务端130将信号检测变更订单向网关端110和设备端160发送订单变更提示信
息。
设备端160的输入信息对当前信号检测订单中携带的网关信息进行修改,也可以是对当前
信号检测订单中的目标对象的唯一标识进行修改,也可以是结束当前信号检测订单,当然
还可以是对当前信号检测订单进行其他变更,本实施例对变更的内容不加以限制。
订单向订单中携带得网关信息和设备信息分别对应的网关端110和设备端160发送订单变
更提示信息。
端150能够从Kafka平台140获取实时检测信号,并将获取到的实时检测信号在设备端160进
行实时显示。网关信息中包含有IP号和端口号,通信服务端130可以根据IP号和端口号确定
该信号检测订单中信号采集对应的网关端110。具体的,通信服务端130根据获取到的信号
检测订单中携带的网关信息确定对应的网关端110,并从该网关端110依次获取对应的信号
检测端依次采集的实时检测信号,并将实时检测信号发送至Kafka平台140进行存储。
第二心跳信息,根据第二心跳信息确定网关端110与通信服务端130的通信状态。
关端110、设备端160分别与通信服务端130的良好的通信状态。通信服务端130在接收到信
号检测订单或者信号检测变更订单时,根据订单中携带的网关信息和设备信息可以及时向
对应的网关端110和设备端160发送订单创建提示信息和订单变更提示信息。
定的唯一序列标识。具体的,根据实时检测信号存储至平台的序列标识进行顺序存储,以使
发布服务端150可以依照实时检测信号的序列标识顺序获取存储的实时检测信号,并发送
至设备端160进行信号显示。
160进行显示。具体的,基于线程网络库zeroMQ确定获取的当前的实时检测信号对应的信号
检测订单中携带的设备信息,并根据该设备信息的IP号和端口号确定该信号检测订单对应
的设备端160,以将获取到的实时检测信号发送至对应的设备端160进行信号显示。
收到实时检测信号是可以先对信号数据进行修复,例如对信号数据中丢失的数据包进行数
据包以及对数据包中丢失的数据帧进行补帧,对数据整合还可以包括将修复后的信号数据
按照采集数据时的时间戳进行顺序排布,以使数据可以顺序在设备端160进行显示。
端150分别发送的第三心跳信息,并将各第三心跳信息进行广播;业务服务端120、通信服务
端130和发布服务端150分别建立对应的集群,集群用于存储订阅的服务端标识以及服务端
标识对应的第三心跳信息;若根据第三心跳信息确定任一服务端发生宕机情况,则向其余
服务端发送宕机服务端的离线通知信息。其中,第三心跳信息包括业务服务端120、通信服
务端130和发布服务端150的心跳信息,所以第三心跳信息的数量为多个。
中任一服务端接收广播的其他服务端的第三心跳信息,并将接收到的第三心跳信息存储至
当前服务器预先建立的集群中。在预设间隔内根据接收到的第三心跳信息确定集群中的第
三心跳信息的服务端标识对应的服务端是否处于运行状态,若根据第三心跳信息确定任一
服务端发生宕机情况,则向其余服务端发送宕机服务端的离线通知信息,可以实现使当前
服务端及时了解其余各服务端的运行状态,避免任一服务端宕机导致的信号显示中断。
述通信服务端130和所述发布服务端150中任一项的第一子服务端发生宕机情况,则将所述
第一子服务端的数据转至任一第二子服务器进行处理。
订单中包含有网关信息和设备信息;通信服务端130基于从业务服务端120获取到的信号检
测订单中的网关信息中对应的网关端110,从该对应的网关端110分批次获取信号检测端采
集的目标对象的实时检测信号,并将该实时检测信号基于通信服务端130中的即时通讯服
务快速将检测信号发送至Kafka平台140,以使Kafka平台140存储目标对象各批次的实时检
测信号;发布服务端150获取Kafka平台140的实时检测信号,并根据所述实时检测信号的信
号检测订单将读取的所述实时检测信号转发至对应的设备端160,基于所述设备端160将目
标对象的订单创建指令发送至所述业务服务端120,并接收所述发布服务端150发送的实时
检测信号,显示所述实时检测信号。本发明的技术方案基于业务服务端120建立目标对象对
应的信号检测订单,基于该信号检测订单确定对应的网关端110,以实现准确采集目标对象
的生理信号;基于通信服务端130即时将采集到的检测信号发送至Kafka平台140进行顺序
存放,以使发布服务端150依次获取目标对象的检测信号,并且将检测信号在对应的设备端
160进行实时显示,达到便于医生及时诊断治疗疾病的目的。
细节内容,可以参考上述信号实时监测系统的实施例。
监测系统来执行,该系统可以由软件和/或硬件的方式来实现。
开机时可以采用预设设置的账号进行账号登录,以使登录后设备端可以根据目标对象创建
订单创建指令,在设备端登录成功时和通信服务端建立Netty通信连接,并向通信服务端发
送PAuth登录认证,以通信服务端缓存当前设备端的设备信息。通信服务端确定设备端的
PAuth登录认证成功时,向当前设备端返回登录成功的反馈命令,该反馈命令中包含有当前
设备端的信号检测订单信息和发布服务端的信息。在设备端接收到通信服务端发送的反馈
命令时,创建订单创建指令,并给所有的订单创建指令订阅发布服务端的zeroMQ服务。
并将所述实时检测信号发送至Kafka平台进行存储。
含有网关信息和设备信息;通信服务端基于从业务服务端获取到的信号检测订单中的网关
信息中对应的网关端,从该对应的网关端分批次获取信号检测端采集的目标对象的实时检
测信号,并将该实时检测信号基于通信服务端中的即时通讯服务快速将检测信号发送至
Kafka平台,以使Kafka平台存储目标对象各批次的实时检测信号;发布服务端获取Kafka平
台的实时检测信号,并根据所述实时检测信号的信号检测订单将读取的所述实时检测信号
转发至对应的设备端,基于所述设备端将目标对象的订单创建指令发送至所述业务服务
端,并接收所述发布服务端发送的实时检测信号,显示所述实时检测信号。本发明的技术方
案基于业务服务端建立目标对象对应的信号检测订单,基于该信号检测订单确定对应的网
关端,以实现准确采集目标对象的生理信号;基于通信服务端即时将采集到的检测信号发
送至Kafka平台进行顺序存放,以使发布服务端依次获取目标对象的检测信号,并且将检测
信号在对应的设备端进行实时显示,达到便于医生及时诊断治疗疾病的目的。
端;
将各所述第三心跳信息进行广播;
跳信息确定任一服务端发生宕机情况,则向其余服务端发送宕机服务端的离线通知信息。
外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
器中。具体的如图3所示的信号实时监测系统,将至少一个信号检测端配置于传感器主机
中、将至少一个网关端配置于gateway中、将业务服务端配置于a服务器中、将通信服务端配
置于b服务器中、将发布服务端配置于c服务器中,将至少一个设备端配置于player中,且a
服务器、b服务器和c服务器与redis库通信连接。
心电数据转发设备,用于把采集的心电数据实时传输给b服务器,player是一种心电数据显
示设备。c服务器用于向各player提供心电数据以供显示。
和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)中的
每一个服务器是否在线,并根据集群心跳信息确定任一服务器发生宕机情况,则向其余服
务器发送宕机服务器的离线通知信息。
单创建、修改和结束。b服务器还可以用于启动Netty服务,通过Netty服务注册设备断线事
件,用于监听连接的所有的player和gateway的离线情况,即相当于上述实施例中的于监听
至少一个设备端的第一心跳信息,根据第一心跳信息确定设备端与通信服务端的通信状
态;以及监听至少一个网关端的第二心跳信息,根据第二心跳信息确定网关端与通信服务
端的通信状态。b服务器还可以通过Netty服务注册各种设备事件的命令。例如,GAuth命令,
用于实现gateway的登录认证、GChannel命令,用于实现gateway发出心电数据。PAuth命令,
用于实现player的登录认证。HeartJump命令,用于实现监听各终端是否运行良好。b服务器
还用于初始化kafka平台的生产者模式,即使kafka平台可以获取心电数据。
器可以基于zeroMQ将心电数据发送至对应的player。
行账号登录,以使登录后player可以根据目标对象创建订单创建指令,在player登录成功
时和通信服务端建立Netty通信连接,并向通信服务端发送PAuth登录认证,以使通信服务
端缓存当前player的设备信息。通信服务端确定player的PAuth登录认证成功时,向当前
player返回登录成功的反馈命令,该反馈命令中包含有当前player的信号检测订单信息和
发布服务端的信息。在player接收到通信服务端发送的反馈命令时,创建订单创建指令,并
给所有的订单创建指令订阅发布服务端的zeroMQ服务。gateway在开机时和通信服务端建
立Netty通信连接,并向通信服务端发送GAuth登录认证,以使通信服务端缓存当前gateway
的网关信息。且在进行数据心电数据采集之前,预先建立传感器主机与gateway之间的通信
连接,以使传感器主机可以通过低功耗蓝牙等通讯方式将采集心电数据传输至gateway。
创建指令,根据订单创建指令创建目标对象的信号检测订单,信号检测订单中携带有网关
信息和设备信息;基于b服务器获取信号检测订单,并根据信号检测订单中的网关信息确定
对应的gateway,并从对应的gateway分批次获取目标对象的实时检测信号,并将实时检测
信号发送至Kafka平台进行存储;基于Kafka平台存储目标对象各批次的实时检测信号;基
于c服务器获取Kafka平台的实时检测信号,并根据实时检测信号的信号检测订单将读取的
实时检测信号转发至对应的player;基于player将目标对象的订单创建指令发送至业务服
务端,并接收发布服务端发送的实时检测信号,显示实时检测信号。
应对本发明实施例的功能和使用范围带来任何限制。
(包括系统存储器28和处理单元16)的总线18。
例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)
总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可
移动的、非易失性磁介质(图4未显示 ,通常称为“硬盘驱动器”)。尽管图4中未示出,可以提
供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光
盘(例如CD‑ROM, DVD‑ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器
可以通过一个或者多个数据介质接口与总线18相连。系统存储器28可以包括至少一个程序
产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明
各实施例的功能。
以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42
通常执行本发明所描述的实施例中的功能和/或方法。
子设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)
通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,电子设备12还可以通过网络适
配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)
通信。如图4所示,网络适配器20通过总线18与电子设备12的其它模块通信。应当明白,尽管
图4中未示出,可以结合电子设备12使用其它硬件和/或软件模块,包括但不限于:微代码、
设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储
系统等。
方法包括:
述实时检测信号发送至Kafka平台进行存储;
测方法包括:
述实时检测信号发送至Kafka平台进行存储;
存储介质例如可以是但不限于:电、磁、光、电磁、红外线、或半导体的系统、端或器件,或者
任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或
多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可
擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD‑ROM)、光存
储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以
是任何包含或存储程序的有形介质,该程序可以被指令执行系统、端或者器件使用或者与
其结合使用。
于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可
读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于
由指令执行系统、端或者器件使用或者与其结合使用的程序。
包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完
全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分
在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务端上执行。在涉
及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网
(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通
过因特网连接)。
地,他们可以用计算机端可执行的程序代码来实现,从而可以将它们存储在存储端中由计
算端来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤
制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件的结合。
重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行
了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还
可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。