CN103581250A - 数据处理、发布、获取方法及*** - Google Patents
数据处理、发布、获取方法及*** Download PDFInfo
- Publication number
- CN103581250A CN103581250A CN201210270123.8A CN201210270123A CN103581250A CN 103581250 A CN103581250 A CN 103581250A CN 201210270123 A CN201210270123 A CN 201210270123A CN 103581250 A CN103581250 A CN 103581250A
- Authority
- CN
- China
- Prior art keywords
- data
- matching way
- mailbox
- access layer
- real
- 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
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及一种数据处理、发布、获取方法及***,所述数据处理方法包括:发布端将从一数据产生端实时抽取的数据推送至接入层;接入层根据所述第一匹配方式从所述实时抽取的数据中获取第一筛选数据并存储入对应的第一邮箱中;分发层根据第二匹配方式和预设的通道方式从所述第一邮箱中获取第二筛选数据并存储入对应的第二邮箱中;所述订阅端根据第二匹配方式和预设的通道方式从对应的第二邮箱中获取第二筛选数据,以Pub/Sub模式的分布式技术架构整个服务,发布端和订阅端可通过灵活的主题订阅发布机制进行关联,发布端、订阅端、分发层和接入层的节点之间高度解耦,仅通过邮箱进行耦合,所有的交互都在“邮箱”中进行,实现数据按不同主题进行一对多批量分发。
Description
技术领域
本发明涉及一种数据处理、发布、获取方法及数据处理***。
背景技术
目前,盛大游戏拥有像AION、龙之谷、星辰变、传奇、传世、魔界2等诸多款游戏,这些游戏每天都会产生大量的动态数据和静态数据。根据目前的不完全统计,星辰变每天能够产生17种以上达到2000万的游戏动态数据,龙之谷每天能够产生11种以上的多达6000万游戏动态数据;每款游戏每天产生的静态数据少则几十兆,甚至达到几百兆之多。
盛大游戏的游戏服务器一般也部署在全国的很多个IDC机房,而开放平台的服务器是采用集中式部署,由于复杂的网络环境以及庞大的数据量,如何能够将这些数据能够实时的提供给开放平台的APP应用,一直是一个难题。针对这些数据,现有技术有些采用了T+1的方式提供数据,也有些采用T+2的方式提供的数据,然后对于一些要求实时或者准实时的应用来说,这种T+1的方式或T+2的方式已经失去了意义。
盛大游戏的动态数据的发布目前采用的是由动态抽取程序抽取数据以后通过一个网站api接口推送到Redis***中。由于Redis***采用内存的方式对数据进行缓存,在海量数据的情况下,仅仅采用内存无法满足需求,在启用VM(virtual memory)的情况下,大量的请求导致数据在内存和磁盘之间大量的换入换出,从而导致性能急剧下降和服务不可用。对于不断增长的数据量,如果一味的扩展内存以满足业务的需求,只能导致成本的不断增长。
对于静态的数据,目前则采用采集程序将静态数据全量导出到CSV文件中,然后通过FTP工具将数据上传到数据中心,再通过脚本将该数据全量导入到数据库中。但这种方法存在以下几个弊端:
1、所有的静态数据采用T+1甚至T+2的方式提供,无法保证实时性要求;
2、提供的是全量数据,大量重复的数据导致网络带宽的浪费和大量的人工成本;
3、对于海量的数据这种情况,整个项目中将无法沿用原有的处理方法进行实施。
发明内容
本发明的目的在于提供一种数据处理、数据发布、数据获取方法及数据处理、数据发布、数据获取***,能够以Pub(发布)/Sub(订阅)模式的分布式技术架构整个服务,发布端和订阅端可通过灵活的主题订阅发布机制进行关联,发布端、订阅端、分发层和接入层的节点之间高度解耦,仅通过邮箱进行耦合,所有的交互都在“邮箱”中进行,可按照多级匹配规则如多级正则匹配规则来支持复杂多样的业务需求,将数据投递到所述第二邮箱中供订阅端获取,订阅端以预设的通道方式从所述第二邮箱中拉取数据,实现主题一对多批量分发。
为解决上述问题,本发明提供一种数据处理方法,包括:
发布端将从一数据产生端实时抽取的数据推送至接入层;
订阅端设置第二匹配方式;
分发层获取所述第二匹配方式,并根据所述第二匹配方式生成第一匹配方式;
接入层根据所述第一匹配方式从所述实时抽取的数据中获取第一筛选数据并存储入对应的第一邮箱中;
分发层根据所述第二匹配方式和预设的通道方式从所述第一邮箱中获取第二筛选数据并存储入对应的第二邮箱中;
所述订阅端根据所述第二匹配方式和预设的通道方式从对应的第二邮箱中获取第二筛选数据。
进一步的,在上述方法中,所述接入层前置有一负载均衡设备。
进一步的,在上述方法中,所述发布端、订阅端、分发层和接入层中的一种或多种分别支持多进程横向扩展。
进一步的,在上述方法中,所述发布端、订阅端、分发层和接入层中的一种或多种分别支持多节点横向扩展。
进一步的,在上述方法中,所述发布端分布式部署。
进一步的,在上述方法中,所述接入层集中式部署。
进一步的,在上述方法中,所述分发层和/或订阅端分布式或集中式部署。
进一步的,在上述方法中,所述数据产生端包括游戏服务器。
进一步的,在上述方法中,所述实时抽取的数据包括动态数据和静态数据。
进一步的,在上述方法中,发布端将从一数据产生端实时抽取的数据推送至接入层的步骤中,所述静态数据为新增的和更新的静态数据。
进一步的,在上述方法中,发布端将从一数据产生端实时抽取的数据推送至接入层的步骤中,所述动态数据为上一次更新动态数据的时间点后产生的动态数据。
进一步的,在上述方法中,所述实时抽取的数据包括具体内容、数据发布者、服务类别和主题类型的信息。
进一步的,在上述方法中,所述第一匹配方式或第二匹配方式包括限定数据的具体内容、限定数据发布者、限定服务类别和限定主题类型中的一种或任意组合。
进一步的,在上述方法中,所述通道方式包括推方式、拉方式和订阅方式中的一种或任意组合。
本发明还提供一种数据发布方法,包括:
发布端将从一数据产生端实时抽取的数据推送至接入层;
分发层从一订阅端获取第二匹配方式,并根据所述第二匹配方式生成第一匹配方式;
接入层根据所述第一匹配方式从所述实时抽取的数据中获取第一筛选数据并存储入对应的第一邮箱中;
分发层根据所述第二匹配方式和预设的通道方式从所述第一邮箱中获取第二筛选数据并存储入对应的第二邮箱中。
进一步的,在上述方法中,所述接入层前置有一负载均衡设备。
进一步的,在上述方法中,所述发布端、分发层和接入层中的一种或多种分别支持多进程横向扩展。
进一步的,在上述方法中,所述发布端、分发层和接入层中的一种或多种分别支持多节点横向扩展。
进一步的,在上述方法中,所述发布端分布式部署。
进一步的,在上述方法中,所述接入层集中式部署。
进一步的,在上述方法中,所述分发层分布式或集中式部署。
进一步的,在上述方法中,所述实时抽取的数据包括动态数据和静态数据。
进一步的,在上述方法中,发布端将从一数据产生端实时抽取的数据推送至接入层的步骤中,所述静态数据为新增的和更新的静态数据。
进一步的,在上述方法中,发布端将从一数据产生端实时抽取的数据推送至接入层的步骤中,所述动态数据为上一次更新动态数据的时间点后产生的动态数据。
进一步的,在上述方法中,所述实时抽取的数据包括具体内容、数据发布者、服务类别和主题类型的信息。
进一步的,在上述方法中,所述第一匹配方式或第二匹配方式包括限定数据的具体内容、限定数据发布者、限定服务类别和限定主题类型中的一种或任意组合。
进一步的,在上述方法中,所述通道方式包括推方式、拉方式和订阅方式中的一种或任意组合。
本发明阿还提供一种数据获取方法,包括:
订阅端设置第二匹配方式;
所述订阅端根据所述第二匹配方式和预设的通道方式从一第二邮箱中获取第二筛选数据。
进一步的,在上述方法中,所述订阅端支持多进程横向扩展。
进一步的,在上述方法中,所述订阅端支持多节点横向扩展。
进一步的,在上述方法中,所述订阅端分布式或集中式部署。
进一步的,在上述方法中,所述第二匹配方式包括限定数据的具体内容、限定数据发布者、限定服务类别和限定主题类型中的一种或任意组合。
进一步的,在上述方法中,所述通道方式包括推方式、拉方式和订阅方式中的一种或任意组合。
根据本发明的另一面,提供一种数据处理***,包括:
发布端,用于将从一数据产生端实时抽取的数据推送至接入层;
订阅端,用于设置第二匹配方式,并根据所述第二匹配方式和预设的通道方式从对应的第二邮箱中获取第二筛选数据;
分发层,用于获取所述第二匹配方式,并根据所述第二匹配方式生成第一匹配方式,根据所述第二匹配方式和预设的通道方式从对应的第一邮箱中获取第二筛选数据并存储入所述第二邮箱中;
接入层,用于根据所述第一匹配方式从所述实时抽取的数据中获取第一筛选数据并存储入所述第一邮箱中。
进一步的,在上述***中,所述接入层前置有一负载均衡设备。
进一步的,在上述***中,所述发布端、订阅端、分发层和接入层中的一种或多种分别支持多进程横向扩展。
进一步的,在上述***中,所述发布端、订阅端、分发层和接入层中的一种或多种分别支持多节点横向扩展。
进一步的,在上述***中,所述发布端分布式部署。
进一步的,在上述***中,所述接入层集中式部署。
进一步的,在上述***中,所述分发层和/或订阅端分布式或集中式部署。
进一步的,在上述***中,所述实时抽取的数据包括动态数据和静态数据。
进一步的,在上述***中,所述静态数据为新增的和更新的静态数据。
进一步的,在上述***中,所述动态数据为上一次更新动态数据的时间点后产生的动态数据。
进一步的,在上述***中,所述实时抽取的数据包括具体内容、数据发布者、服务类别和主题类型的信息。
进一步的,在上述***中,所述第一匹配方式或第二匹配方式包括限定数据的具体内容、限定数据发布者、限定服务类别和限定主题类型中的一种或任意组合。
进一步的,在上述***中,所述通道方式包括推方式、拉方式和订阅方式中的一种或任意组合。
本发明还提供一种数据发布***,包括:
发布端,用于将从一数据产生端实时抽取的数据推送至接入层;
分发层,用于获取第二匹配方式,并根据所述第二匹配方式生成第一匹配方式,根据所述第二匹配方式和预设的通道方式从对应的第一邮箱中获取第二筛选数据并存储入对应的第二邮箱中;
接入层,用于根据所述第一匹配方式从所述实时抽取的数据中获取第一筛选数据并存储入所述第一邮箱中。
进一步的,在上述***中,所述接入层前置有一负载均衡设备。
进一步的,在上述***中,所述发布端、分发层和接入层中的一种或多种分别支持多进程横向扩展。
进一步的,在上述***中,所述发布端、分发层和接入层中的一种或多种分别支持多节点横向扩展。
进一步的,在上述***中,所述发布端分布式部署。
进一步的,在上述***中,所述接入层集中式部署。
进一步的,在上述***中,所述分发层分布式或集中式部署。
进一步的,在上述***中,所述实时抽取的数据包括动态数据和静态数据。
进一步的,在上述***中,所述静态数据为新增的和更新的静态数据。
进一步的,在上述***中,所述动态数据为上一次更新动态数据的时间点后产生的动态数据。
进一步的,在上述***中,所述实时抽取的数据包括具体内容、数据发布者、服务类别和主题类型的信息。
进一步的,在上述***中,所述第一匹配方式或第二匹配方式包括限定数据的具体内容、限定数据发布者、限定服务类别和限定主题类型中的一种或任意组合。
进一步的,在上述***中,所述通道方式包括推方式、拉方式和订阅方式中的一种或任意组合。
本发明还提供一种数据获取***,包括:
订阅端,用于设置第二匹配方式,并将所述第二匹配方式发送至一分发层,并根据所述第二匹配方式和预设的通道方式从分发层的一第二邮箱中获取第二筛选数据。
进一步的,在上述***中,所述订阅端支持多进程横向扩展或多节点横向扩展。
进一步的,在上述***中,所述订阅端分布式或集中式部署。
进一步的,在上述***中,所述第二匹配方式包括限定数据的具体内容、限定数据发布者、限定服务类别和限定主题类型中的一种或任意组合。
进一步的,在上述***中,所述通道方式包括推方式、拉方式和订阅方式中的一种或任意组合。
与现有技术相比,本发明具有如下优点:
1)通过发布端将从一数据产生端实时抽取的数据推送至接入层,订阅端设置第二匹配方式,分发层获取所述第二匹配方式,并根据所述第二匹配方式生成第一匹配方式,接入层根据所述第一匹配方式从所述实时抽取的数据中获取第一筛选数据并存储入对应的第一邮箱中,分发层根据所述第二匹配方式和预设的通道方式从所述第一邮箱中获取第二筛选数据并存储入对应的第二邮箱中,所述订阅端根据所述第二匹配方式和预设的通道方式从对应的第二邮箱中获取第二筛选数据,可以Pub(发布)/Sub(订阅)模式的分布式技术架构整个服务,发布端和订阅端可通过灵活的主题订阅发布机制进行关联,发布端、订阅端、分发层和接入层的节点之间高度解耦,仅通过邮箱进行耦合,所有的交互都在“邮箱”中进行,可按照多级匹配规则如多级正则匹配规则来支持复杂多样的业务需求,将数据投递到所述第二邮箱中供订阅端获取,订阅端以预设的通道方式从所述第二邮箱中拉取数据,实现主题一对多批量分发;
2)通过所述发布端、订阅端、分发层和接入层中的一种或多种分别支持多进程或多节点横向扩展,所述发布端、订阅端、分发层和接入层可根据实际需要分别设置多个服务器,每个服务器的数据相对独立,突破海量数据在实时性处理上对内存的过多依赖,利用低成本高容量的硬盘去持久化数据,实现多个服务器服务于一个或者多个主题来实现负载均衡和业务的扩展,接入层服务器和分发层服务器存贮引擎得到优化,提高数据存储容量、数据安全性、数据处理的性能和实时性;
3)通过设置通道方式包括推方式、拉方式和订阅方式中的一种或任意组合,接入层与分发层之间、分发层与订阅端之间可以采用推、拉和订阅机制模式相结合的方式实现网络节点之间互联,可以根据网络环境的特点选择更为方便和可行的通道方式;
4)通过所述接入层前置有一负载均衡设备,所述接入层集中式部署,所述负载均衡设备可提供统一接入服务,所述接入层以中间件的模式集中部署,并通过前置负载均衡设备,提供灵活的横向扩展能力。
附图说明
图1是本发明实施例一的数据处理方法的流程图;
图2是本发明实施例二的数据发布方法的流程图;
图3是本发明实施例三的数据获取方法的流程图;
图4是本发明实施例四的数据处理***的模块示意图;
图5是本发明实施例四的数据处理***的网络结构示意图;
图6是实施例五的数据发布***的模块示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例一
如图1所示,本发明提供一种数据处理方法,包括:
步骤S11,发布端将从一数据产生端实时抽取的数据推送至接入层,其中,所述数据产生端包括游戏服务器。
具体的,为了能够将分布在不同地方的数据实时、准时的提供给需要特定数据的开放平台,可根据数据产生端的特点如每款游戏的特点定制一个数据的抽取程序,在数据抽取程序和数据产生端之间采用数据库进行数据交互,即数据库用于存储所述实时抽取的数据。
优选的,所述实时抽取的数据包括动态数据和静态数据,所有的动态数据和静态数据写入到数据库中,动态抽取程序会对所有指定的数据产生端如游戏指定区服的游戏动态和静态数据按照规则进行实时抽取,可以仅抽取新增的和更新的静态数据,也可仅抽取上一次更新动态数据的时间点后产生的动态数据,即对于动态数据而言,抽取程序在每次更新完毕以后,记录更新最近更新的时间,下一次更新都将从上次更新的时间点开始更新,这样发布端可只对增量静态数据和动态数据进行实时全量发布,大大的降低了静态数据和动态数据的数量。较佳的,所述实时抽取的数据包括具体内容、数据发布者、服务类别和主题类型的信息。
步骤S12,订阅端设置第二匹配方式,具体的,所述第二匹配方式可为一种订阅规则。
较佳的,可另外设置一管理端或接口以支持在线修改第二匹配方式如订阅规则并实时生效。
步骤S13,分发层获取所述第二匹配方式,并根据所述第二匹配方式生成第一匹配方式。
较佳的,所述第一匹配方式或第二匹配方式包括限定数据的具体内容、限定数据发布者、限定服务类别和限定主题类型中的一种或任意组合。
步骤S14,接入层根据所述第一匹配方式从所述实时抽取的数据中获取第一筛选数据并存储入对应的第一邮箱中,具体的,随着业务量的增加,当接入层整体负荷过高的时候,通过在接入层加入新的服务器来保证服务的质量,为了保证数据发布的实时性要求,接入层通常提供大容量硬盘、高性能和高带宽,所有发布的主题都能够首先被高效的保存到***的硬盘上,并随后通过分发层提供给订阅端。
优选的,所述接入层前置有一负载均衡设备,以提供统一接入服务,提供灵活的横向扩展能力,以满足整个***大容量、高稳定性和负载均衡的需求。
步骤S15,分发层根据所述第二匹配方式和预设的通道方式从所述第一邮箱中获取第二筛选数据并存储入对应的第二邮箱中。
具体的,所述分发层会向所述接入层订阅自己感兴趣的主题,第一匹配方式可为如下的订阅规则:
</config>上述订阅规则中,每个主题通过四个条件进行过滤,其中每个条件都支持正则表达式进行复杂匹配,以满足应用需求。其中,publisher用于限定数据由谁发布的;serviceid用于限制哪一类的服务,譬如可以采用以游戏名来指定;messagetype则用于限定主题的类型是什么,譬如登录、升级、加入公会等动态;content则对具体的数据进行限制。同时满足四个条件的主题将会保存到router配置项所定义的邮箱中。
同理,所述第二匹配方式也可按上述订阅规则设置。分发层会从第一邮箱中会被动接收或者主动拉取该第一邮箱中的第一筛选数据,并再次调用本地的主题订阅规则获取第二筛选数据并存储入对应的第二邮箱中,以进行主题的分发,这里支持一个或者多个服务器采用同一套订阅规则即可构成一个服务器组,以实现主题的集群服务。
步骤S16,所述订阅端根据所述第二匹配方式和预设的通道方式从对应的第二邮箱中获取第二筛选数据,这样接入层和分发层对发布端的数据进行规则匹配,并将筛选数据投递到相应的邮箱中,订阅端通过预定义的第二匹配方式如订阅规则获取自身关心的数据,并进行处理。
优选的,所述发布端、订阅端、分发层和接入层中的一种或多种分别支持多进程横向扩展,另外,所述发布端、订阅端、分发层和接入层中的一种或多种也可分别支持多节点横向扩展,单服务器可以突破海量数据在实时性处理上对内存的过多依赖,利用低成本高容量的硬盘去持久化数据,提供处理***的高性能和数据安全性,发布端、分发层、接入层和订阅端可支持根据数据量的大小加入更多的服务器的横向自由扩展方式来处理业务请求,保持在海量数据处理上的实时性要求,这里采用分布式技术,通过服务机器的横向扩展和灵活组网,通过多个服务器服务于一个或者多个主题来实现负载均衡和业务的扩展,接入层服务器和分发层服务器存贮引擎得到优化,提高数据存储容量、数据安全性、数据处理的性能和实时性,增加整个处理***的处理能力。
较佳的,发布端、分发层、接入层和订阅端可具有跨语言、跨平台、分布式、灵活组网的特性,通过对所述发布端分布式部署,对所述接入层集中式部署,对所述分发层和/或订阅端分布式或集中式部署,分发层可根据不同的主题来对海量主题进行筛选和分发。
发布端、接入层、分发层和订阅端的特点如下表所示:
较佳的,所述通道方式包括推方式、拉方式和订阅方式中的一种或任意组合,这样分发层和接入层之间、分发层和订阅端之间可以采用推、拉和订阅机制模式相结合的方式实现网络节点之间互联,可以根据网络环境的特点选择更为方便和可行的通道方式。
本实施例中,可以Pub(发布)/Sub(订阅)模式的分布式技术架构整个服务,发布端和订阅端可通过灵活的主题订阅发布机制进行关联,发布端、订阅端、分发层和接入层的节点之间高度解耦,仅通过邮箱进行耦合,所有的交互都在“邮箱”中进行,可按照多级匹配规则如多级正则匹配规则来支持复杂多样的业务需求,将数据投递到所述第二邮箱中供订阅端获取,订阅端以预设的通道方式从所述第二邮箱中拉取数据,实现主题一对多批量分发,发布端采用增量数据的全量发布,分发层和接入层根据匹配方式如订阅规进行主题的筛选,不符合任何匹配方式如订阅规则的数据将会被丢弃,从而保证接入层对所有的主题进行集中的控制和一级级分发。
另外,发布端、订阅端、分发层和接入层的节点之间高度解耦,仅通过邮箱进行耦合,所有的交互都在“邮箱”中进行,在高并发、高负荷且并不过多损伤性能的情况下提供了数据的持久化,提高节点之间互联的灵活性。
实施例二
如图2所示,本发明还提供一种数据发布方法,包括:
步骤S21,发布端将从一数据产生端实时抽取的数据推送至接入层,其中,所述数据产生端包括游戏服务器。
具体的,为了能够将分布在不同地方的数据实时、准时的提供给需要特定数据的开放平台,可根据数据产生端的特点如每款游戏的特点定制一个数据的抽取程序,在数据抽取程序和数据产生端之间采用数据库进行数据交互,即数据库用于存储所述实时抽取的数据。
优选的,所述实时抽取的数据包括动态数据和静态数据,所有的动态数据和静态数据写入到数据库中,动态抽取程序会对所有指定的数据产生端如游戏指定区服的游戏动态和静态数据按照规则进行实时抽取,其中,可仅抽取新增的和更新的静态数据,也可仅抽取上一次更新动态数据的时间点后产生的动态数据,即对于动态数据而言,抽取程序在每次更新完毕以后,记录更新最近更新的时间,下一次更新都将从上次更新的时间点开始更新,这样发布端可只对增量静态数据和动态数据进行实时全量发布,大大的降低了静态数据和动态数据的数量。较佳的,所述实时抽取的数据包括具体内容、数据发布者、服务类别和主题类型的信息。
步骤S22,分发层从一订阅端获取第二匹配方式,并根据所述第二匹配方式生成第一匹配方式。
较佳的,可另外设置一管理端或接口以支持在线修改第二匹配方式如订阅规则并实时生效。
优选的,所述第一匹配方式或第二匹配方式包括限定数据的具体内容、限定数据发布者、限定服务类别和限定主题类型中的一种或任意组合。
步骤S23,接入层根据所述第一匹配方式从所述实时抽取的数据中获取第一筛选数据并存储入对应的第一邮箱中。具体的,随着业务量的增加,当接入层整体负荷过高的时候,通过在接入层加入新的服务器来保证服务的质量,为了保证数据发布的实时性要求,接入层通常提供大容量硬盘、高性能和高带宽,所有发布的主题都能够首先被高效的保存到***的硬盘上,并随后通过分发层提供给订阅端。
优选的,所述接入层前置有一负载均衡设备,以提供统一接入服务,提供灵活的横向扩展能力,以满足整个***大容量、高稳定性和负载均衡的需求。
步骤S24,分发层根据所述第二匹配方式和预设的通道方式从所述第一邮箱中获取第二筛选数据并存储入对应的第二邮箱中。
具体的,所述分发层会向所述接入层订阅自己感兴趣的主题,第一匹配方式可为如下的订阅规则:
</config>上述订阅规则中,每个主题通过四个条件进行过滤,其中每个条件都支持正则表达式进行复杂匹配,以满足应用需求。其中,publisher用于限定数据由谁发布的;serviceid用于限制哪一类的服务,譬如可以采用以游戏名来指定;messagetype则用于限定主题的类型是什么,譬如登录、升级、加入公会等动态;content则对具体的数据进行限制。同时满足四个条件的主题将会保存到router配置项所定义的邮箱中。
同理,所述第二匹配方式也可按上述订阅规则设置。分发层会从第一邮箱中会被动接收或者主动拉取该第一邮箱中的第一筛选数据,并再次调用本地的主题订阅规则获取第二筛选数据并存储入对应的第二邮箱中,以进行主题的分发,这里支持一个或者多个服务器采用同一套订阅规则即可构成一个服务器组,以实现主题的集群服务。
较佳的,所述发布端、分发层和接入层中的一种或多种分别支持多进程横向扩展,另外,所述发布端、分发层和接入层中的一种或多种也可分别支持多节点横向扩展,单服务器可以突破海量数据在实时性处理上对内存的过多依赖,利用低成本高容量的硬盘去持久化数据,提供处理***的高性能和数据安全性,发布端、分发层、接入层和订阅端可支持根据数据量的大小加入更多的服务器的横向自由扩展方式来处理业务请求,保持在海量数据处理上的实时性要求,这里采用分布式技术,通过服务机器的横向扩展和灵活组网,通过多个服务器服务于一个或者多个主题来实现负载均衡和业务的扩展,接入层服务器和分发层服务器存贮引擎得到优化,提高数据存储容量、数据安全性、数据处理的性能和实时性,增加整个处理***的处理能力。
优选的,发布端、分发层、接入层可具有跨语言、跨平台、分布式、灵活组网的特性,可对所述发布端分布式部署,对所述接入层集中式部署,对所述分发层分布式或集中式部署,分发层可根据不同的主题来对海量主题进行筛选和分发。
发布端、接入层、分发层和订阅端的特点如下表所示:
较佳的,所述通道方式包括推方式、拉方式和订阅方式中的一种或任意组合,这样分发层和接入层之间、分发层和订阅端之间可以采用推、拉和订阅机制模式相结合的方式实现网络节点之间互联,可以根据网络环境的特点选择更为方便和可行的通道方式。
本实施例中,可以Pub(发布)/Sub(订阅)模式的分布式技术架构整个服务,发布端、分发层和接入层的节点之间高度解耦,仅通过邮箱进行耦合,所有的交互都在“邮箱”中进行,可按照多级匹配规则如多级正则匹配规则来支持复杂多样的业务需求,将数据投递到所述第二邮箱中供订阅端获取,实现主题一对多批量分发,发布端采用增量数据的全量发布,分发层和接入层根据匹配方式如订阅规进行主题的筛选,不符合任何匹配方式如订阅规则的数据将会被丢弃,从而保证接入层对所有的主题进行集中的控制和一级级分发。
另外,发布端、分发层和接入层的节点之间高度解耦,仅通过邮箱进行耦合,所有的交互都在“邮箱”中进行,在高并发、高负荷且并不过多损伤性能的情况下提供了数据的持久化,提高节点之间互联的灵活性。
实施例三
如图3所示,本发明还提供一种数据获取方法,包括:
步骤S31,订阅端设置第二匹配方式。
较佳的,可另外设置一管理端或接口以支持在线修改第二匹配方式如订阅规则并实时生效。
较佳的,所述订阅端支持多进程横向扩展或多节点横向扩展,单服务器可以突破海量数据在实时性处理上对内存的过多依赖,利用低成本高容量的硬盘去持久化数据,提供处理***的高性能和数据安全性,订阅端可支持根据数据量的大小加入更多的服务器的横向自由扩展方式来处理业务请求,保持在海量数据处理上的实时性要求,这里采用分布式技术,通过服务机器的横向扩展和灵活组网,通过多个服务器服务于一个或者多个主题来实现负载均衡和业务的扩展。
优选的,所述订阅端可分布式或集中式部署。
订阅端的特点如下表所示:
较佳的,所述第二匹配方式包括限定数据的具体内容、限定数据发布者、限定服务类别和限定主题类型中的一种或任意组合。
所述第二匹配方式可为如下的订阅规则:
</config>上述订阅规则中,每个主题通过四个条件进行过滤,其中每个条件都支持正则表达式进行复杂匹配,以满足应用需求。其中,publisher用于限定数据由谁发布的;serviceid用于限制哪一类的服务,譬如可以采用以游戏名来指定;messagetype则用于限定主题的类型是什么,譬如登录、升级、加入公会等动态;content则对具体的数据进行限制。同时满足四个条件的主题将会保存到router配置项所定义的邮箱中。
步骤S32,所述订阅端根据所述第二匹配方式和预设的通道方式从一第二邮箱中获取第二筛选数据。
优选的,所述通道方式包括推方式、拉方式和订阅方式中的一种或任意组合,这样分发层和接入层之间、分发层和订阅端之间可以采用推、拉和订阅机制模式相结合的方式实现网络节点之间互联,可以根据网络环境的特点选择更为方便和可行的通道方式。
本实施例中,可以Pub(发布)/Sub(订阅)模式的分布式技术架构整个服务,发布端和订阅端可通过灵活的主题订阅发布机制进行关联,发布端、订阅端的节点之间高度解耦,仅通过邮箱进行耦合,所有的交互都在“邮箱”中进行,可按照多级匹配规则如多级正则匹配规则来支持复杂多样的业务需求,将数据投递到所述第二邮箱中供订阅端获取,订阅端以预设的通道方式从所述第二邮箱中拉取数据,实现主题一对多批量分发。
实施例四
如图4和5所示,本发明还提供一种数据处理***,包括发布端1、接入层2、分发层3和订阅端4。
发布端1用于将从一数据产生端实时抽取的数据推送至接入层。其中,所述数据产生端包括游戏服务器。
具体的,为了能够将分布在不同地方的数据实时、准时的提供给需要特定数据的开放平台,可根据数据产生端的特点如每款游戏的特点定制一个数据的抽取程序,在数据抽取程序和数据产生端之间采用数据库进行数据交互,即数据库用于存储所述实时抽取的数据。
优选的,所述实时抽取的数据包括动态数据和静态数据。所有的动态数据和静态数据写入到数据库中,动态抽取程序会对所有指定的数据产生端如游戏指定区服的游戏动态和静态数据按照规则进行实时抽取,其中,可以仅抽取新增的和更新的静态数据,另外,还可仅抽取上一次更新动态数据的时间点后产生的动态数据,即对于动态数据而言,抽取程序在每次更新完毕以后,记录更新最近更新的时间,下一次更新都将从上次更新的时间点开始更新,这样发布端可只对增量静态数据和动态数据进行实时全量发布,大大的降低了静态数据和动态数据的数量。较佳的,所述实时抽取的数据包括具体内容、数据发布者、服务类别和主题类型的信息。
较佳的,所述实时抽取的数据包括具体内容、数据发布者、服务类别和主题类型的信息。
订阅端4用于设置第二匹配方式,并根据所述第二匹配方式和预设的通道方式从对应的第二邮箱中获取第二筛选数据,这样接入层和分发层对发布端的数据进行规则匹配,并将筛选数据投递到相应的邮箱中,订阅端通过预定义的第二匹配方式如订阅规则获取自身关心的数据,并进行处理。
较佳的,可另外设置一管理端或接口以支持在线修改第二匹配方式如订阅规则并实时生效。
分发层3用于获取所述第二匹配方式,并根据所述第二匹配方式生成第一匹配方式,根据所述第二匹配方式和预设的通道方式从对应的第一邮箱中获取第二筛选数据并存储入所述第二邮箱中。
具体的,所述分发层会向所述接入层订阅自己感兴趣的主题,第一匹配方式可为如下的订阅规则:
</config>上述订阅规则中,每个主题通过四个条件进行过滤,其中每个条件都支持正则表达式进行复杂匹配,以满足应用需求。其中,publisher用于限定数据由谁发布的;serviceid用于限制哪一类的服务,譬如可以采用以游戏名来指定;messagetype则用于限定主题的类型是什么,譬如登录、升级、加入公会等动态;content则对具体的数据进行限制。同时满足四个条件的主题将会保存到router配置项所定义的邮箱中。
同理,所述第二匹配方式也可按上述订阅规则设置。分发层会从第一邮箱中会被动接收或者主动拉取该第一邮箱中的第一筛选数据,并再次调用本地的主题订阅规则获取第二筛选数据并存储入对应的第二邮箱中,以进行主题的分发,这里支持一个或者多个服务器采用同一套订阅规则即可构成一个服务器组,以实现主题的集群服务。
优选的,所述第一匹配方式或第二匹配方式包括限定数据的具体内容、限定数据发布者、限定服务类别和限定主题类型中的一种或任意组合。
接入层2用于根据所述第一匹配方式从所述实时抽取的数据中获取第一筛选数据并存储入所述第一邮箱中。具体的,随着业务量的增加,当接入层整体负荷过高的时候,通过在接入层加入新的服务器来保证服务的质量,为了保证数据发布的实时性要求,接入层通常提供大容量硬盘、高性能和高带宽,所有发布的主题都能够首先被高效的保存到***的硬盘上,并随后通过分发层提供给订阅端。
优选的,所述接入层前置有一负载均衡设备,以提供统一接入服务,提供灵活的横向扩展能力,以满足整个***大容量、高稳定性和负载均衡的需求。
较佳的,所述发布端1、订阅端4、分发层3和接入层2中的一种或多种分别支持多进程横向扩展,另外,所述发布端1、订阅端4、分发层3和接入层2中的一种或多种也可分别支持多节点横向扩展,如图5所示,发布端1可根据需要包括P1~Pm个服务器,接入层2可包括S1~Sn个服务器,分发层3包括Sn1~Snm个服务器,订阅端4包括C1~Cm个服务器,单服务器可以突破海量数据在实时性处理上对内存的过多依赖,利用低成本高容量的硬盘去持久化数据,提供处理***的高性能和数据安全性,发布端、分发层、接入层和订阅端可支持根据数据量的大小加入更多的服务器的横向自由扩展方式来处理业务请求,保持在海量数据处理上的实时性要求,这里采用分布式技术,通过服务机器的横向扩展和灵活组网,通过多个服务器服务于一个或者多个主题来实现负载均衡和业务的扩展,接入层服务器和分发层服务器存贮引擎得到优化,提高数据存储容量、数据安全性、数据处理的性能和实时性,增加整个处理***的处理能力。
优选的,发布端、分发层、接入层和订阅端可具有跨语言、跨平台、分布式、灵活组网的特性,通过对所述发布端分布式部署,对所述接入层集中式部署,对所述分发层和/或订阅端分布式或集中式部署,分发层可根据不同的主题来对海量主题进行筛选和分发。
发布端、接入层、分发层和订阅端的特点如下表所示:
较佳的,所述通道方式包括推方式、拉方式和订阅方式中的一种或任意组合,这样分发层和接入层之间、分发层和订阅端之间可以采用推、拉和订阅机制模式相结合的方式实现网络节点之间互联,可以根据网络环境的特点选择更为方便和可行的通道方式。
本实施例中,可以Pub(发布)/Sub(订阅)模式的分布式技术架构整个服务,发布端和订阅端可通过灵活的主题订阅发布机制进行关联,发布端、订阅端、分发层和接入层的节点之间高度解耦,仅通过邮箱进行耦合,所有的交互都在“邮箱”中进行,可按照多级匹配规则如多级正则匹配规则来支持复杂多样的业务需求,将数据投递到所述第二邮箱中供订阅端获取,订阅端以预设的通道方式从所述第二邮箱中拉取数据,实现主题一对多批量分发,发布端采用增量数据的全量发布,分发层和接入层根据匹配方式如订阅规进行主题的筛选,不符合任何匹配方式如订阅规则的数据将会被丢弃,从而保证接入层对所有的主题进行集中的控制和一级级分发。
另外,发布端、订阅端、分发层和接入层的节点之间高度解耦,仅通过邮箱进行耦合,所有的交互都在“邮箱”中进行,在高并发、高负荷且并不过多损伤性能的情况下提供了数据的持久化,提高节点之间互联的灵活性。
实施例五
如图6所示,本发明还提供一种数据发布***,包括发布端1、接入层2和分发层3。
发布端1用于将从一数据产生端实时抽取的数据推送至接入层,其中,所述数据产生端包括游戏服务器。
具体的,为了能够将分布在不同地方的数据实时、准时的提供给需要特定数据的开放平台,可根据数据产生端的特点如每款游戏的特点定制一个数据的抽取程序,在数据抽取程序和数据产生端之间采用数据库进行数据交互,即数据库用于存储所述实时抽取的数据。
优选的,所述实时抽取的数据包括动态数据和静态数据,其中,所可以仅抽取新增的和更新的静态数据,另外,也可仅抽取上一次更新动态数据的时间点后产生的动态数据,即对于动态数据而言,抽取程序在每次更新完毕以后,记录更新最近更新的时间,下一次更新都将从上次更新的时间点开始更新,这样发布端可只对增量静态数据和动态数据进行实时全量发布,大大的降低了静态数据和动态数据的数量。较佳的,所述实时抽取的数据包括具体内容、数据发布者、服务类别和主题类型的信息。。
较佳的,所述实时抽取的数据包括具体内容、数据发布者、服务类别和主题类型的信息。
分发层3用于获取第二匹配方式,并根据所述第二匹配方式生成第一匹配方式,根据所述第二匹配方式和预设的通道方式从对应的第一邮箱中获取第二筛选数据并存储入对应的第二邮箱中。
具体的,所述分发层会向所述接入层订阅自己感兴趣的主题,第一匹配方式可为如下的订阅规则:
</config>上述订阅规则中,每个主题通过四个条件进行过滤,其中每个条件都支持正则表达式进行复杂匹配,以满足应用需求。其中,publisher用于限定数据由谁发布的;serviceid用于限制哪一类的服务,譬如可以采用以游戏名来指定;messagetype则用于限定主题的类型是什么,譬如登录、升级、加入公会等动态;content则对具体的数据进行限制。同时满足四个条件的主题将会保存到router配置项所定义的邮箱中。
同理,所述第二匹配方式也可按上述订阅规则设置。分发层会从第一邮箱中会被动接收或者主动拉取该第一邮箱中的第一筛选数据,并再次调用本地的主题订阅规则获取第二筛选数据并存储入对应的第二邮箱中,以进行主题的分发,这里支持一个或者多个服务器采用同一套订阅规则即可构成一个服务器组,以实现主题的集群服务。
较佳的,可另外设置一管理端或接口以支持在线修改第二匹配方式如订阅规则并实时生效。
优选的,所述第一匹配方式或第二匹配方式包括限定数据的具体内容、限定数据发布者、限定服务类别和限定主题类型中的一种或任意组合。
接入层2用于根据所述第一匹配方式从所述实时抽取的数据中获取第一筛选数据并存储入所述第一邮箱中。具体的,随着业务量的增加,当接入层整体负荷过高的时候,通过在接入层加入新的服务器来保证服务的质量,为了保证数据发布的实时性要求,接入层通常提供大容量硬盘、高性能和高带宽,所有发布的主题都能够首先被高效的保存到***的硬盘上,并随后通过分发层提供给订阅端。
优选的,所述接入层前置有一负载均衡设备,以提供统一接入服务,提供灵活的横向扩展能力,以满足整个***大容量、高稳定性和负载均衡的需求。
较佳的,所述发布端1、分发层3和接入层2中的一种或多种分别支持多进程横向扩展,另外,所述发布端、分发层和接入层中的一种或多种也可分别支持多节点横向扩展,单服务器可以突破海量数据在实时性处理上对内存的过多依赖,利用低成本高容量的硬盘去持久化数据,提供处理***的高性能和数据安全性,发布端、分发层、接入层和订阅端可支持根据数据量的大小加入更多的服务器的横向自由扩展方式来处理业务请求,保持在海量数据处理上的实时性要求,这里采用分布式技术,通过服务机器的横向扩展和灵活组网,通过多个服务器服务于一个或者多个主题来实现负载均衡和业务的扩展,接入层服务器和分发层服务器存贮引擎得到优化,提高数据存储容量、数据安全性、数据处理的性能和实时性,增加整个处理***的处理能力。
较佳的,发布端、分发层、接入层可具有跨语言、跨平台、分布式、灵活组网的特性,可对所述发布端分布式部署,对所述接入层集中式部署,对所述分发层分布式或集中式部署,分发层可根据不同的主题来对海量主题进行筛选和分发。
发布端、接入层、分发层和订阅端的特点如下表所示:
优选的,所述通道方式包括推方式、拉方式和订阅方式中的一种或任意组合,这样分发层和接入层之间、分发层和订阅端之间可以采用推、拉和订阅机制模式相结合的方式实现网络节点之间互联,可以根据网络环境的特点选择更为方便和可行的通道方式。
本实施例中,可以Pub(发布)/Sub(订阅)模式的分布式技术架构整个服务,发布端、分发层和接入层的节点之间高度解耦,仅通过邮箱进行耦合,所有的交互都在“邮箱”中进行,可按照多级匹配规则如多级正则匹配规则来支持复杂多样的业务需求,将数据投递到所述第二邮箱中供订阅端获取,实现主题一对多批量分发,发布端采用增量数据的全量发布,分发层和接入层根据匹配方式如订阅规进行主题的筛选,不符合任何匹配方式如订阅规则的数据将会被丢弃,从而保证接入层对所有的主题进行集中的控制和一级级分发。
另外,发布端、分发层和接入层的节点之间高度解耦,仅通过邮箱进行耦合,所有的交互都在“邮箱”中进行,在高并发、高负荷且并不过多损伤性能的情况下提供了数据的持久化,提高节点之间互联的灵活性。
实施例六
本发明还提供另一种数据获取***,包括订阅端用于设置第二匹配方式,并将所述第二匹配方式发送至一分发层,并根据所述第二匹配方式和预设的通道方式从分发层的一第二邮箱中获取第二筛选数据。
较佳的,可另外设置一管理端或接口以支持在线修改第二匹配方式如订阅规则并实时生效。
优选的,所述订阅端、支持多进程横向扩展或多节点横向扩展,单服务器可以突破海量数据在实时性处理上对内存的过多依赖,利用低成本高容量的硬盘去持久化数据,提供处理***的高性能和数据安全性,订阅端可支持根据数据量的大小加入更多的服务器的横向自由扩展方式来处理业务请求,保持在海量数据处理上的实时性要求,这里采用分布式技术,通过服务机器的横向扩展和灵活组网,通过多个服务器服务于一个或者多个主题来实现负载均衡和业务的扩展。
较佳的,所述订阅端分布式或集中式部署。
订阅端的特点如下表所示:
优选的,所述第二匹配方式包括限定数据的具体内容、限定数据发布者、限定服务类别和限定主题类型中的一种或任意组合。
所述第二匹配方式可为如下的订阅规则:
</config>上述订阅规则中,每个主题通过四个条件进行过滤,其中每个条件都支持正则表达式进行复杂匹配,以满足应用需求。其中,publisher用于限定数据由谁发布的;serviceid用于限制哪一类的服务,譬如可以采用以游戏名来指定;messagetype则用于限定主题的类型是什么,譬如登录、升级、加入公会等动态;content则对具体的数据进行限制。同时满足四个条件的主题将会保存到router配置项所定义的邮箱中。
优选的,所述通道方式包括推方式、拉方式和订阅方式中的一种或任意组合,这样分发层和接入层之间、分发层和订阅端之间可以采用推、拉和订阅机制模式相结合的方式实现网络节点之间互联,可以根据网络环境的特点选择更为方便和可行的通道方式。
本实施例中,可以Pub(发布)/Sub(订阅)模式的分布式技术架构整个服务,发布端和订阅端可通过灵活的主题订阅发布机制进行关联,发布端、订阅端的节点之间高度解耦,仅通过邮箱进行耦合,所有的交互都在“邮箱”中进行,可按照多级匹配规则如多级正则匹配规则来支持复杂多样的业务需求,将数据投递到所述第二邮箱中供订阅端获取,订阅端以预设的通道方式从所述第二邮箱中拉取数据,实现主题一对多批量分发。
综上所述,本发明具有如下优点:
1)通过发布端将从一数据产生端实时抽取的数据推送至接入层,订阅端设置第二匹配方式,分发层获取所述第二匹配方式,并根据所述第二匹配方式生成第一匹配方式,接入层根据所述第一匹配方式从所述实时抽取的数据中获取第一筛选数据并存储入对应的第一邮箱中,分发层根据所述第二匹配方式和预设的通道方式从所述第一邮箱中获取第二筛选数据并存储入对应的第二邮箱中,所述订阅端根据所述第二匹配方式和预设的通道方式从对应的第二邮箱中获取第二筛选数据,可以Pub(发布)/Sub(订阅)模式的分布式技术架构整个服务,发布端和订阅端可通过灵活的主题订阅发布机制进行关联,发布端、订阅端、分发层和接入层的节点之间高度解耦,仅通过邮箱进行耦合,所有的交互都在“邮箱”中进行,可按照多级匹配规则如多级正则匹配规则来支持复杂多样的业务需求,将数据投递到所述第二邮箱中供订阅端获取,订阅端以预设的通道方式从所述第二邮箱中拉取数据,实现主题一对多批量分发;
2)通过所述发布端、订阅端、分发层和接入层中的一种或多种分别支持多进程或多节点横向扩展,所述发布端、订阅端、分发层和接入层可根据实际需要分别设置多个服务器,每个服务器的数据相对独立,突破海量数据在实时性处理上对内存的过多依赖,利用低成本高容量的硬盘去持久化数据,实现多个服务器服务于一个或者多个主题来实现负载均衡和业务的扩展,接入层服务器和分发层服务器存贮引擎得到优化,提高数据存储容量、数据安全性、数据处理的性能和实时性;
3)通过设置通道方式包括推方式、拉方式和订阅方式中的一种或任意组合,接入层与分发层之间、分发层与订阅端之间可以采用推、拉和订阅机制模式相结合的方式实现网络节点之间互联,可以根据网络环境的特点选择更为方便和可行的通道方式;
4)通过所述接入层前置有一负载均衡设备,所述接入层集中式部署,所述负载均衡设备可提供统一接入服务,所述接入层以中间件的模式集中部署,并通过前置负载均衡设备,提供灵活的横向扩展能力。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的***而言,由于与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
显然,本领域的技术人员可以对发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。
Claims (22)
1.一种数据处理方法,其特征在于,包括:
发布端将从一数据产生端实时抽取的数据推送至接入层;
订阅端设置第二匹配方式;
分发层获取所述第二匹配方式,并根据所述第二匹配方式生成第一匹配方式;
接入层根据所述第一匹配方式从所述实时抽取的数据中获取第一筛选数据并存储入对应的第一邮箱中;
分发层根据所述第二匹配方式和预设的通道方式从所述第一邮箱中获取第二筛选数据并存储入对应的第二邮箱中;
所述订阅端根据所述第二匹配方式和预设的通道方式从对应的第二邮箱中获取第二筛选数据。
2.一种数据发布方法,其特征在于,包括:
发布端将从一数据产生端实时抽取的数据推送至接入层;
分发层从一订阅端获取第二匹配方式,并根据所述第二匹配方式生成第一匹配方式;
接入层根据所述第一匹配方式从所述实时抽取的数据中获取第一筛选数据并存储入对应的第一邮箱中;
分发层根据所述第二匹配方式和预设的通道方式从所述第一邮箱中获取第二筛选数据并存储入对应的第二邮箱中。
3.一种数据获取方法,其特征在于,包括:
订阅端设置第二匹配方式;
所述订阅端根据所述第二匹配方式和预设的通道方式从一第二邮箱中获取第二筛选数据。
4.一种数据处理***,其特征在于,包括:
发布端,用于将从一数据产生端实时抽取的数据推送至接入层;
订阅端,用于设置第二匹配方式,并根据所述第二匹配方式和预设的通道方式从对应的第二邮箱中获取第二筛选数据;
分发层,用于获取所述第二匹配方式,并根据所述第二匹配方式生成第一匹配方式,根据所述第二匹配方式和预设的通道方式从对应的第一邮箱中获取第二筛选数据并存储入所述第二邮箱中;
接入层,用于根据所述第一匹配方式从所述实时抽取的数据中获取第一筛选数据并存储入所述第一邮箱中。
5.如权利要求4所述的数据处理***,其特征在于,所述接入层前置有一负载均衡设备。
6.如权利要求4所述的数据处理***,其特征在于,所述发布端、订阅端、分发层和接入层中的一种或多种分别支持多进程横向扩展。
7.如权利要求4所述的数据处理***,其特征在于,所述发布端、订阅端、分发层和接入层中的一种或多种分别支持多节点横向扩展。
8.如权利要求7所述的数据处理***,其特征在于,所述发布端分布式部署。
9.如权利要求7所述的数据处理***,其特征在于,所述接入层集中式部署。
10.如权利要求7所述的数据处理***,其特征在于,所述分发层和/或订阅端分布式或集中式部署。
11.如权利要求4所述的数据处理***,其特征在于,所述实时抽取的数据包括动态数据和静态数据。
12.如权利要求11所述的数据处理***,其特征在于,所述静态数据为新增的和更新的静态数据所述静态数为新增的和更新的静态数据。
13.如权利要求11所述的数据处理***,其特征在于,所述动态数据为上一次更新动态数据的时间点后产生的动态数据。
14.如权利要求4所述的数据处理***,其特征在于,所述实时抽取的数据包括具体内容、数据发布者、服务类别和主题类型的信息。
15.如权利要求4所述的数据处理***,其特征在于,所述第一匹配方式或第二匹配方式包括限定数据的具体内容、限定数据发布者、限定服务类别和限定主题类型中的一种或任意组合。
16.如权利要求4所述的数据处理***,其特征在于,所述通道方式包括推方式、拉方式和订阅方式中的一种或任意组合。
17.一种数据发布***,其特征在于,包括:
发布端,用于将从一数据产生端实时抽取的数据推送至接入层;
分发层,用于获取第二匹配方式,并根据所述第二匹配方式生成第一匹配方式,根据所述第二匹配方式和预设的通道方式从对应的第一邮箱中获取第二筛选数据并存储入对应的第二邮箱中;
接入层,用于根据所述第一匹配方式从所述实时抽取的数据中获取第一筛选数据并存储入所述第一邮箱中。
18.如权利要求17所述的数据发布***,其特征在于,所述接入层前置有一负载均衡设备。
19.如权利要求17所述的数据发布***,其特征在于,所述发布端、分发层和接入层中的一种或多种分别支持多进程横向扩展。
20.如权利要求17所述的数据发布***,其特征在于,所述发布端、分发层和接入层中的一种或多种分别支持多节点横向扩展。
21.一种数据获取***,其特征在于,包括:
订阅端,用于设置第二匹配方式,并将所述第二匹配方式发送至一分发层,并根据所述第二匹配方式和预设的通道方式从分发层的一第二邮箱中获取第二筛选数据。
22.如权利要求21所述的数据获取***,其特征在于,所述订阅端支持多进程横向扩展或多节点横向扩展。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210270123.8A CN103581250B (zh) | 2012-07-31 | 2012-07-31 | 数据处理、发布、获取方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210270123.8A CN103581250B (zh) | 2012-07-31 | 2012-07-31 | 数据处理、发布、获取方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103581250A true CN103581250A (zh) | 2014-02-12 |
CN103581250B CN103581250B (zh) | 2018-12-07 |
Family
ID=50052169
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210270123.8A Active CN103581250B (zh) | 2012-07-31 | 2012-07-31 | 数据处理、发布、获取方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103581250B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104408132A (zh) * | 2014-11-28 | 2015-03-11 | 北京京东尚科信息技术有限公司 | 数据推送方法和*** |
CN106021315A (zh) * | 2016-05-05 | 2016-10-12 | 智者四海(北京)技术有限公司 | 一种应用程序的日志管理方法及*** |
CN106657350A (zh) * | 2016-12-29 | 2017-05-10 | ***股份有限公司 | 数据复制方法及装置 |
CN108073559A (zh) * | 2016-11-18 | 2018-05-25 | 腾讯科技(深圳)有限公司 | 一种实现表格数据更新的方法、装置及*** |
CN108388615A (zh) * | 2018-02-09 | 2018-08-10 | 杭州数梦工场科技有限公司 | 一种数据交换方法、***以及电子设备 |
CN109194736A (zh) * | 2018-08-30 | 2019-01-11 | 百度在线网络技术(北京)有限公司 | 消息去重方法、装置、电子设备、介质和无人车 |
CN110191188A (zh) * | 2019-06-02 | 2019-08-30 | 四川虹微技术有限公司 | 一种数据处理方法、区块链网络及存储介质 |
CN110602194A (zh) * | 2019-09-02 | 2019-12-20 | 深圳市丰润达科技有限公司 | Iot消息的订阅方法、装置及计算机可读存储介质 |
CN114297109A (zh) * | 2021-12-28 | 2022-04-08 | 中汽创智科技有限公司 | 一种基于订阅发布模式的数据处理方法、装置、电子设备及存储介质 |
CN116055777A (zh) * | 2023-01-03 | 2023-05-02 | 北京流金岁月传媒科技股份有限公司 | 一种多路机顶盒远程控制*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1477575A (zh) * | 2002-07-26 | 2004-02-25 | �Ҵ���˾ | 从公布/订阅服务接收电子消息的方法和*** |
CN1783849A (zh) * | 2004-12-03 | 2006-06-07 | 腾讯科技(深圳)有限公司 | 一种基于即时通讯平台的消息订阅方法和*** |
CN101601033A (zh) * | 2006-04-07 | 2009-12-09 | 谷歌公司 | 响应于模式化查询而生成专业的搜索结果 |
CN101782915A (zh) * | 2009-06-23 | 2010-07-21 | 北京搜狗科技发展有限公司 | 一种聚合内容rss订阅方法和装置 |
CN102158424A (zh) * | 2010-02-02 | 2011-08-17 | 微软公司 | 利用发布和订阅机制的消息传输*** |
-
2012
- 2012-07-31 CN CN201210270123.8A patent/CN103581250B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1477575A (zh) * | 2002-07-26 | 2004-02-25 | �Ҵ���˾ | 从公布/订阅服务接收电子消息的方法和*** |
CN1783849A (zh) * | 2004-12-03 | 2006-06-07 | 腾讯科技(深圳)有限公司 | 一种基于即时通讯平台的消息订阅方法和*** |
CN101601033A (zh) * | 2006-04-07 | 2009-12-09 | 谷歌公司 | 响应于模式化查询而生成专业的搜索结果 |
CN101782915A (zh) * | 2009-06-23 | 2010-07-21 | 北京搜狗科技发展有限公司 | 一种聚合内容rss订阅方法和装置 |
CN102158424A (zh) * | 2010-02-02 | 2011-08-17 | 微软公司 | 利用发布和订阅机制的消息传输*** |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104408132B (zh) * | 2014-11-28 | 2018-03-02 | 北京京东尚科信息技术有限公司 | 数据推送方法和*** |
CN104408132A (zh) * | 2014-11-28 | 2015-03-11 | 北京京东尚科信息技术有限公司 | 数据推送方法和*** |
CN106021315A (zh) * | 2016-05-05 | 2016-10-12 | 智者四海(北京)技术有限公司 | 一种应用程序的日志管理方法及*** |
CN108073559A (zh) * | 2016-11-18 | 2018-05-25 | 腾讯科技(深圳)有限公司 | 一种实现表格数据更新的方法、装置及*** |
CN106657350A (zh) * | 2016-12-29 | 2017-05-10 | ***股份有限公司 | 数据复制方法及装置 |
CN108388615A (zh) * | 2018-02-09 | 2018-08-10 | 杭州数梦工场科技有限公司 | 一种数据交换方法、***以及电子设备 |
CN109194736A (zh) * | 2018-08-30 | 2019-01-11 | 百度在线网络技术(北京)有限公司 | 消息去重方法、装置、电子设备、介质和无人车 |
CN109194736B (zh) * | 2018-08-30 | 2021-04-27 | 百度在线网络技术(北京)有限公司 | 消息去重方法、装置、电子设备、介质和无人车 |
US11050814B2 (en) | 2018-08-30 | 2021-06-29 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method, device and vehicle for message deduplication |
CN110191188B (zh) * | 2019-06-02 | 2021-09-14 | 四川虹微技术有限公司 | 一种数据处理方法、区块链网络及存储介质 |
CN110191188A (zh) * | 2019-06-02 | 2019-08-30 | 四川虹微技术有限公司 | 一种数据处理方法、区块链网络及存储介质 |
CN110602194A (zh) * | 2019-09-02 | 2019-12-20 | 深圳市丰润达科技有限公司 | Iot消息的订阅方法、装置及计算机可读存储介质 |
CN110602194B (zh) * | 2019-09-02 | 2022-03-25 | 深圳市丰润达科技有限公司 | Iot消息的订阅方法、装置及计算机可读存储介质 |
CN114297109A (zh) * | 2021-12-28 | 2022-04-08 | 中汽创智科技有限公司 | 一种基于订阅发布模式的数据处理方法、装置、电子设备及存储介质 |
CN114297109B (zh) * | 2021-12-28 | 2024-05-24 | 中汽创智科技有限公司 | 一种基于订阅发布模式的数据处理方法、装置、电子设备及存储介质 |
CN116055777A (zh) * | 2023-01-03 | 2023-05-02 | 北京流金岁月传媒科技股份有限公司 | 一种多路机顶盒远程控制*** |
CN116055777B (zh) * | 2023-01-03 | 2024-02-23 | 北京流金岁月传媒科技股份有限公司 | 一种多路机顶盒远程控制*** |
Also Published As
Publication number | Publication date |
---|---|
CN103581250B (zh) | 2018-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103581250A (zh) | 数据处理、发布、获取方法及*** | |
CN102945175A (zh) | 一种基于云计算环境的终端软件在线升级***及其方法 | |
CN101262488B (zh) | 一种内容分发网络***及方法 | |
CN105100267A (zh) | 大企业私有云的部署装置和方法 | |
CN111324445A (zh) | 一种任务调度模拟*** | |
CN104050248B (zh) | 一种文件存储***及存储方法 | |
CN105554160A (zh) | 一种基于nginx负载均衡的dubbo分布式集群***架构方法 | |
CN101169785A (zh) | 集群数据库***的动态负载均衡方法 | |
CN104536965B (zh) | 一种大数据条件下的数据查询展示***及方法 | |
CN102761599A (zh) | 一种分布式***中升级文件分发方法 | |
CN104754008B (zh) | 网络存储节点、网络存储***以及用于网络存储节点的装置和方法 | |
CN103577251A (zh) | 基于事件的互联网计算处理***及方法 | |
CN103581207A (zh) | 云端数据存储***及基于该***的数据存储与共享方法 | |
CN107888666A (zh) | 一种跨地域数据存储***以及数据同步方法和装置 | |
CN106055706B (zh) | 一种缓存资源存储方法及装置 | |
CN106326339A (zh) | 任务分配方法及装置 | |
CN104519140A (zh) | 一种分布式并行计算的服务器***及其管理方法 | |
CN103248636B (zh) | 离线下载的***及方法 | |
CN111381957A (zh) | 面向分布式平台的服务实例精细化调度方法及*** | |
CN101808087A (zh) | 一种卡拉ok电视点歌***及点歌方法 | |
CN112351106B (zh) | 一种含事件网格的服务网格平台及其通信方法 | |
CN103905512B (zh) | 一种数据处理方法和设备 | |
CN107066526A (zh) | 一种网络爬虫***及方法 | |
CN110489468A (zh) | 一种数据报表的导出方法、装置及服务器 | |
CN103140851B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |