CN103209213A - 用于数据订阅的数据传输方法和系统 - Google Patents

用于数据订阅的数据传输方法和系统 Download PDF

Info

Publication number
CN103209213A
CN103209213A CN2013101014793A CN201310101479A CN103209213A CN 103209213 A CN103209213 A CN 103209213A CN 2013101014793 A CN2013101014793 A CN 2013101014793A CN 201310101479 A CN201310101479 A CN 201310101479A CN 103209213 A CN103209213 A CN 103209213A
Authority
CN
China
Prior art keywords
data
subscription
transmitted
server
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2013101014793A
Other languages
English (en)
Other versions
CN103209213B (zh
Inventor
吴友强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Shangke Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Shangke Information Technology Co Ltd
Priority to CN201310101479.3A priority Critical patent/CN103209213B/zh
Publication of CN103209213A publication Critical patent/CN103209213A/zh
Application granted granted Critical
Publication of CN103209213B publication Critical patent/CN103209213B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种用于数据订阅的数据传输方法,所述方法包括:接收用户输入的订阅信息;根据用户输入的订阅信息,确定数据接收方以及待转发数据;针对所述数据接收方,设置多个接收服务器;向至少一个可用的接收服务器发送所述待转发的数据。本发明还提供了一种用于数据订阅的数据传输系统,所述系统包括多个接收服务器,并且所述系统还包括:用户订阅信息输入模块、订阅信息解析模块、服务器设置模块、数据转发模块。本发明提供的数据传输方法和系统能够提供更多的接收服务器作为备选节点,当单台服务器出现故障时,能够通过将数据转发给其他可用的接收服务器来解决数据阻塞的问题。并且还可以实现数据传输的负载均衡。

Description

用于数据订阅的数据传输方法和系统
技术领域
本发明涉及数据传输技术,尤其涉及一种用于数据订阅的数据传输方法和系统。
背景技术
在传统的消息订阅技术中,信息的传输过程如下:当用户为实现某些信息的订阅而输入一条订阅请求后,例如,用户输入一条日志订阅信息后,所述日志订阅信息被传递给数据转发器,数据转发器将用户需要的日志数据直接发送到一台服务器,以便用户通过访问该服务器来获取日志信息。
但是,在出现大量数据需要转发时,如果接收地址是一个单一的服务器地址,当这台服务器出现故障时,数据的及时性会受到影响并且大量数据会被阻塞在转发数据处。
另外,如果全部数据都发送到一个服务器地址,由于单台服务器处理数据的能力有限,因此也会局限数据的处理效率。
发明内容
针对现有技术的缺陷,本发明的目的是提供一种能够解决数据订阅时单台服务器故障造成的性能瓶颈,或单台服务器处理数据能力有限问题的数据传输方法和系统。
本发明提供了一种用于数据订阅的数据传输方法,所述方法包括:a.接收用户输入的订阅信息;b.根据用户输入的订阅信息,确定数据接收方以及待转发数据;c.针对所述数据接收方,设置多个接收服务器;d.向至少一个可用的接收服务器发送所述待转发的数据。
在一种优选方案中,在步骤d中,向一个可用的接收服务器发送全部待转发数据。
在另一种优选方案中,在步骤d中,向所有可用的接收服务器平均地发送待转发数据。更优选地,当待转发数据的数据量大于预定值时,向所有可用的接收服务器平均地发送待转发的数据。
优选地,当用户输入的订阅数据传输模式信息为负载均衡订阅时,向所有可用的接收服务器平均地发送待转发的数据。
优选地,当用户输入的订阅数据传输模式信息为防止单点故障订阅时,向一个可用的接收服务器发送全部待转发的数据。
优选地,步骤c还包括:根据所述数据接收方和待转发数据的数据量,增加或减少接收服务器的个数。
本发明还提供了一种用于数据订阅的数据传输系统,所述系统包括多个接收服务器,并且所述系统还包括:用户订阅信息输入模块,用于接收用户输入的订阅信息;订阅信息解析模块,用于根据用户输入的订阅信息确定数据接收方以及待转发数据;服务器设置模块,用于针对所述数据接收方,设置多个接收服务器;数据转发模块,用于向至少一个可用的接收服务器发送所述待转发数据。
优选地,所述数据转发模块用于向一个可用的接收服务器发送全部待转发数据,或者向所有可用的接收服务器平均地发送待转发数据。
优选地,所述系统还包括订阅数据传输模式设置模块,用于接收用户输入的订阅数据传输模式信息,当订阅数据传输模式信息为负载均衡订阅时,向所有可用的接收服务器平均地发送待转发的数据;当订阅数据传输模式信息为防止单点故障订阅时,向一个可用的接收服务器发送全部待转发的数据。
优选地,所述服务器设置模块用于根据所述数据接收方和待转发数据的数据量,增加或减少接收服务器的个数。
相对现有技术,本发明提供的数据传输方法和系统能够提供更多的接收服务器作为备选节点,当单台服务器出现故障时,能够通过将数据转发给其他可用的接收服务器来解决数据阻塞的问题。
并且,在另一种优选技术方案中,还可以通过将数据分别发送到多台接收服务器,实现数据传输的负载均衡,提高了数据的处理效率。
附图说明
图1a是本发明一种优选实施方式的用于数据订阅的数据传输方法流程图;
图1b是本发明另一种优选实施方式的用于数据订阅的数据传输方法流程图;
图2是本发明一种优选实施方式的用于数据订阅的数据传输系统的原理框图;
图3是本发明一种优选实施方式的用于防止单点故障的数据传输系统的结构示意图;
图4是本发明一种优选实施方式的用于负载均衡的数据传输系统的结构示意图。
具体实施方式
图1a、1b是本发明用于数据订阅的数据传输方法流程图。其中:
在步骤101,接收用户输入的订阅信息。订阅信息可以通过相应的软件界面实现,例如显示在Web网页上的数据订阅器。订阅信息可以实施各种订阅服务时输入的信息,例如,日志数据订阅请求。
在步骤102,根据用户输入的订阅信息,确定数据接收方以及待转发数据。当用户的订阅信息录入完成后,可以通过api调用等方式将传递所述订阅信息,将订阅信息中包含的数据接收方解析出来。并且,根据订阅服务的具体类型,确定需要转发的数据,例如,对于日志数据订阅请求,服务提供方需要将特定数量的日志数据转发至用户期望访问的网址。
在步骤103,针对所述数据接收方,设置多个接收服务器。在本发明中,由于对应于一个数据接收方设置多个接收服务器,因此在转发数据时,当一个接收服务器不可用时,可以切换到另一个接收服务器,从而保障了数据转发的安全、可靠。多个接收服务器中的每一个与数据转发模块之间均可以通过网络连接,所述网络可以是有线或无线网络。
在步骤104,向至少一个可用的接收服务器发送所述待转发的数据。该转发过程可以包括以下两种实施方式:(1)向一个可用的接收服务器发送待转发的数据;(2)向多个可用的接收服务器发送待转发的数据。
上述第一种优选实施方式,如图1a所示,可以应用于单点服务器故障的情况。例如:以前转发数据时,是由数据转发模块发送给接收服务器A,但当接收服务器A出现故障时,此次发送过程失败,则数据转发模块向另一个接收服务器B发送数据,如果接收服务器B可用,则可以向接收服务器B发送全部待转发数据。如果接收服务器B仍不可用,则继续向下一个接收服务器发送。当然,本领域技术人员可以理解,在另一个实例中:还可以在发送数据之前,先对各接收服务器的连接状态和工作状态进行检测,预先筛选出所有可用的接收服务器,然后再向其中一个接收服务器转发数据。
第二种优选实施方式,如图1b所示,可以应用于需要进行负载均衡的情况。例如:在有海量的数据需要转发的时候,一个接收服务器通常难以承载接收所有数据的任务,此时就需要根据实际应用将所有待转发的数据分别发送至各个接收服务器。优选地,向所有可用的接收服务器平均地发送待转发数据。负载均衡通常发生需要转发的数据量较大的情况下,即,当待转发数据的数据量大于预定值(例如1TB字节/天)时,则向多台可用的接收服务器发送待转发的数据。向各个接收服务器发送的数据量可以根据各服务器的数据接收能力进行配置,例如,如果各接收服务器的数据接收能力是相同的,那么优选地向所有可用的接收服务器平均地发送待转发的数据,例如各个接收服务器都配置成每次接收1000条数据;如果各个接收服务器的数据接收能力有差别,那么可以根据各服务器的数据接收能力按比例配置即可。
优选地,在步骤105,用户可以设置或修改订阅数据传输模式,所述订阅数据传输模式可以包括负载均衡订阅和防止单点故障订阅。当用户输入的订阅数据传输模式信息为负载均衡订阅时,向所有可用的接收服务器平均地发送待转发的数据。当用户输入的订阅数据传输模式信息为防止单点故障订阅时,向一个可用的接收服务器发送全部待转发的数据。订阅数据传输模式的设置和修改可以通过数据订阅器中的相应设置窗口来实现。本发明这种技术方案可以使数据传输更加灵活。例如:用户以前如果是按照防止单点故障模式传输数据,但是后面想改成负载均衡模式,那么只需要在数据订阅器中修改相应的订阅方式,那么数据转发模块就会按照新的订阅数据传输模式进行转发,由于多个接收服务器均对应于同一个数据接收方,因此这种切换不会对用户订阅的数据造成任何影响,即,不会造成丢失数据、数据延迟、数据重复等。
优选地,在步骤103中,不论是防止单点故障还是负载均衡的订阅模式,都可以增加和删除接收服务器。在优选实施方式中,可以根据所述数据接收方和待转发数据的数据量,增加或减少接收服务器的个数。当接收数据的服务器需要接收大量增加的数据时,就可以相应增加接收数据服务器的个数;反之,如果需要接收数据减少,那么可以减少数据的服务器个数,到达节约资源的目的。
本发明还相应地提供了一种用于数据订阅的数据传输系统,如图2所示,所述系统包括多台接收服务器300,并且所述系统还包括:用户订阅信息输入模块210、订阅信息解析模块220、服务器设置模块230、数据转发模块240。
用户订阅信息输入模块210用于接收用户输入的订阅信息。用户订阅信息输入模块210可以通过相应的软件界面实现,例如显示在Web网页上的数据订阅器。用户订阅信息输入模块210实现与用户之间的人机接口,并且具有与后续处理模块之间的数据接口。
订阅信息解析模块220用于根据用户输入的订阅信息确定数据接收方以及待转发数据。订阅信息解析模块220接收到用户订阅信息输入模块210传送的用户订阅信息,并且根据相应的信息格式或协议从所述订阅信息中获取数据接收方以及待转发数据。由于订阅服务种类的不同以及用户需求的差异,每条订阅信息都会有各自特定的数据接收方以及用户所要求的数据。例如,用户输入一条日志订阅信息后,该用户将通过访问某一网址来获取所需要的日志信息,因此,该数据接收方则是该网址,而待转发的数据则是所述日志信息。
服务器设置模块230用于针对所述数据接收方设置多个接收服务器。设置完成之后,数据接收方久具有了多个数据接收节点,在其中一个节点出现故障的情况下,可以通过启用其他备用节点来完成对转发数据的接收。而对于用户来说,因为多个接收服务器的地址仍对应于同一个数据接收方,因此接收服务器数量的增加并未影响用户的使用体验,他仍可以通过原有的操作方式来获取数据。
优选地,服务器设置模块230用于根据所述数据接收方和待转发数据的数据量,增加或减少接收服务器的个数。服务器设置模块230通过监测待转发数据的数据量,可以相应地增加或减少接收服务器的数量。当接收数据的服务器需要接收大量增加的数据时,就可以相应增加接收数据服务器的个数;反之,如果需要接收数据减少,那么可以减少数据的服务器个数,到达节约资源的目的。
数据转发模块240用于向至少一个可用的接收服务器发送所述待转发数据。确定了数据接收方和待转发的内容后,数据转发模块240即可开始数据转发工作,多个接收服务器300中的至少一个就成为发送数据的目标。数据转发模块240将待发送的数据(例如日志数据)从记录该数据的源服务器发送到接收服务器。
优选地,所述数据转发模块240用于向一个可用的接收服务器发送全部待转发数据,或者向所有可用的接收服务器平均地发送待转发数据。如图3、4所示,所述订阅信息解析模块220、服务器设置模块230、数据转发模块240集成在数据转发器集群中得以实现。所述订阅信息解析模块220、服务器设置模块230、数据转发模块240均可以由相应的软件控制模块实现。数据转发器集群中可以包含多个数据转发模块240,在转发数据时,可以随机选择其中的一个或多个数据转发模块,向接收服务器300发送数据。
在图3中,显示出防止单点故障的数据传输系统的结构示意图。在该系统中,接收服务器11作为接收数据的节点,其他接收服务器(包括接收服务器12、接收服务器13)则作为备用的接收节点,如果接收服务器1是可用的,则数据转发器集群转发的数据均由接收服务器1接收;如果接收服务器1是不可用的,则由接收服务器2或接收服务器3等某一个备用节点接收。
在图4中,显示出实现负载均衡的数据传输系统的结构示意图。在该系统中,接收服务器11、接收服务器12、接收服务器13等接收服务器均可同时接收数据,数据转发器集群转发给各接收服务器的数据可以根据各服务器的数据接收能力进行配置,例如,如果接收服务器11、接收服务器12、接收服务器13均是一样的,则数据转发器集群可以将转发的数据平均地发送给各接收服务器。
优选地,所述系统还包括订阅模式信息接收模块250,用于接收用户输入的订阅模式信息。订阅模式信息接收模块也可以由软件模块实现,且优选地与用户订阅信息输入模块210集成在一起。当用户实现的订阅模式信息为负载均衡订阅时,向所有可用的接收服务器平均地发送待转发的数据;当订阅模式信息为防止单点故障订阅时,向一个可用的接收服务器发送全部待转发的数据。
尽管本发明是通过上述的优选实施方式进行描述的,但是其实现形式并不局限于上述的实施方式。应该认识到在不脱离本发明主旨的情况下,本领域技术人员可以对本发明做出不同的变化和修改。

Claims (11)

1.一种用于数据订阅的数据传输方法,其特征在于,所述方法包括:
a.接收用户输入的订阅信息;
b.根据用户输入的订阅信息,确定数据接收方以及待转发数据;
c.针对所述数据接收方,设置多个接收服务器;
d.向至少一个可用的接收服务器发送所述待转发的数据。
2.根据权利要求1所述的方法,其特征在于,在步骤d中,向一个可用的接收服务器发送全部待转发数据。
3.根据权利要求1所述的方法,其特征在于,在步骤d中,向所有可用的接收服务器平均地发送待转发数据。
4.根据权利要求3所述的方法,其特征在于,在步骤d中,当待转发数据的数据量大于预定值时,向所有可用的接收服务器平均地发送待转发的数据。
5.根据权利要求3所述的方法,其特征在于,当用户输入的订阅数据传输模式信息为负载均衡订阅时,向所有可用的接收服务器平均地发送待转发的数据。
6.根据权利要求2所述的方法,其特征在于,当用户输入的订阅数据传输模式信息为防止单点故障订阅时,向一个可用的接收服务器发送全部待转发的数据。
7.根据权利要求1所述的方法,其特征在于,步骤c还包括:根据所述数据接收方和待转发数据的数据量,增加或减少接收服务器的个数。
8.一种用于数据订阅的数据传输系统,其特征在于,所述系统包括多个接收服务器,并且所述系统还包括:
用户订阅信息输入模块,用于接收用户输入的订阅信息;
订阅信息解析模块,用于根据用户输入的订阅信息确定数据接收方以及待转发数据;
服务器设置模块,用于针对所述数据接收方,设置多个接收服务器;
数据转发模块,用于向至少一个可用的接收服务器发送所述待转发数据。
9.根据权利要求8所述的系统,其特征在于,所述数据转发模块用于向一个可用的接收服务器发送全部待转发数据,或者向所有可用的接收服务器平均地发送待转发数据。
10.根据权利要求9所述的系统,其特征在于,所述系统还包括订阅数据传输模式设置模块,用于接收用户输入的订阅数据传输模式信息,当订阅数据传输模式信息为负载均衡订阅时,向所有可用的接收服务器平均地发送待转发的数据;当订阅数据传输模式信息为防止单点故障订阅时,向一个可用的接收服务器发送全部待转发的数据。
11.根据权利要求8所述的系统,其特征在于,所述服务器设置模块用于根据所述数据接收方和待转发数据的数据量,增加或减少接收服务器的个数。
CN201310101479.3A 2013-03-27 2013-03-27 用于数据订阅的数据传输方法和系统 Active CN103209213B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310101479.3A CN103209213B (zh) 2013-03-27 2013-03-27 用于数据订阅的数据传输方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310101479.3A CN103209213B (zh) 2013-03-27 2013-03-27 用于数据订阅的数据传输方法和系统

Publications (2)

Publication Number Publication Date
CN103209213A true CN103209213A (zh) 2013-07-17
CN103209213B CN103209213B (zh) 2016-08-10

Family

ID=48756297

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310101479.3A Active CN103209213B (zh) 2013-03-27 2013-03-27 用于数据订阅的数据传输方法和系统

Country Status (1)

Country Link
CN (1) CN103209213B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103701938A (zh) * 2014-01-14 2014-04-02 百度在线网络技术(北京)有限公司 数据转发方法及装置
CN104202242A (zh) * 2014-09-15 2014-12-10 北京智谷睿拓技术服务有限公司 控制网络确定方法及装置
CN110012083A (zh) * 2019-03-26 2019-07-12 青岛聚好联科技有限公司 一种数据传输方法、服务器及数据传输装置
CN112866418A (zh) * 2021-03-01 2021-05-28 紫光测控有限公司 一种变电站事件通信方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101674257A (zh) * 2008-09-10 2010-03-17 阿里巴巴集团控股有限公司 一种消息存储方法、装置及一种消息处理系统
CN102769668A (zh) * 2012-07-02 2012-11-07 上海交通大学 基于近似匹配的发布/订阅负载均衡方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101674257A (zh) * 2008-09-10 2010-03-17 阿里巴巴集团控股有限公司 一种消息存储方法、装置及一种消息处理系统
CN102769668A (zh) * 2012-07-02 2012-11-07 上海交通大学 基于近似匹配的发布/订阅负载均衡方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李耿,朱美正: "数据订阅分发技术的研究与实现", 《计算机工程与设计》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103701938A (zh) * 2014-01-14 2014-04-02 百度在线网络技术(北京)有限公司 数据转发方法及装置
CN103701938B (zh) * 2014-01-14 2016-08-31 百度在线网络技术(北京)有限公司 数据转发方法及装置
CN104202242A (zh) * 2014-09-15 2014-12-10 北京智谷睿拓技术服务有限公司 控制网络确定方法及装置
CN104202242B (zh) * 2014-09-15 2018-04-27 北京智谷睿拓技术服务有限公司 控制网络确定方法及装置
CN110012083A (zh) * 2019-03-26 2019-07-12 青岛聚好联科技有限公司 一种数据传输方法、服务器及数据传输装置
CN110012083B (zh) * 2019-03-26 2022-07-01 青岛聚好联科技有限公司 一种数据传输方法、服务器及数据传输装置
CN112866418A (zh) * 2021-03-01 2021-05-28 紫光测控有限公司 一种变电站事件通信方法及系统

Also Published As

Publication number Publication date
CN103209213B (zh) 2016-08-10

Similar Documents

Publication Publication Date Title
US8769025B2 (en) Cluster server of an instant messaging system and messaging method between clusters
US20150341189A1 (en) Base Station Deployment Configuration Method for Base Station, Base Station, and Server
EP2861000B1 (en) Method and device for transmitting downlink data
CN103518350A (zh) 群组通信的方法、系统、群组服务器和群组成员设备
CN104469694A (zh) 一种基于集群系统的通信方法及装置
CN103971687A (zh) 一种语音识别系统中的负载均衡实现方法和装置
CN103312528A (zh) 一种心跳消息发送方法及用户终端
CN110808873B (zh) 一种检测链路故障的方法及装置
CN103379184A (zh) 网络业务访问的方法及系统
CN103209213A (zh) 用于数据订阅的数据传输方法和系统
CN103312593B (zh) 一种消息分发系统及方法
CN103548315A (zh) 用于高性能低等待时间实时通知递送的方法和装置
WO2010145255A1 (zh) 网关确定方法、装置和消息发送方法、系统
CN103259740A (zh) 一种负载均衡处理方法及装置
CN101631127A (zh) 文件传输方法及客户端
CN101888610A (zh) 一种实现短消息业务的方法、系统和装置
CN104486187B (zh) 一种动态同步的can通讯设备和方法
EP2480009A1 (en) Multimedia message transmission method and apparatus thereof, and domain name server
CN101753561B (zh) 业务的集群处理方法及集群系统
CN109144919B (zh) 一种接口转接方法及装置
CN103533001A (zh) 基于http多重代理的通信方法和系统、中间代理服务器
CN106060164B (zh) 一种可伸缩的云服务器系统及其通信方法
KR20120128013A (ko) 망 부하 감소를 위한 푸시 서비스 제공 시스템 및 방법
CN114884805B (zh) 数据传输方法、装置、终端及存储介质
CN101888379A (zh) 网络电视多代理服务器动态链接的方法和网络电视系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant