一种服务数据发布方法及装置与流程

文档序号:12309763阅读:172来源:国知局
一种服务数据发布方法及装置与流程

本申请涉及数据生命周期感知技术,特别是关于一种服务数据发布方法及装置。



背景技术:

在多台机器的交互中,一台机器向另外一台机器发送了一个消息,如果发送消息的机器不存在,那么其发送的数据就失效了。举例说明,有一台机器提供卖苹果的服务,这台机器希望其他机器都知道它在卖苹果,于是它要把自己卖的产品,以及其连接信息告诉其他机器。那么当这台机器不卖苹果了,或者这台机器宕机了,卖不了苹果了,那么这台机器的所有卖苹果信息就要全部失效,通知出去的所有信息都要收回,不能让用户买苹果时再找到这台机器。

针对上述情况,现有技术中一般执行如下操作:

步骤1、对服务器a(服务提供方)的服务感兴趣的服务器有n台,该n台服务器需要向服务器a发送感兴趣的注册通知。

步骤2、服务器a要发布自己的服务时,可以依次通过下述步骤3至步骤6向n台感兴趣的机器进行服务的发布。

步骤3、服务器a准备提供用户数据。

步骤4、服务器a建立与n台服务器之间程序连接通道的连接。

步骤5、上述连接建立完成后,向n台服务器发送数据(包括服务器a的存活状态数据及服务器a提供的服务相关数据)。

步骤6、发送完数据后,断开程序连接通道的连接。

步骤7、每隔一设定时间段,服务器a依次重复执行步骤3至步骤6向n台感兴趣的机器发送存活状态通知;

步骤8、n台感兴趣的服务器编写处理服务器a发来的存活状态的程序;

步骤9、n台感兴趣的服务器编写服务相关数据的处理程序,在服务相关数据到达时,对服务相关数据进行缓存;

步骤10、当需要使用服务相关数据时,判断是否有服务器a发过来的存活状态,当服务器a处于存活状态时,这些数据可用,否则这批数据失效。

实现上述信息交互的过程中,发明人发现现有技术中至少存在如下问题:由于服务数据发布者直接通知服务订阅者(感兴趣的服务器),很多情况下服务数据发布者会一对多,在分布式场景下无可扩展能力,还可能引发服务数据发布者的发布服务功能和该服务器的其他功能相互影响,导致某些功能不可用。



技术实现要素:

本申请的一实施例提供一种服务数据发布方法,以保证数据传输的高效和低延迟性,保证通知的有效性,解决数据发布者压力过大的问题,保证系统的可靠性,该服务数据发布方法包括:

数据生命周期感知服务器群集接收服务订阅端发送的服务订阅注册请求,该服务订阅注册请求由所述数据生命周期感知服务器群集内的其中一台数据生命周期感知服务器进行处理,以生成订阅数据,并将所述订阅数据同步至所述数据生命周期感知服务器群集内的其余数据生命周期感知服务器上;

所述数据生命周期感知服务器群集接收服务提供端发送的服务数据及心跳数据,该服务数据及心跳数据由所述数据生命周期感知服务器群集内的其中一台数据生命周期感知服务器处理,以根据所述订阅数据将所述服务数据推送至对应的服务订阅端,并根据所述心跳数据确定所述服务数据的存活状态。

本申请的一实施例提供一种服务数据发布方法,以保证数据传输的高效和低延迟性,保证系统的可靠性,该服务数据发布方法包括:

建立与数据生命周期感知服务器群集内其中一个数据生命周期感知服务器之间复用通道,所述复用通道处于不关闭状态;

通过所述复用通道向所述数据生命周期感知服务器发送服务数据;

通过所述复用通道定时向所述数据生命周期感知服务器发送心跳数据,以使所述数据生命周期感知服务器根据服务订阅端的订阅情况通知相应的其他数据生命周期 感知服务器。

本申请的一实施例提供一种服务数据发布装置,以保证数据传输的高效和低延迟性,保证通知的有效性,解决数据发布者压力过大的问题,保证系统的可靠性,该服务数据发布装置包括:

请求处理单元,用于接收服务订阅端发送的服务订阅注册请求,该服务订阅注册请求由所述数据生命周期感知服务器群集内的其中一台数据生命周期感知服务器进行处理,以生成订阅数据,并将所述订阅数据同步至所述数据生命周期感知服务器群集内的其余数据生命周期感知服务器上;

数据处理单元,用于接收服务提供端发送的服务数据及心跳数据,该服务数据及心跳数据由所述数据生命周期感知服务器群集内的其中一台数据生命周期感知服务器处理,以根据所述订阅数据将所述服务数据推送至对应的服务订阅端,并根据所述心跳数据确定所述服务数据的存活状态。

本申请的一实施例提供一种服务数据发布装置,以保证数据传输的高效和低延迟性,保证系统的可靠性,该服务数据发布装置包括:

通道创建单元,用于建立与数据生命周期感知服务器群集内其中一个数据生命周期感知服务器之间复用通道,所述复用通道处于不关闭状态;

服务数据发送单元,通过所述复用通道向所述数据生命周期感知服务器发送服务数据;

心跳数据发送单元,用于通过所述复用通道定时向所述数据生命周期感知服务器发送心跳数据,以使所述数据生命周期感知服务器根据服务订阅端的订阅情况通知相应的其他数据生命周期感知服务器。

本申请实施例中,由于服务订阅端分散到多台数据生命周期感知服务器上,解决了服务提供端压力过大的问题。

通过将服务订阅端的订阅数据在多个数据生命周期感知服务器之间同步,可以保证服务的有效性。

由于本申请实施例采用通道持续连接不断开的方式,保证了数据传输的高效和低延迟性,节省了性能损耗。

服务提供端在服务不可用(服务数据失效,例如不再提供电子产品的销售服务)之前,可以通过上述复用通道向所述数据生命周期感知服务器发送失效命令,使得服 务订阅端能够在服务数据失效时及时获知。

附图说明

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

图1为本申请实施例的服务数据发布方法流程图;

图2为本申请实施例的应用场景示意图;

图3为本申请实施例的服务数据发布方法流程图;

图4为本申请一实施例的服务发布装置的结构示意图;

图5为本申请一实施例的服务发布装置的结构示意图;

图6为本申请一实施例的服务发布装置的结构示意图;

图7为本申请一实施例的服务发布装置的结构示意图;

图8为本申请一实施例的服务发布装置的结构示意图;

图9为本申请一实施例的服务发布装置的结构示意图;

图10为本申请一实施例的服务发布装置的结构示意图;

图11为本申请一实施例的服务发布装置的结构示意图。

具体实施方式

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

图1为本申请实施例的服务数据发布方法流程图,如图1所示,该服务数据发布方法包括:

s101:数据生命周期感知服务器群集接收服务订阅端发送的服务订阅注册请求,该服务订阅注册请求由所述数据生命周期感知服务器群集内的其中一台数据生命周 期感知服务器进行处理,以生成订阅数据,并将所述订阅数据同步至所述数据生命周期感知服务器群集内的其余数据生命周期感知服务器上;

s102:所述数据生命周期感知服务器群集接收服务提供端发送的服务数据及心跳数据,该服务数据及心跳数据由所述数据生命周期感知服务器群集内的其中一台数据生命周期感知服务器处理,以根据所述订阅数据将所述服务数据推送至对应的服务订阅端,并根据所述心跳数据确定所述服务数据的存活状态。

图1所示的服务数据发布方法的执行主体为数据生命周期感知服务器群集内的数据生命周期感知服务器。服务订阅端可以为移动终端(如手机、pda)或者服务器等,服务提供端也可以为移动终端(如手机、pda)或者服务器等。图2为本申请实施例的应用场景示意图,如图2所示,标号101及标号102为服务提供端,圆圈内的103、104及105为数据生命周期感知服务器群集内的数据生命周期感知服务器,106、107及108为服务订阅端。服务提供端101及服务提供端102与其中一台数据生命周期感知服务器连接,数据生命周期感知服务器103、数据生命周期感知服务器104及数据生命周期感知服务器105相互连接,服务订阅端106、服务订阅端107及服务订阅端108被分配至不同的数据生命周期感知服务器。

根据图1所示的流程可知,本申请实施例首先根据服务订阅端的服务订阅注册请求,该服务订阅注册请求由所述数据生命周期感知服务器群集内的其中一台数据生命周期感知服务器进行处理,由于服务订阅端分散到多台数据生命周期感知服务器上,解决了服务提供端压力过大的问题。数据生命周期感知服务器将订阅数据同步至数据生命周期感知服务器群集内的其余数据生命周期感知服务器上,可以保证服务的有效性。数据生命周期感知服务器群集的其中一台数据生命周期感知服务器接收到服务提供端发送的服务数据后,可以根据所述订阅数据将所述服务数据推送至对应的服务订阅端。还可以定期接收服务提供端发送的心跳数据,根据心跳数据可以确定服务数据的存活状态,可以感知服务数据的生命周期,实时进行生命周期的数据处理。

用户对某种服务感兴趣(如购买电子产品等),想要订阅某种服务,可以通过服务订阅端向数据生命周期感知服务器群集内发送服务订阅注册请求。

数据生命周期感知服务器群集在接收到服务订阅注册请求后,可以在数据生命周期感知服务器群集内自动为服务订阅端分配一台数据生命周期感知服务器,建立服务订阅端与该台数据生命周期感知服务器之间的连接。

数据生命周期感知服务器群集分配数据生命周期感知服务器的方法有很多,一实施例中,可以根据负载均衡策略将该服务订阅端分配至其中一台数据生命周期感知服务器。负载均衡策略有很多,例如可以根据ip地址对服务订阅端进行分配,本申请不再赘述。

服务订阅注册请求包含了服务数据的订阅信息,数据生命周期感知服务器可以根据该订阅信息生成订阅数据,并将订阅数据同步至数据生命周期感知服务器群集内的其余数据生命周期感知服务器上,订阅数据可以是一份订阅表。每台数据生命周期感知服务器将根据分配到其上的服务订阅端的所有订阅信息生成订阅表,然后同步到数据生命周期感知服务器群集内的其余数据生命周期感知服务器上,使得数据生命周期感知服务器群集内的每台数据生命周期感知服务器都知道每台服务订阅端订阅到数据。

服务提供端在向数据生命周期感知服务器群集发布服务数据前,需要向数据生命周期感知服务器群集发送连接请求,数据生命周期感知服务器群集为其分配(分配方法同服务订阅端)一台数据生命周期感知服务器供与服务提供端建立连接通道,该连接通道为复用通道。该连接通道建立过程简述如下:

1.服务提供端建立与数据生命周期感知服务器之间的连接通道;

2.服务提供端向数据生命周期感知服务器发送请求命令,该请求命令中包含了发送方的ip信息及端口信息等信息,同时服务提供端还需要将ip信息及端口信息等信息缓存。

3.数据生命周期感知服务器在接收到上述请求命令之后,会记录ip信息及端口信息等信息,同时处理请求命令的线程不关闭。数据生命周期感知服务器在向服务提供端发送信息时,也将通过上述连接通道进行信息发送。

通过上述连接通道,服务提供端就可以向对应的数据生命周期感知服务器发送各种数据,首先,服务提供端会向数据生命周期感知服务器发送服务数据,告知数据生命周期感知服务器其提供的服务,如电子产品的销售、图书的销售等。数据生命周期感知服务器在收到服务数据后,会根据订阅表将服务数据发送给至对应的一台或几台数据生命周期感知服务器。由于订阅表中记录了哪些服务订阅端订阅了该服务数据对应的服务,与服务提供端连接的数据生命周期感知服务器知道这些服务订阅端被分配至了一台或几台数据生命周期感知服务器上,所以与服务提供端连接的数据生命周期 感知服务器根据订阅表即可将服务数据发送给至对应的一台或几台数据生命周期感知服务器。

上述一台或几台数据生命周期感知服务器收到服务数据后,会将服务数据推送至与其连接的服务订阅端,同时还要记录数据推送的版本号,每条推送数据对应唯一的一个推送版本号,推送的情况(包括版本号等)需要在向数据生命周期感知服务器群集内进行同步。

数据生命周期感知服务器群集内的数据生命周期感知服务器上设有一个进程,根据该进程,可以定时查看数据推送情况,如果某台数据生命周期感知服务器宕机,没有进行相应的数据推送任务,那么可以将数据推送任务调度给数据生命周期感知服务器群集内的其他数据生命周期感知服务器。

通过上述连接通道,服务提供端还可以定期向与其连接数据生命周期感知服务器心跳数据,根据该心跳数据,数据生命周期感知服务器可以确定所述服务数据的存活状态,并将确定的存活状态告知数据生命周期感知服务器群集内其余数据生命周期感知服务器。

存活状态一般包括存活和不存活两种,若根据心跳数据确定服务数据存活状态为不存活,需要根据订阅数据通知对应的服务订阅端,服务订阅端可以获知该服务数据已经无效,不可用。

服务提供端在服务不可用(服务数据失效,例如不再提供电子产品的销售服务)之前,可以通过上述复用通道发送失效命令,数据生命周期感知服务器接收到服务提供端发送的服务数据失效命令后,可以根据订阅数据将服务数据失效命令告知对应的数据生命周期感知服务器,使该对应的数据生命周期感知服务器将服务数据失效命令告知对应的服务订阅端。

通过接收服务提供端的心跳数据,可以检测数据生命周期的变化轨迹,监控数据的变化。

另外,数据生命周期感知服务器还可以定时检查与其连接的服务提供端是否宕机,即判断与服务提供端是否断开连接,如果断开连接,需要根据订阅数据告知服务提供端的服务数据失效。

图3为本申请实施例的服务数据发布方法流程图,如图3所示,该服务数据发布方法包括:

s301:建立与数据生命周期感知服务器群集内其中一个数据生命周期感知服务器之间复用通道,所述复用通道处于不关闭状态;

s302:通过所述复用通道向所述数据生命周期感知服务器发送服务数据;

s303:通过所述复用通道定时向所述数据生命周期感知服务器发送心跳数据,以使所述数据生命周期感知服务器根据服务订阅端的订阅情况通知相应的其他数据生命周期感知服务器。

图3所示的服务数据发布方法的执行主体为服务提供端,服务提供端也可以为移动终端(如手机、pda)或者服务器等。

根据图1所示的流程可知,本申请实施例中,服务提供端在进行服务发布时,可以首先建立与数据生命周期感知服务器群集内其中一个数据生命周期感知服务器之间复用通道,然后通过复用通道向所述数据生命周期感知服务器发送服务数据及心跳数据,以使数据生命周期感知服务器根据服务订阅端的订阅情况通知相应的其他数据生命周期感知服务器。服务提供端不需要直接一对一的面对服务订阅者,使得在分布场景下具备扩展能力。通过向数据生命周期感知服务器发送心跳数据,可以检测数据生命周期的变化轨迹,监控数据的变化。

s301中,复用通道建立过程简述如下:

1.服务提供端建立与数据生命周期感知服务器之间的连接通道;

2.服务提供端向数据生命周期感知服务器发送请求命令,该请求命令中包含了发送方的ip信息及端口信息等信息,同时服务提供端还需要将ip信息及端口信息等信息存储起来。

3.数据生命周期感知服务器在接收到上述请求命令之后,会记录ip信息及端口信息等信息,由于记录了服务提供端的ip信息及端口信息等信息,线程没有关闭,数据生命周期感知服务器在向服务提供端发送信息时,也将通过上述连接通道进行信息发送。

由于本申请实施例采用通道持续连接不断开的方式,保证了数据传输的高效和低延迟性,节省了性能损耗。

服务提供端在服务不可用(服务数据失效,例如不再提供电子产品的销售服务)之前,可以通过上述复用通道向所述数据生命周期感知服务器发送失效命令,使得服务订阅端能够在服务数据失效时及时获知。

在服务提供端建立与数据生命周期感知服务器群集内其中一个数据生命周期感知服务器之间复用通道之前,需要先准备服务数据,以在建立复用通道之后立即将服务数据发送出去。

基于与图1所示的服务数据发布方法相同的发明构思,本申请实施例还提供了一种服务发布装置,如下面的实施例所述。由于该服务发布装置解决问题的原理与服务数据发布方法相似,因此该服务发布装置的实施可以参见服务数据发布方法的实施,重复之处不再赘述。

图4为本申请实施例的服务发布装置的结构示意图,如图4所示,该服务发布装置包括:请求处理单元401及数据处理单元402。

请求处理单元401用于接收服务订阅端发送的服务订阅注册请求,该服务订阅注册请求由所述数据生命周期感知服务器群集内的其中一台数据生命周期感知服务器进行处理,以生成订阅数据,并将所述订阅数据同步至所述数据生命周期感知服务器群集内的其余数据生命周期感知服务器上;请求处理单元401是服务发布装置中处理服务订阅请求的部分,可以是软件、硬件或二者的结合,例如可以是完成服务订阅请求处理功能的输入输出接口、处理芯片等元器件。

数据处理单元401用于接收服务提供端发送的服务数据及心跳数据,该服务数据及心跳数据由所述数据生命周期感知服务器群集内的其中一台数据生命周期感知服务器处理,以根据所述订阅数据将所述服务数据推送至对应的服务订阅端,并根据所述心跳数据确定所述服务数据的存活状态。数据处理单元402是服务发布装置中处理数据的部分,可以是软件、硬件或二者的结合,例如可以是完成数据处理功能的输入输出接口、处理芯片等元器件。

一实施例中,如图5所示,本申请实施例的服务发布装置还包括:数据发送单元501,用于根据所述订阅数据向数据生命周期感知服务器群集内其余数据生命周期感知服务器发送所述服务数据的存活状态和/或所述服务数据。数据发送单元501是服务发布装置中发送数据的部分,可以是软件、硬件或二者的结合,例如可以是完成数据发送功能的输入输出接口、处理芯片等元器件。

一实施例中,如图6所示,本申请实施例的服务发布装置还包括:失效告知单元601,当服务数据存活状态为不存活是,失效告知单元601用于根据订阅数据告知对应的服务订阅端。失效告知单元601是服务发布装置中发送数据的部分,可以是软件、 硬件或二者的结合,例如可以是完成数据告知功能的输入输出接口、处理芯片等元器件。

一实施例中,如图7所示,本申请实施例的服务发布装置还包括:版本号记录单元701,用于记录推送的所述服务数据的版本号,并同步至数据生命周期感知服务器群集内其余数据生命周期感知服务器。版本号记录单元701是服务发布装置中记录版本号的部分,可以是软件、硬件或二者的结合,例如可以是完成版本号记录功能的输入输出接口、处理芯片等元器件。

一实施例中,如图8所示,本申请实施例的服务发布装置还包括:失效命令告知单元801,用于接收所述服务提供端发送的服务数据失效命令,根据所述订阅数据将所述服务数据失效命令告知对应的数据生命周期感知服务器,使该对应的数据生命周期感知服务器将所述服务数据失效命令告知对应的服务订阅端。失效命令告知单元801是服务发布装置中告知服务数据失效的部分,可以是软件、硬件或二者的结合,例如可以是完成失效告知功能的输入输出接口、处理芯片等元器件。

一实施例中,如图9所示,本申请实施例的服务发布装置还包括:连接判断单元901,用于判断与服务提供端是否断开连接,如果是,根据所述订阅数据通知对应的服务订阅端(订阅该服务提供端提供的服务的服务订阅端),该服务提供端的服务数据失效。连接判断单元901是服务发布装置中判断与服务提供端的部分,可以是软件、硬件或二者的结合,例如可以是完成连接判断功能的输入输出接口、处理芯片等元器件。

本申请实施例中,由于服务订阅端分散到多台数据生命周期感知服务器上,解决了服务提供端压力过大的问题。通过将服务订阅端的订阅数据在多个数据生命周期感知服务器之间同步,可以保证服务的有效性。通过接收服务提供端的心跳数据,可以检测数据生命周期的变化轨迹,监控数据的变化。

基于与图3所示的服务数据发布方法相同的发明构思,本申请实施例还提供了一种服务发布装置,如下面的实施例所述。由于该服务发布装置解决问题的原理与服务数据发布方法相似,因此该服务发布装置的实施可以参见服务数据发布方法的实施,重复之处不再赘述。

图10为本申请实施例的服务发布装置的结构示意图,如图10所示,该服务发布装置包括:通道创建单元1001,服务数据发送单元1002及心跳数据发送单元103。

通道创建单元1001用于建立与数据生命周期感知服务器群集内其中一个数据生命周期感知服务器之间复用通道,所述复用通道处于不关闭状态;通道创建单元1001是服务发布装置中创建复用通道的部分,可以是软件、硬件或二者的结合,例如可以是完成通道创建功能的输入输出接口、处理芯片等元器件。

服务数据发送单元1002通过所述复用通道向所述数据生命周期感知服务器发送服务数据;服务数据发送单元1002是服务发布装置中发送服务数据的部分,可以是软件、硬件或二者的结合,例如可以是完成服务数据发送功能的输入输出接口、处理芯片等元器件。

心跳数据发送单元1003用于通过所述复用通道定时向所述数据生命周期感知服务器发送心跳数据,以使所述数据生命周期感知服务器根据服务订阅端的订阅情况通知相应的其他数据生命周期感知服务器。心跳数据发送单元1003是服务发布装置中发送心跳数据的部分,可以是软件、硬件或二者的结合,例如可以是完成心跳数据发送功能的输入输出接口、处理芯片等元器件。

一实施例中,如图11所示,本申请实施例的服务发布装置还包括:失效命令发送单元1101,用于向所述数据生命周期感知服务器发送服务数据失效命令。

本申请实施例采用通道持续连接不断开的方式,保证了数据传输的高效和低延迟性,节省了性能损耗。

服务提供端在服务不可用(服务数据失效,例如不再提供电子产品的销售服务)之前,可以通过上述复用通道向所述数据生命周期感知服务器发送失效命令,使得服务订阅端能够在服务数据失效时及时获知。

在服务提供端建立与数据生命周期感知服务器群集内其中一个数据生命周期感知服务器之间复用通道之前,需要先准备服务数据,以在建立复用通道之后立即将服务数据发送出去。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流 程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1