CN107040598A - 股票行情数据的分发方法、分发装置及推送系统 - Google Patents
股票行情数据的分发方法、分发装置及推送系统 Download PDFInfo
- Publication number
- CN107040598A CN107040598A CN201710253917.6A CN201710253917A CN107040598A CN 107040598 A CN107040598 A CN 107040598A CN 201710253917 A CN201710253917 A CN 201710253917A CN 107040598 A CN107040598 A CN 107040598A
- Authority
- CN
- China
- Prior art keywords
- module
- market data
- stock
- stock market
- terminal
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/18—Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
- H04W8/20—Transfer of user or subscriber data
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供了一种股票行情数据的分发方法、分发装置及推送系统,该分发方法应用于股票行情数据的推送系统,所述推送系统至少包括提供股票行情数据的第一模块和分发股票行情数据的至少一个第二模块,所述分发方法包括:根据所述至少一个第二模块发送的订阅终端订阅的股票信息,确定所有订阅终端订阅的所有股票信息;将所述所有股票信息发送至所述第一模块;接收所述第一模块根据所述所有股票信息发送的股票行情数据;将所述股票行情数据发送至所述至少一个第二模块,以使所述至少一个第二模块将所述股票行情数据分发至相应的订阅终端。本发明的技术方案可以提高股票行情数据的分发效率,避免由于堵塞而造成数据传输延迟。
Description
技术领域
本发明涉及股票数据技术领域,具体而言,涉及一种股票行情数据的分发方法、分发装置及推送系统。
背景技术
随着智能操作系统广泛应用到智能手机、平板电脑以及智能电视中,现有的股票行情数据获取方式更多仍停留在PC时代,即主要靠手动刷新页面的方式进行拉取。也有少数软件采用推送的方式更新股票行情数据,但是对于高并发、海量终端的场景下,普遍存在着延时高及数据丢失的问题。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本发明的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本发明的目的在于提供一种股票行情数据的分发方法、分发装置及推送系统,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或者多个问题。
本发明的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本发明的实践而习得。
根据本发明的第一方面,提供了一种股票行情数据的分发方法,所述分发方法应用于股票行情数据的推送系统,所述推送系统至少包括提供股票行情数据的第一模块和分发股票行情数据的至少一个第二模块,所述分发方法包括:根据所述至少一个第二模块发送的订阅终端订阅的股票信息,确定所有订阅终端订阅的所有股票信息;将所述所有股票信息发送至所述第一模块;接收所述第一模块根据所述所有股票信息发送的股票行情数据;将所述股票行情数据发送至所述至少一个第二模块,以使所述至少一个第二模块将所述股票行情数据分发至相应的订阅终端。
在本发明的一些实施例中,基于前述方案,还包括:在接收到所述第一模块发送的股票行情数据时,判断接收到的股票行情数据的个数是否达到预定个数;在判定接收到的股票行情数据的个数大于或等于所述预定个数时,放弃所述股票行情数据的推送。
在本发明的一些实施例中,基于前述方案,所述预定个数为单位时间内能够分发至所述至少一个第二模块的个数上限。
在本发明的一些实施例中,基于前述方案,还包括:在放弃所述股票行情数据的推送之后,记录相关的日志信息。
在本发明的一些实施例中,基于前述方案,还包括:在判定接收到的股票行情数据的个数小于所述预定个数时,将所述股票行情数据存储至内存队列。
在本发明的一些实施例中,基于前述方案,还包括:计算从所述内存队列中取出的任一股票行情数据的取出时刻与存入时刻的时间差值;在所述时间差值大于或等于预定时长时,放弃所述任一股票行情数据的推送。
在本发明的一些实施例中,基于前述方案,在所述时间差值小于所述预定时长时,将所述任一股票行情数据发送至所述至少一个第二模块。
在本发明的一些实施例中,基于前述方案,还包括:根据所述所有订阅终端和所述所有股票信息,统计每只股票信息被订阅的终端数量。
根据本发明的第二方面,提供了一种股票行情数据的分发装置,所述分发装置应用于股票行情数据的推送系统,所述推送系统至少包括提供股票行情数据的第一模块和分发股票行情数据的至少一个第二模块,所述分发装置包括:确定单元,用于根据所述至少一个第二模块发送的订阅终端订阅的股票信息,确定所有订阅终端订阅的所有股票信息;第一发送单元,用于将所述所有股票信息发送至所述第一模块;接收单元,用于接收所述第一模块根据所述所有股票信息发送的股票行情数据;第二发送单元,用于将所述股票行情数据发送至所述至少一个第二模块,以使所述至少一个第二模块将所述股票行情数据分发至相应的订阅终端。
根据本发明的第三方面,提供了一种股票行情数据的推送系统,包括:第一模块、至少一个第二模块和第三模块,所述第三模块包括如上述第二方面中所述的股票行情数据的分发装置;其中,所述第一模块用于提供股票行情数据;所述第二模块用于收集订阅终端订阅的股票信息,并用于接收所述第三模块发送的股票行情数据,将所述第三模块发送的股票行情数据分发至相应的订阅终端。
在本发明的一些实施例所提供的技术方案中,通过根据至少一个第二模块发送的订阅终端订阅的股票信息,确定所有订阅终端订阅的所有股票信息,并将所有股票信息发送至第一模块,使得第一模块无需关注哪个终端订阅了哪只股票信息,只需根据获取到的实时股票行情数据和所有订阅终端订阅的所有股票信息来对实时股票行情数据进行过滤。通过接收第一模块发送的股票行情数据,并将股票行情数据发送至至少一个第二模块,以使第二模块将股票行情数据分发至相应的订阅终端,使得(上述第三模块)也无需关注哪个终端订阅了哪只股票信息。可见,本发明实施例的技术方案使得每个模块各司其职,有利于提高数据过滤及分发的效率。
同时,当判定接收到的股票行情数据的个数达到预定个数时,若继续推送会造成数据拥塞,导致股票行情数据的延迟,因此可以放弃股票行情数据的推送,以避免影响后续股票行情数据的分发。
此外,当从内存队列中取出的任一股票行情数据的取出时刻与存入时刻的时间差值大于或等于预定时长时,说明数据造成了拥塞,因此可以放弃股票行情数据的推送,以避免影响后续股票行情数据的分发。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示意性示出了根据本发明的实施例的股票行情数据的分发方法的流程图;
图2示意性示出了根据本发明的实施例的股票行情数据的分发装置的框图;
图3示意性示出了根据本发明的实施例的股票行情数据的推送系统的结构示意图;
图4示意性示出了根据本发明的实施例的股票行情数据的推送系统的一种通信架构示意图;
图5示意性示出了根据本发明的实施例的股票行情数据的推送系统的分布式扩展示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本发明将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本发明的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本发明的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
图1示意性示出了根据本发明的实施例的股票行情数据的分发方法的流程图,其中,该分发方法应用于股票行情数据的推送系统,所述推送系统至少包括提供股票行情数据的第一模块和分发股票行情数据的至少一个第二模块。
参照图1,根据本发明的实施例的股票行情数据的分发方法,包括:
步骤S102,根据所述至少一个第二模块发送的订阅终端订阅的股票信息,确定所有订阅终端订阅的所有股票信息。
步骤S104,将所述所有股票信息发送至所述第一模块。
步骤S106,接收所述第一模块根据所述所有股票信息发送的股票行情数据。
在本发明的实施例中,当接收到所述第一模块发送的股票行情数据时,还可以包括如下步骤:判断接收到的股票行情数据的个数是否达到预定个数;在判定接收到的股票行情数据的个数大于或等于所述预定个数时,放弃所述股票行情数据的推送。
根据本发明的示例性实施例,所述预定个数为单位时间内能够分发至所述至少一个第二模块的个数上限。
在本发明的实施例中,还包括:在放弃所述股票行情数据的推送之后,记录相关的日志信息。
需要说明的是:通过在放弃股票行情数据的推送之后,记录相关的日志信息,使得运维人员能够根据该日志信息来确定是否进行模块的拓展,以提高系统的能力。
进一步地,在本发明的实施例中,还包括:在判定接收到的股票行情数据的个数小于所述预定个数时,将所述股票行情数据存储至内存队列。
进一步地,在本发明的实施例中,还包括:计算从所述内存队列中取出的任一股票行情数据的取出时刻与存入时刻的时间差值;在所述时间差值大于或等于预定时长时,放弃所述任一股票行情数据的推送。
需要说明的是,当放弃任一股票行情数据的推送之后,也可以记录相关的日志信息,以使运维人员能够根据该日志信息来确定是否进行模块的拓展。
在本发明的一些实施例中,基于前述方案,在所述时间差值小于所述预定时长时,将所述任一股票行情数据发送至所述至少一个第二模块。
步骤S108,将所述股票行情数据发送至所述至少一个第二模块,以使所述至少一个第二模块将所述股票行情数据分发至相应的订阅终端。
此外,在本发明的实施例中,为了进行统计分析,可以根据所有订阅终端和所述所有股票信息,统计每只股票信息被订阅的终端数量。
相应地,本发明的实施例还提出了一种股票行情数据的分发装置,同样地,该分发装置应用于股票行情数据的推送系统,所述推送系统至少包括提供股票行情数据的第一模块和分发股票行情数据的至少一个第二模块,具体如图2所示。
参照图2,根据本发明的实施例的股票行情数据的分发装置200,包括:确定单元202、第一发送单元204、接收单元206和第二发送单元208。
具体地,确定单元202用于根据所述至少一个第二模块发送的订阅终端订阅的股票信息,确定所有订阅终端订阅的所有股票信息;第一发送单元204用于将所述所有股票信息发送至所述第一模块;接收单元206用于接收所述第一模块根据所述所有股票信息发送的股票行情数据;第二发送单元208用于将所述股票行情数据发送至所述至少一个第二模块,以使所述至少一个第二模块将所述股票行情数据分发至相应的订阅终端。
需要说明的是,上述股票行情数据的分发装置200中各模块/单元的具体细节已经在对应的股票行情数据的分发方法中进行了详细的描述,因此此处不再赘述。
进一步地,本发明的实施例还提出了一种股票行情数据的推送系统,包括:第一模块、至少一个第二模块和第三模块,所述第三模块包括如上述第二方面中所述的股票行情数据的分发装置;其中,所述第一模块用于提供股票行情数据;所述第二模块用于收集订阅终端订阅的股票信息,并用于接收所述第三模块发送的股票行情数据,将所述第三模块发送的股票行情数据分发至相应的订阅终端。
需要说明的是:本发明上述实施例中的第一模块和第二模块中的每个模块可以仅由单个模块单元构成,也可以由多个模块单元构成。
作为本发明的示例性实施例,以下以上述第一模块为队列模块和推送模块、上述第二模块为接入模块、上述第三模块为分发模块为例,结合图3至图5对本发明的技术方案进行详细说明:
如图3所示,根据本发明的实施例的股票行情数据的推送系统,包括:队列模块M100、推送模块M200、分发模块M300和接入模块M400。各个模块之间采用层级结构,推送模块M200、分发模块M300和接入模块M400可根据接入的终端M500数量和股票交易频度进行不停机横向扩展。其中终端M500可为智能手机、平板电脑、智能电视中以及PC等,但不限于此,可以为任何具有股票交易功能的终端设备。
具体来说,该股票行情数据的推送系统包括至少一个用于接收和存储股票实时行情数据的队列模块M100、至少一个用于从所述队列模块中分拣出与终端M500订阅的股票信息匹配的实时行情数据的推送模块M200、至少一个用于与终端建立连接并存储终端订阅的股票信息的接入模块M400;以及至少一个用于控制推送模块M200与接入模块M400数据流转的分发模块M300。
在本发明的示例性实施例中,终端M500与接入模块M400可以建立TCP(Transmission Control Protocol,传输控制协议)长连接,并向该接入模块M400注册订阅股票信息;分发模块M300通过轮询的方式收集所有终端M500订阅的股票,并缓存在该模块内;推送模块M200同样定时的从分发模块M300获取所有的订阅股票集合;同时推送模块M200不间断从队列模块M100中获取股票实时行情;推送模块M200根据获取的实时行情数据与股票订阅集合进行匹配,将与终端订阅的股票信息匹配的实时行情数据推送到分发模块M300;分发模块M300将接收到行情数据推送给其它分发模块M300和接入模块M400;行情数据最终由接入模块M400直接推送终端M500。
在本发明的实施例中,接入模块M400只负责存储连接到该模块的终端的股票订阅信息,并将相应的股票行情数据推送给终端M500。其中,接入模块M400的数量可以根据终端M500的数量来进行扩展。
分发模块M300通过配置,划分所管辖的接入模块M400。实际使用中,可根据用户所在区域,跨机房的部署多个分发模块M300。分发模块M300之间通过互相配置构成集群,进行数据转发,实现无限横向扩展。
同时,分发模块M300收集所管辖内的接入模块M400汇聚的所有股票订阅信息,并通过互相转发,最终所有分发模块M300都持有全部终端M500的股票订阅信息。
推送模块M200定时轮询分发模块M300收集到所有股票订阅信息,同时不间断的从队列模块M100的高速队列中获取实时行情数据,并对股票行情数据进行过滤,然后推送到分发模块300。其中,如图3中的交叉箭头所示,在必要的时候,可以由多个推送模块M200同时向同一个分发模块300推送行情数据(的不同部分)以提高推送效率,反之也可以由同一个推送模块M200同时向多个分发模块300推送(相同或不同的)行情数据,具体可以根据需要和效率而定,并无特别限制。
推送模块M200只将终端订阅的股票行情数据进行推送,最大利用推送资源,没有多余数据的传输,也大大节省了流量带宽。
在本发明的示例性实施例中,推送模块M200与队列模块M100的数量比为N:1,其中N为大于或等于1的整数,通常来说N大于2。
以下对海量终端连接下的分布式扩展,以及高频度股票交易下拥塞控制进行详细说明:
股票行情推送具有两大特点:1、可订阅关注的股票总数是限定的,由现实世界交易所存在的股票总数决定;2、海量终端用户同一时刻订阅的股票会集中在一些热门股票。
基于上述特点,本发明的实施例采用分层架构的推送系统。具体地,海量终端M500只与无配置、高性能的接入模块M400进行通信,终端M500将关注的股票订阅在与之相连的接入模块M400中。其特色在于,接入模块M400会实时根据终端M500的订阅信息,建立股票的订阅终端M500集合,将关注相同股票的终端M500进行聚合,以这样的终端M500集合作为一个推送单元进行行情分发。每个接入模块M400都会为其接入终端M500正在关注的每一只股票都维护一个这样的终端M500集合,终端M500离线、发送指定通信协议将从集合中移除。现实世界股票总数数量级恒定,该集合可以完全存储在接入模块M400的内存当中,使用LinkedHashMap数据结构进行存储,在能够快速响应海量终端M500频繁的接入、离线的同时,又能在分发时提供快速的集合遍历效率。分发模块M300隔离了终端M500,推送模块M200只需与分发模块M300通信即可获取终端M500订阅股票的数量,且推送模块M200并不需要关心股票内的订阅终端M500集合。
分发模块M300与接入模块M400采用如图4所示的通信架构,分发模块M300与接入模块M400都会在启动时同时建立两个端口。通过采用分开的端口,可以提高安全性,同时可以带来更高的灵活性,实际部署中还可以将两个端口监听到不同的网卡,实现内外流量隔离。分发模块M300对外端口M301可采用http(HyperText Transfer Protocol超文本传输协议)协议便于对接,接入模块M400对外端口M401可采用MQTT(Message Queuing TelemetryTransport,消息队列遥测传输)协议,节省带宽同时提高效率。分发模块M300对内端口M302和接入模块M400对内端口M402采用相同的通信协议,如可采用二进制序列化协议,调用使用TCP长连接池方式,高效节流。
模块的扩展类似于积木搭建的方式,当终端M500较少时只需部署一个分发模块M300和一个接入模块M400针对全球的终端M500,当用户增多时可以适当增加接入模块M400,当向其它区域、海外扩充业务时,可以在全球各热门区域都分别部署,通过分发模块M300的内部通信端口扩展构成如图5所示的分布式架构。
需要说明的是,分发模块M300之间的连接关系不限于图5中所示的环形连接,也可以是链形连接、交叉连接等,本发明的实施方式不限于此。
推送模块M200从队列模块M100取得数据后立即放入到推送模块M200内的队列中,推送模块M200内的队列是一个内存队列,保证队列模块M100不会由于数据传输较慢导致数据积压而影响性能。
推送模块M200在启动时会开启三个循环,第一个用于循环的从分发模块M300中获取当前时刻接入终端M500关注的股票集合并缓存在内存中,第二个用于循环的从队列模块M100获取实时数据存入内部队列,第三个用于循环从内部队列中过滤实时行情数据进行推送。
推送模块M200第一个启动循环从分发模块M300获取终端M500所有关注的股票集合,其特色在于无需获取到每只股票具体的订阅终端M500,只需获取全部连接终端M500关注了哪些股票。
推送模块M200第三个启动循环从内部队列获取行情数据,首先检测行情数据产生时间是否在t1秒(如3秒)之内,超过t1秒视为过期放弃此次行情数据推送。行情数据如果没有过期进一步检测该只股票是否有终端M500关注,获取第一个循环建立的股票集合,如果不在该集合内,视为该只股票没有终端M500关注,放弃此次行情数据推送。行情数据如果有终端M500关注,还需判断此次的行情数据相较于上一次的行情数据的各指标是否变化,如果没有变化,视为重复数据放弃此次推送。经过上述层层过滤,过期数据、无效数据、重复数据都被滤除,流入到分发模块M300的实时行情数据将大大减少,减轻下流压力。
分发模块M300在启动时会开启两个循环,第一个用于循环的从其它分发模块M300以及管辖内的接入模块M400获取当前时刻接入终端M500关注的股票集合并缓存在内存中,同推送模块M200一样,无需获取到每只股票具体的订阅终端M500,只需获取全部连接终端M500关注了哪些股票,此外分发模块M300还会统计每只股票当前的关注终端M500总数,用于数据分析和统计。
分发模块M300会根据当前的模块总数在启动时预设每秒分发行情数据的个数上限,在收到推送模块M200的推送数据时,先判断收到的数据是否达到单位时间(如每秒)内能够发送的数据上限,达到上限自动放弃此次行情数据分发,并在日志中记录该错误提示。如果没有达到处理上限,则存入分发模块M300的内存队列。
分发模块M300启动时的第二个循环会从M300的内存队列中获取并再次过滤数据,首先检测行情数据取出的时间与存入队列的时间差值,大于t2秒(如1秒)则认为系统产生拥塞放弃此次行情数据分发,在日志中记录该错误提示。运维人员可监控上述日志判断是否要进行模块扩展。最后分发模块M300启动多个线程将此行情数据同时推送到管辖内的接入模块M400和相互扩展的分发模块M300。
接入模块M400在收到分发模块M300的分发数据时,首先存入内部队列。接入模块M400在启动时会开启循环,获取队列中的行情数据。取出行情数据时,先查找该只股票在当前接入模块M400是否有关注终端M500集合,不存在终端M500集合,不进行任何操作,否则开启线程遍历终端M500集合,将行情数据依次推送给终端M500。
在本发明上述实施例的技术方案中,股票行情数据在各个环节的流转都使用了内部队列进行解耦,快速响应上游请求;同时,可以在上游环节过滤过期、重复、无效的数据,减少无用数据的流转;此外,各层模块都可以设置自身的处理能力,超出能力上限时可以提示运维人员进行扩展。
通过以上的详细描述,本领域的技术人员易于理解,本发明实施例的技术方案具有以下优点中的一个或多个:
首先,根据本发明的一些实施方式,支持千万级终端接入,能够极大地降低终端接入成本,在海量终端接入和高频繁股票交易的情况下,也能够及时推送股票行情;同时将关注相同股票的终端进行聚合,以此集合作为推送单元,大大提升股票行情的推送效率。
其次,分发模块之间通过互相配置构成集群,进行数据转发,实现无限横向扩展,满足了高并发场景的需求。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本发明实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (10)
1.一种股票行情数据的分发方法,其特征在于,所述分发方法应用于股票行情数据的推送系统,所述推送系统至少包括提供股票行情数据的第一模块和分发股票行情数据的至少一个第二模块,所述分发方法包括:
根据所述至少一个第二模块发送的订阅终端订阅的股票信息,确定所有订阅终端订阅的所有股票信息;
将所述所有股票信息发送至所述第一模块;
接收所述第一模块根据所述所有股票信息发送的股票行情数据;
将所述股票行情数据发送至所述至少一个第二模块,以使所述至少一个第二模块将所述股票行情数据分发至相应的订阅终端。
2.根据权利要求1所述的股票行情数据的分发方法,其特征在于,还包括:
在接收到所述第一模块发送的股票行情数据时,判断接收到的股票行情数据的个数是否达到预定个数;
在判定接收到的股票行情数据的个数大于或等于所述预定个数时,放弃所述股票行情数据的推送。
3.根据权利要求2所述的股票行情数据的分发方法,其特征在于,所述预定个数为单位时间内能够分发至所述至少一个第二模块的个数上限。
4.根据权利要求2所述的股票行情数据的分发方法,其特征在于,还包括:
在放弃所述股票行情数据的推送之后,记录相关的日志信息。
5.根据权利要求2所述的股票行情数据的分发方法,其特征在于,还包括:
在判定接收到的股票行情数据的个数小于所述预定个数时,将所述股票行情数据存储至内存队列。
6.根据权利要求5所述的股票行情数据的分发方法,其特征在于,还包括:
计算从所述内存队列中取出的任一股票行情数据的取出时刻与存入时刻的时间差值;
在所述时间差值大于或等于预定时长时,放弃所述任一股票行情数据的推送。
7.根据权利要求6所述的股票行情数据的分发方法,其特征在于,在所述时间差值小于所述预定时长时,将所述任一股票行情数据发送至所述至少一个第二模块。
8.根据权利要求1至7中任一项所述的股票行情数据的分发方法,其特征在于,还包括:
根据所述所有订阅终端和所述所有股票信息,统计每只股票信息被订阅的终端数量。
9.一种股票行情数据的分发装置,其特征在于,所述分发装置应用于股票行情数据的推送系统,所述推送系统至少包括提供股票行情数据的第一模块和分发股票行情数据的至少一个第二模块,所述分发装置包括:
确定单元,用于根据所述至少一个第二模块发送的订阅终端订阅的股票信息,确定所有订阅终端订阅的所有股票信息;
第一发送单元,用于将所述所有股票信息发送至所述第一模块;
接收单元,用于接收所述第一模块根据所述所有股票信息发送的股票行情数据;
第二发送单元,用于将所述股票行情数据发送至所述至少一个第二模块,以使所述至少一个第二模块将所述股票行情数据分发至相应的订阅终端。
10.一种股票行情数据的推送系统,其特征在于,包括:第一模块、至少一个第二模块和第三模块,所述第三模块包括如权利要求9中所述的股票行情数据的分发装置;
其中,所述第一模块用于提供股票行情数据;
所述第二模块用于收集订阅终端订阅的股票信息,并用于接收所述第三模块发送的股票行情数据,将所述第三模块发送的股票行情数据分发至相应的订阅终端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710253917.6A CN107040598A (zh) | 2017-04-18 | 2017-04-18 | 股票行情数据的分发方法、分发装置及推送系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710253917.6A CN107040598A (zh) | 2017-04-18 | 2017-04-18 | 股票行情数据的分发方法、分发装置及推送系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107040598A true CN107040598A (zh) | 2017-08-11 |
Family
ID=59535976
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710253917.6A Pending CN107040598A (zh) | 2017-04-18 | 2017-04-18 | 股票行情数据的分发方法、分发装置及推送系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107040598A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111104594A (zh) * | 2019-12-12 | 2020-05-05 | 上海金纳信息科技有限公司 | 行情推送方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103024021A (zh) * | 2012-12-06 | 2013-04-03 | 志投科技(成都)有限公司 | 一种信息传输方法及系统 |
CN104951448A (zh) * | 2014-03-26 | 2015-09-30 | 北京雪球信息科技有限公司 | 一种为用户推送订阅类别的消息的方法和服务器 |
CN106230896A (zh) * | 2016-07-18 | 2016-12-14 | 深圳国泰安教育技术股份有限公司 | 一种消息推送方法、装置及系统 |
-
2017
- 2017-04-18 CN CN201710253917.6A patent/CN107040598A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103024021A (zh) * | 2012-12-06 | 2013-04-03 | 志投科技(成都)有限公司 | 一种信息传输方法及系统 |
CN104951448A (zh) * | 2014-03-26 | 2015-09-30 | 北京雪球信息科技有限公司 | 一种为用户推送订阅类别的消息的方法和服务器 |
CN106230896A (zh) * | 2016-07-18 | 2016-12-14 | 深圳国泰安教育技术股份有限公司 | 一种消息推送方法、装置及系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111104594A (zh) * | 2019-12-12 | 2020-05-05 | 上海金纳信息科技有限公司 | 行情推送方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107067325A (zh) | 股票行情数据的过滤方法、过滤装置和推送系统 | |
US20200293549A1 (en) | Blockchain-based data processing method and device | |
CN1905455B (zh) | 基于互联网和流媒体技术的开放式多媒体传输系统 | |
CN100531055C (zh) | 数据同步系统及其方法 | |
US20140324977A1 (en) | Enterprise social networking software architecture | |
CN109582722A (zh) | 公安资源数据服务系统 | |
CN105871574A (zh) | 一种基于软件开发工具包监控日志的方法、装置及系统 | |
CN109981416A (zh) | 一种区块链性能检测方法与系统 | |
CN107424072A (zh) | 高速分布式股票实时行情推送系统及方法 | |
CN108599992A (zh) | 一种数据处理系统及方法 | |
CN108881353A (zh) | 一种内容推送方法、装置及计算机可读存储介质 | |
US20190266278A1 (en) | IoT Data Management System and Method | |
CN108984333A (zh) | 用于大数据实时计算的方法及装置 | |
CN113535850A (zh) | 基于区块链的数据协同方法、装置及系统 | |
CN106202399A (zh) | 一种大数据的数据管理系统实现方法 | |
CN107040598A (zh) | 股票行情数据的分发方法、分发装置及推送系统 | |
CN106789286A (zh) | 一种网络拓扑图的显示方法和装置 | |
CN114036159A (zh) | 银行业务信息更新方法和系统 | |
CN111275583A (zh) | 一种基于人脸识别与数据库的服务方法 | |
CN103856359B (zh) | 获取信息的方法和系统 | |
CN104753964B (zh) | 网络产品展示方法、装置及系统 | |
CN106648888A (zh) | 一种基于区块链技术的分布式高性能计算系统及其运算方法 | |
CN110335148A (zh) | 证券数据并行处理系统及方法 | |
CN106506234B (zh) | 一种soa服务实时监控上报与服务性能度量方法 | |
CN101777163A (zh) | 多功能多传输方式的商务消费系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170811 |