CN111769909A - 一种基于行情数据级联重传的装置及方法 - Google Patents
一种基于行情数据级联重传的装置及方法 Download PDFInfo
- Publication number
- CN111769909A CN111769909A CN202010546935.5A CN202010546935A CN111769909A CN 111769909 A CN111769909 A CN 111769909A CN 202010546935 A CN202010546935 A CN 202010546935A CN 111769909 A CN111769909 A CN 111769909A
- Authority
- CN
- China
- Prior art keywords
- market
- data packet
- data
- retransmission request
- retransmission
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- 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/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于行情数据级联重传的装置及方法,所述装置包括:行情数据接收处理单元,用于选择连接上级行情网关,接收行情数据包保存至本地,并记录行情数据的相关信息;监听单元,用于开启重传服务监听端口,等待下级客户端连接,并于下级客户端连接成功后,等待下级客户端发送的重传请求;重传请求处理单元,用于解析下级客户端发送过来的重传请求,根据所述重传请求获取本地数据中对应的行情数据包,并发送至下级客户端;级联重传请求单元,用于当所述重传请求处理单元于本地获取的数据不全或者对应的行情数据包不存在时,向上级行情网关发送重传请求,以从所述上级行情网关获得所述重传请求对应的行情数据包发送至下级客户端。
Description
技术领域
本发明涉及计算机数据分析及传输技术领域,特别是涉及一种基于行情数据级联重传的装置及方法。
背景技术
随着信息技术快速发展,各行各业的信息化建设要求逐步提高,而数据分析及传输领域的实时性及性能要求也越来越高。
以行情数据为例,随着各交易所行情提速,原单向行情小站、行情VDE合并为行情网关MDGW,原文件方式的行情改造为数据流行情模式,为用户提供更快的速度。由于网关MDGW有接入数量限制,而券商一般有较多的应用系统需要加入行情数据,因而一种行情数据分发到各个应用系统的转发系统的应用比较普遍。在实际行情数据接入的过程中,因为网络条件或者一些应用系统自身问题的原因,可能出现连接中断,导致行情数据丢包,从而影响到一些系统的统计结果。
行情网关一般会提供一个重传端口,用于下游重新获取历史数据,但同时存在一些问题,当下游系统过多,重传请求量过大的时候,网关可能不能及时提供服务或者拒绝,导致应用系统无法及时进行数据回补。因此,一种行情数据级联重传的需求也是越来越迫切。
发明内容
为克服上述现有技术存在的不足,本发明之目的在于提供一种基于行情数据级联重传的装置及方法,以便下游应用在出现数据丢包或其他原因需要进行数据回补时,可利用级联重传通道获取回补行情数据,同时支持并发处理,从而减轻网关的压力,保证行情数据的实时性和完整性。
为达上述目的,本发明提出一种基于行情数据级联重传的装置,包括:
行情数据接收处理单元,用于选择连接上级行情网关,接收行情数据包保存至本地,并记录行情数据的相关信息;
监听单元,用于开启重传服务监听端口,等待下级客户端连接,并于下级客户端连接成功后,等待下级客户端发送的重传请求;
重传请求处理单元,用于解析下级客户端发送过来的重传请求,根据所述重传请求获取本地数据中对应的行情数据包,并发送至下级客户端;
级联重传请求单元,用于当所述重传请求处理单元于本地获取的数据不全或者对应的行情数据包不存在时,向上级行情网关发送重传请求,以从所述上级行情网关获得所述重传请求对应的行情数据包发送至下级客户端。
优选地,所述行情数据接收处理单元进一步包括:
连接模块,向上级行情网关发送连接请求,以建立连接,于建立连接后,从上级行情网关接收行情数据包;
行情数据解析模块,用于解析接收到的行情数据数据包,校验数据有效性,于接收的数据包正常时,将解析后的完整数据包存入一接收队列;
解码模块,用于从所述接收队列获取行情数据包,进行行情数据包解码;
存储模块,用于在解码完成后将原始数据包存入一本地文件,并将解码后的证券代码、频道号、产品类别、序号,以及数据包大小、文件中偏移位置、文件名称路径存入本地数据库。
优选地,于行情数据解析模块中,如果校验结果为接收的数据包异常,则通知所述连接模块断开连接,并重新连接备用的上级行情网关以获取行情数据包。
优选地,所述存储模块在将原始数据包存入所述文件之前,还对所存入的文件检查过期设置,自动将所述文件中过期的历史行情数据清理。
优选地,所述存储模块于若干时间后或文件大小超过指定大小后自动生成新文件,以用于存储行情数据包。
优选地,所述重传请求处理单元进一步包括:
重传请求解析模块,用于解析下级客户端发送过来的重传请求,根据所述重传请求的数据包查询本地数据库,获取对应文件名称路径及偏移位置和数据大小;
行情数据包获取模块,根据所述重传请求解析模块获取的文件名称路径及偏移位置和数据大小,于所述存储模块所存入的文件获取对应的行情数据包,并根据获取结果,发送至当前下级客户端,完成重传应答。
优选地,所述级联重传请求单元进一步包括:
请求队列生成模块,用于将向上级行情网关发起的重传请求加入至一重传请求队列进行排队;
连接状态检查处理模块,用于从所述重传请求队列获取重传请求数据包,检查所述装置与上级行情网关的连接状态;
重传请求模块,用于将获取的重传请求数据包发送至连接的上级行情网关,并等待接收重传应答数据,若等待超时,则发送获取失败应答给下级客户端,若成功接收,则将接收到的重传应答数据转发至下级客户端,并将接收数据以文件方式保存在本地,而将文件路径和相应的数据包偏移位置等信息保存在本地数据库中。
优选地,所述重传请求数据包至少包括证券代码、请求序号段、产品类别、频道号。
优选地,所述连接状态检查处理模块根据预先设置的发送频率从所述重传请求队列获取重传请求数据包。
为达到上述目的,本发明还提供一种基于行情数据级联重传的方法,包括如下步骤:
步骤S1,选择连接上级行情网关,接收上级行情网关的行情数据,保存至本地,并记录行情数据的相关信息;
步骤S2,开启重传服务监听端口,等待下级客户端连接,并于下级客户端连接成功后,等待下级客户端发送的重传请求;
步骤S3,解析下级客户端发送过来的重传请求,根据所述重传请求获取本地数据中对应的行情数据包,并发送至下级客户端;
步骤S4,当根据步骤S3于本地获取的数据不全或者对应的行情数据包不存在时,则根据下级客户端发送过来的重传请求的解析结果对向上级行情网关发送重传请求,以从上级行情网关获得所述重传请求对应的行情数据包发送至下级客户端。
与现有技术相比,本发明具有如下有益效果:
1.有效避免上级行情网关重传压力;2、数据落盘自动清理过期数据;3.通过本地数据库存储偏移信息,可快速检索并获取重传数据进行传输。3.支持多级级联方式,多应用接入,减少当前节点并发处理的压力;4、当前节点获取不全时,自动排队向上游请求获取;5.支持高可用配,请求上级连接异常时,自动切换其他节点获取重传数据;6.提供标准接入接口供第三方系统或应用接入。
附图说明
图1为本发明一种基于行情数据级联重传的装置的系统架构图;
图2为本发明具体实施例中行情数据接收处理单元的细部结构图;
图3为本发明具体实施例中重传请求处理单元的细部结构图;
图4为本发明具体实施例中级联重传请求单元的细部结构图;
图5为本发明一种基于行情数据级联重传的方法的步骤流程图;
图6为本发明实施例的架构图;
图7为本实施例中重传节点的行情数据从数据端口接收的流程图;
图8为本实施例中行情数据包解码及存入本地数据库和文件的流程图;
图9为本实施例中重传节点处理重传请求的流程图;
图10为本实施例中级联向上级发送重传请求获取重传数据的流程图。
具体实施方式
以下通过特定的具体实例并结合附图说明本发明的实施方式,本领域技术人员可由本说明书所揭示的内容轻易地了解本发明的其它优点与功效。本发明亦可通过其它不同的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离本发明的精神下进行各种修饰与变更。
图1为本发明一种基于行情数据级联重传的装置的系统架构图。如图1所示,本发明一种基于行情数据级联重传的装置,包括:
行情数据接收处理单元10,用于选择连接行情网关,接收行情数据,保存至本地,并记录行情数据的相关信息。
在本发明中,所述装置连接上级的行情网关,以接收行情数据,对行情数据处理后存入本地数据库。具体地,如图2所示,行情数据接收处理单元10进一步包括:
连接模块101,向上级行情网关发送连接请求,以建立连接,于建立连接后,从上级行情网关接收行情数据。
行情数据解析模块102,用于解析接收到的行情数据数据包,校验数据有效性,如果接收的数据包异常,则说明数据源异常,则通知连接模块101断开连接,重新连接正常网关(即备用的上级网关)以获取数据,如果接收的数据包正常,则将解析后的完整数据包存入一接收队列。在本发明具体实施例中,上级行情网关会发送的行情数据将数据包消息体按位运算后,得到校验码,存储到数据包结尾处,作为下级的基于行情数据级联重传的装置的行情数据解析模块102接收到该行情数据数据包后,则会按相同算法运算并匹配结尾处校验码,若匹配则判断接收的数据包正常,若不能匹配则说明接收的行情数据数据包异常,则断开当前连接,重新连接备用的上级网关,其中备用的上级网关可以预先定义。
解码模块103,用于从接收队列获取数据包,进行行情数据包解码。在本发明具体实施例中,根据行情网关源类别,解码协议一般分为FIX(Financial InformationeXchange protocol金融信息交换协议)、FAST(FIX Adapted For Streaming面向流的信息交换协议)、STEP(Security Trade Exchange Protocol证券交易数据交换协议)、Binary(二进制格式的协议)。
存储模块104,用于在解码完成后将原始数据包存入一本地文件,并将解码后的证券代码、频道号、产品类别、序号等信息,以及数据包大小、文件中偏移位置、文件名称路径等信息存入本地数据库。优选地,在将原始数据包存入文件之前,为避免行情数据占用空间过大,存储模块104还对所存入的文件检查过期设置,自动将所述文件中过期的历史行情数据清理。为避免单个数据文件过大,可于若干时间(例如每小时)后或文件大小超过指定大小后自动生成新文件,以存储行情数据。
监听单元11,用于开启重传服务监听端口,等待下级客户端连接,并于下级客户端连接成功后,等待下级客户端发送的重传请求。
重传请求处理单元12,用于解析下级客户端发送过来的重传请求,根据所述重传请求获取本地数据中对应的行情数据包,并发送至下级客户端。
具体地,如图3所示,重传请求处理单元12进一步包括:
重传请求解析模块121,用于解析下级客户端发送过来的重传请求,根据所述重传请求查询本地数据库,获取对应文件名称路径及偏移位置和数据大小。在本发明具体实施例中,所述重传请求的数据包中至少包括证券代码、请求序号段、产品类别、频道号,则根据重传请求数据包中的证券代码、请求序号段、产品类别、频道号查询本地数据库,获取对应文件名称路径及偏移位置和数据大小;
行情数据包获取模块121,根据重传请求解析模块121获取的文件名称路径及偏移位置和数据大小,于存储模块104所存入的文件获取对应的行情数据包,并根据获取结果,发送至至当前下级客户端,完成重传应答;
级联重传请求单元13,用于当重传请求处理单元12于本地获取的数据不全或者对应的行情数据包不存在时,向上级行情网关发送重传请求,所述重传请求的数据包中至少包括证券代码、请求序号段、产品类别、频道号,以获得所述重传请求对应的行情数据包发送至下级客户端。
具体地,如图4所示,级联重传请求单元13进一步包括:
请求队列生成模块131,用于将向上级行情网关发起的重传请求加入至一重传请求队列进行排队。也就是说,当重传请求处理单元12于本地检索对应请求的数据不全或者不存在时,级联向上游的行情网关发起重传请求,所述重传请求的数据包中至少包括证券代码、请求序号段、产品类别、频道号,在本发明具体实施例中,为避免并发请求量过大,将重传请求加入一重传请求队列排队。
连接状态检查处理模块132,用于从重传请求队列获取重传请求数据包,检查本装置与上级行情网关的连接状态,若连接异常,则重新发起连接至成功或超时退出。
优选地,所述连接状态检查处理模块132还可根据预先设置的发送频率从重传请求队列获取重传请求数据包,如果发送过于频繁,则等待一定时间后再发送重传请求,减轻上级行情网关的压力。
重传请求模块133,用于将获取的重传请求数据包发送至连接的上级行情网关,并等待接收重传应答数据,若等待超时,则发送获取失败应答给下级客户端,若成功接收,将接收到的重传应答数据转发至下级客户端,同时将接收数据以文件方式保存在本地,而将文件路径和相应的数据包偏移位置等信息保存在本地数据库中。
图5为本发明一种基于行情数据级联重传的方法的步骤流程图。如图5所示,本发明一种基于行情数据级联重传的方法,包括如下步骤:
步骤S1,选择连接上级行情网关,接收上级行情网关的行情数据,保存至本地,并记录行情数据的相关信息。
在本发明中,该基于行情数据级联重传的装置连接上级的行情网关,以接收行情数据,对行情数据处理后存入本地数据库。
具体地,步骤S1进一步包括:
步骤S100,向上级行情网关发送连接请求,以建立连接,于建立连接后,从上级行情网关接收行情数据包。
步骤S101,解析接收到的行情数据数据包,校验数据有效性,如果接收的数据包异常,则说明数据源异常,则断开连接,返回步骤S1重新连接正常网关以获取数据,如果接收的数据包正常,则将解析后的完整数据包存入一接收队列。在本发明具体实施例中,所述正常网关指的是备用的上级网管,可预先定义。
步骤S102,从接收队列获取数据包,进行行情数据包解码。在本发明具体实施例中,根据行情网关源类别,解码协议一般分为FIX(Financial Information eXchangeprotocol金融信息交换协议)、FAST(FIX Adapted For Streaming面向流的信息交换协议)、STEP(Security Trade Exchange Protocol证券交易数据交换协议)、Binary(二进制格式的协议)。
步骤S103,在解码完成后将原始数据包存入一本地文件,并将解码后的证券代码、频道号、产品类别、序号等信息,以及数据包大小、文件中偏移位置、文件名称路径等信息存入本地数据库。优选地,在将原始数据包存入文件之前,为避免行情数据占用空间过大,还对所存入的文件检查过期设置,自动将所述文件中过期的历史行情数据清理。为避免单个数据文件过大,可于若干时间(例如每小时)后或文件大小超过指定大小后自动生成新文件,以存储行情数据。
步骤S2,开启重传服务监听端口,等待下级客户端连接,并于下级客户端连接成功后,等待下级客户端发送的重传请求。
步骤S3,解析下级客户端发送过来的重传请求,根据所述重传请求获取本地数据中对应的行情数据包,并发送至下级客户端。
具体地,步骤S3进一步包括:
步骤S300,解析下级客户端发送过来的重传请求,根据所述重传请求查询本地数据库,获取对应文件名称路径及偏移位置和数据大小。在本发明具体实施例中,所述重传请求的数据包中至少包括证券代码、请求序号段、产品类别、频道号,则根据重传请求数据包中的证券代码、请求序号段、产品类别、频道号查询本地数据库,获取对应文件名称路径及偏移位置和数据大小;
步骤S301,根据获取的文件名称路径及偏移位置和数据大小,于步骤S103所存入的文件获取对应的行情数据包,并根据获取结果,发送至至当前下级客户端,完成重传应答;
步骤S4,当根据步骤S3于本地获取的数据不全或者对应的行情数据包不存在时,则根据下级客户端发送过来的重传请求的解析结果对向上级行情网关发送重传请求,所述重传请求的数据包中至少包括证券代码、请求序号段、产品类别、频道号,以获得所述重传请求对应的行情数据包发送至下级客户端。
具体地,步骤S4进一步包括:
步骤S400,将向上级行情网关发起的重传请求加入至一重传请求队列进行排队。也就是说,当根据步骤S3于本地检索对应请求的数据不全或者不存在时,级联向上游的行情网关发起重传请求,所述重传请求的数据包中至少包括证券代码、请求序号段、产品类别、频道号,在本发明具体实施例中,为避免并发请求量过大,将重传请求加入一重传请求队列排队。
步骤S401,从重传请求队列获取重传请求数据包,检查本装置与上级行情网关的连接状态,若连接异常,则重新发起连接至成功或超时退出。
优选地,于步骤S401中,还可根据预先设置的发送频率从重传请求队列获取重传请求数据包,如果发送过于频繁,则等待一定时间后再发送重传请求,减轻上级行情网关的压力。
步骤S402,将获取的重传请求数据包发送至连接的上级行情网关,并等待接收重传应答数据,若等待超时,则发送获取失败应答给下级客户端,若成功接收,则将接收到的重传应答数据转发至下级客户端,同时将接收数据以文件方式保存在本地,而将文件路径和相应的数据包偏移位置等信息保存在本地数据库中。
实施例
图6为本发明实施例的架构图,描述了几个主要的层级,图中的各种节点都包含发送模块和接收模块,因此可以多层级联,其中重传节点代表本发明之基于行情数据级联重传的装置,当重传节点接收到行情数据后,保存至本地数据库(DB),实线表示行情数据的流向,虚线表示重传请求及应答数据的流向,重传请求由下游应用系统发起,节点接收后,通过查询本地数据库返回应答数据,或者重传请求继续向当前节点的上级节点发起,接收到重传应答后,再将应答数据转发给对应下游应用。
当下游的应用系统连接网关或上级节点接收行情时,因为网络或者程序处理异常原因,导致行情数据丢包,此时可以通过连接重传节点,发起重传请求,获取丢失的行情数据包,完成行情数据的回补,从而达到数据完整接收的目的。
图7为本实施例中重传节点的行情数据从数据端口接收的流程图,其过程如下:
首先,重传节点发起连接与上级网关建立连接,接收行情数据。
然后,解析接收到的行情数据,校验数据有效性,如果数据包异常,则说明数据源异常,断开连接,重新连接正常网关获取数据。
如果数据正常,则将解析后的完整数据包存入接收队列。
图8为本实施例中行情数据包解码及存入本地数据库和文件的流程图,其过程如下:
首先,从接收队列获取数据包,进行行情数据包解码,根据行情网关源类别,解码协议一般分为FIX(Financial Information eXchange protocol金融信息交换协议)、FAST(FIX Adapted For Streaming面向流的信息交换协议)、STEP(Security Trade ExchangeProtocol证券交易数据交换协议)、Binary(二进制格式的协议)。
其次,解码完成后将原始数据包存入文件,存入之前,为避免行情数据占用空间过大,需检查过期设置,自动将过期的历史行情数据清理。同时,为避免单个数据文件过大,每小时或超过指定大小后自动生成新文件,存储行情数据。
接着,将解码后的证券代码、频道号、产品类别、序号等信息,以及数据包大小、文件中偏移位置、文件名称路径等信息存入数据库。
循环处理接收队列数据存入文件和本地数据库直至处理完毕程序退出。
图9为本实施例中重传节点处理重传请求的流程图,其过程如下:
首先,开启重传服务监听端口,等待下级客户端连接。连接成功后,等待下级客户端发送的重传请求。
然后,解析下级客户端发送过来的重传请求,根据请求数据包中证券代码、请求序号段、产品类别、频道号查询本地数据库,获取对应文件名称路径及偏移位置和数据大小。
接着,根据于本地数据库中查询的信息,读取文件中对应的行情数据包,并发送至指定下级应用,完成重传应答。
如果于本地数据库中,检索对应请求的数据不全或者不存在,则需要级联向上游的上级行情网关发起请求。在本实施例中,为避免并发请求量过大,此时将重传请求加入请求队列排队。
图10为本实施例中级联向上级发送重传请求获取重传数据的流程图,其过程如下:
首先,从重传请求队列获取请求数据包,检查预先设置的发送频率,如果发送过于频繁,则等待一定时间后发送请求,避免网关压力。
然后,获取到重传请求数据包后,检查本节点与上级节点或网关的连接状态,如果连接异常,则重新发起连接至成功或超时退出。
接着,将重传请求数据包发送至上级节点或网关,并等待接收重传应答数据。如果等待超时,则发送获取失败应答给下游应用;如果成功,则将接收到的重传应答数据转发至下游应用,并将接收数据以文件方式保存在本地,而将文件路径和相应的数据包偏移位置等信息保存在本地数据库中。
最后,重复检查重传队列,直至请求处理完毕。
综上所述,本发明一种基于行情数据级联重传得装置及方法通过将行情数据包从上级网关接收到本地,于下级应用发送重传请求时,通过对重传请求的应答传输给下游应用,本发明使用多线程和高效IO通信模式处理提高性能,同时本地数据库保存数据偏移信息可以快速检索,并且以数据包为单位发送至下游应用,可以保证下游应用能及时获取到重传数据进行数据回补,从而减少网关压力,同时保证下级行情数据的实时和完整。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何本领域技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰与改变。因此,本发明的权利保护范围,应如权利要求书所列。
Claims (10)
1.一种基于行情数据级联重传的装置,包括:
行情数据接收处理单元,用于选择连接上级行情网关,接收行情数据包保存至本地,并记录行情数据的相关信息;
监听单元,用于开启重传服务监听端口,等待下级客户端连接,并于下级客户端连接成功后,等待下级客户端发送的重传请求;
重传请求处理单元,用于解析下级客户端发送过来的重传请求,根据所述重传请求获取本地数据中对应的行情数据包,并发送至下级客户端;
级联重传请求单元,用于当所述重传请求处理单元于本地数据中获取的数据不全或者对应的行情数据包不存在时,向上级行情网关发送重传请求,以从所述上级行情网关获得所述重传请求对应的行情数据包发送至下级客户端。
2.如权利要求1所述的一种基于行情数据级联重传的装置,其特征在于,所述行情数据接收处理单元进一步包括:
连接模块,向上级行情网关发送连接请求,以建立连接,于建立连接后,从上级行情网关接收行情数据包;
行情数据解析模块,用于解析接收到的行情数据数据包,校验数据有效性,于接收的数据包正常时,将解析后的完整数据包存入一接收队列;
解码模块,用于从所述接收队列获取行情数据包,进行行情数据包解码;
存储模块,用于在解码完成后将原始数据包存入一本地文件,并将解码后的证券代码、频道号、产品类别、序号,以及数据包大小、文件中偏移位置、文件名称路径存入本地数据库。
3.如权利要求2所述的一种基于行情数据级联重传的装置,其特征在于:于:于行情数据解析模块中,如果校验结果为接收的数据包异常,则通知所述连接模块断开连接,并重新连接备用的上级行情网关以获取行情数据包。
4.如权利要求2所述的一种基于行情数据级联重传的装置,其特征在于:于:所述存储模块在将原始数据包存入所述文件之前,还对所存入的文件检查过期设置,自动将所述文件中过期的历史行情数据清理。
5.如权利要求4所述的一种基于行情数据级联重传的装置,其特征在于:于:所述存储模块于若干时间后或文件大小超过指定大小后自动生成新文件,以用于存储行情数据包。
6.如权利要求2所述的一种基于行情数据级联重传的装置,其特征在于,所述重传请求处理单元进一步包括:
重传请求解析模块,用于解析下级客户端发送过来的重传请求,根据所述重传请求的数据包查询本地数据库,获取对应文件名称路径及偏移位置和数据大小;
行情数据包获取模块,根据所述重传请求解析模块获取的文件名称路径及偏移位置和数据大小,于所述存储模块所存入的文件获取对应的行情数据包,并根据获取结果,发送至当前下级客户端,完成重传应答。
7.如权利要求6所述的一种基于行情数据级联重传的装置,其特征在于:所述级联重传请求单元进一步包括:
请求队列生成模块,用于将向上级行情网关发起的重传请求加入至一重传请求队列进行排队;
连接状态检查处理模块,用于从所述重传请求队列获取重传请求数据包,检查所述装置与上级行情网关的连接状态;
重传请求模块,用于将获取的重传请求数据包发送至连接的上级行情网关,并等待接收重传应答数据,若等待超时,则发送获取失败应答给下级客户端,若成功接收,则将接收到的重传应答数据转发至下级客户端,并将接收数据以文件方式保存在本地,将文件路径和相应的数据包偏移位置等信息保存在本地数据库中。
8.如权利要求7所述的一种基于行情数据级联重传的装置,其特征在于:所述重传请求数据包至少包括证券代码、请求序号段、产品类别、频道号。
9.如权利要求7所述的一种基于行情数据级联重传的装置,其特征在于:所述连接状态检查处理模块根据预先设置的发送频率从所述重传请求队列获取重传请求数据包。
10.一种基于行情数据级联重传的方法,包括如下步骤:
步骤S1,选择连接上级行情网关,接收上级行情网关的行情数据,保存至本地,并记录行情数据的相关信息;
步骤S2,开启重传服务监听端口,等待下级客户端连接,并于下级客户端连接成功后,等待下级客户端发送的重传请求;
步骤S3,解析下级客户端发送过来的重传请求,根据所述重传请求获取本地数据中对应的行情数据包,并发送至下级客户端;
步骤S4,当根据步骤S3于本地获取的数据不全或者对应的行情数据包不存在时,则根据下级客户端发送过来的重传请求的解析结果对向上级行情网关发送重传请求,以从上级行情网关获得所述重传请求对应的行情数据包发送至下级客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010546935.5A CN111769909B (zh) | 2020-06-16 | 2020-06-16 | 一种基于行情数据级联重传的装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010546935.5A CN111769909B (zh) | 2020-06-16 | 2020-06-16 | 一种基于行情数据级联重传的装置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111769909A true CN111769909A (zh) | 2020-10-13 |
CN111769909B CN111769909B (zh) | 2023-05-09 |
Family
ID=72722601
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010546935.5A Active CN111769909B (zh) | 2020-06-16 | 2020-06-16 | 一种基于行情数据级联重传的装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111769909B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112565430A (zh) * | 2020-12-08 | 2021-03-26 | 上证所信息网络有限公司 | 一种多市场行情数据在广域网的低时延可靠传输方法 |
CN112822256A (zh) * | 2020-12-31 | 2021-05-18 | 上海英方软件股份有限公司 | 一种行情文件转数据流传输的方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0907277A1 (en) * | 1997-10-02 | 1999-04-07 | Branescu Limited | A data communication and processing system |
CN101567769A (zh) * | 2008-04-22 | 2009-10-28 | 华为技术有限公司 | 数据重传方法、系统及对等节点 |
CN104935619A (zh) * | 2014-03-20 | 2015-09-23 | 上海宝信软件股份有限公司 | 基于中间件的网络服务方法 |
CN106790012A (zh) * | 2016-12-14 | 2017-05-31 | 深圳市彬讯科技有限公司 | 基于802.1x协议数据包验证的用户身份认证方法 |
CN108616549A (zh) * | 2016-12-12 | 2018-10-02 | 北京视联动力国际信息技术有限公司 | 一种文件上传方法及文件服务器 |
CN109086098A (zh) * | 2018-07-23 | 2018-12-25 | 郑州云海信息技术有限公司 | 一种日志文件清理方法及相关装置 |
CN110958265A (zh) * | 2019-12-16 | 2020-04-03 | 上海英方软件股份有限公司 | 一种基于行情数据实时转发的方法及装置 |
-
2020
- 2020-06-16 CN CN202010546935.5A patent/CN111769909B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0907277A1 (en) * | 1997-10-02 | 1999-04-07 | Branescu Limited | A data communication and processing system |
CN101567769A (zh) * | 2008-04-22 | 2009-10-28 | 华为技术有限公司 | 数据重传方法、系统及对等节点 |
CN104935619A (zh) * | 2014-03-20 | 2015-09-23 | 上海宝信软件股份有限公司 | 基于中间件的网络服务方法 |
CN108616549A (zh) * | 2016-12-12 | 2018-10-02 | 北京视联动力国际信息技术有限公司 | 一种文件上传方法及文件服务器 |
CN106790012A (zh) * | 2016-12-14 | 2017-05-31 | 深圳市彬讯科技有限公司 | 基于802.1x协议数据包验证的用户身份认证方法 |
CN109086098A (zh) * | 2018-07-23 | 2018-12-25 | 郑州云海信息技术有限公司 | 一种日志文件清理方法及相关装置 |
CN110958265A (zh) * | 2019-12-16 | 2020-04-03 | 上海英方软件股份有限公司 | 一种基于行情数据实时转发的方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112565430A (zh) * | 2020-12-08 | 2021-03-26 | 上证所信息网络有限公司 | 一种多市场行情数据在广域网的低时延可靠传输方法 |
CN112565430B (zh) * | 2020-12-08 | 2023-01-24 | 上证所信息网络有限公司 | 一种多市场行情数据在广域网的低时延可靠传输方法 |
CN112822256A (zh) * | 2020-12-31 | 2021-05-18 | 上海英方软件股份有限公司 | 一种行情文件转数据流传输的方法及装置 |
CN112822256B (zh) * | 2020-12-31 | 2023-01-17 | 上海英方软件股份有限公司 | 一种行情文件转数据流传输的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111769909B (zh) | 2023-05-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2563062B1 (en) | Long connection management apparatus and link resource management method for long connection communication | |
JP2698336B2 (ja) | デジタルデータ処理システムのためのローカルエリアネットワークに用いるノード | |
US8769025B2 (en) | Cluster server of an instant messaging system and messaging method between clusters | |
US8041832B2 (en) | Network data distribution system and method | |
US9237077B2 (en) | Monitoring persistent client connection status in a distributed server environment | |
US20030140149A1 (en) | Communication protocol for use in controlling communications in a monitoring service system | |
CN102027461A (zh) | 扩展的消息收发平台 | |
WO2007011533A2 (en) | Content router | |
WO2007011483A2 (en) | Content router repository | |
CN111769909A (zh) | 一种基于行情数据级联重传的装置及方法 | |
JP2005532748A (ja) | ペイロード検査、アラートサービス、デジタルコンテンツ配信、及びサービス品質管理のためのパケットルーティング、並びに発行−購読ネットワークにおける選択的なマルチキャスティングを含むキャッシング | |
JP4028847B2 (ja) | 共通作業キュー環境における最適格サーバ | |
WO2012075970A1 (zh) | 一种获取媒体内容的方法、设备及系统 | |
US7043561B2 (en) | System and method for prioritizing requests for server services | |
CN113065958A (zh) | 一种主题行情业务数据流式系统 | |
CN115080272A (zh) | 一种业务数据处理方法、电子设备及存储介质 | |
CN102859970A (zh) | 被表示为互联网协议地址的值 | |
US7388834B2 (en) | System and method for controlling network traffic flow in a multi-processor network | |
KR20110044273A (ko) | 메시지 라우팅 플랫폼 | |
US7822056B2 (en) | LCR switch with header compression | |
CN108259576B (zh) | 一种软硬件实时信息传输系统和方法 | |
CN116405547A (zh) | 消息推送方法、装置及处理器、电子设备、存储介质 | |
CN114221925A (zh) | 消息推送方法、装置、电子设备及存储介质 | |
EP1736886A1 (en) | Methods for configuring cache memory size | |
CN114553938B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |