System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于Timeline模型的数据信息推送方法、网关及相关设备技术_技高网

一种基于Timeline模型的数据信息推送方法、网关及相关设备技术

技术编号:40678476 阅读:3 留言:0更新日期:2024-03-18 19:17
本发明专利技术公开了一种基于Timeline模型的数据信息推送方法、网关及相关设备,本方案依据Timeline模型,构建具有良好的收发性能、支持消息多端同步且互不干扰和实现行情数据漫游的债券行情推送网关。本发明专利技术能实现对每一个接收端推送符合其身份的数据,保证推送数据的时序性和有效性,在消息积压时也不影响到新数据的推送,支持对全量数据做持久化处理以实现消息漫游和数据备份。

【技术实现步骤摘要】

本专利技术涉及数据处理技术,具体涉及数据信息推送技术。


技术介绍

1、债券行情推送是金融公司核心业务之一,根据用户筛选的条件,网关能快速将其订阅的数据推送给用户。现有的债券行情推送网关主要是由qpid,rabbitmq,lava等消息中间件组成,从上游获取的数据放入相关队列后供下游消费。

2、现有的债券行情推送网关方案在实际应用时普遍存在容易出现高延迟、推送性能下降以及宕机的问题。

3、如以qpid为主的消息推送架构,在实际应用时主要存在以下问题:

4、1.如果有服务器资源不足等问题会导致出现高延迟的情况,严重时会造成队列阻塞;

5、2.如果消息大量积压,推送消息的性能会急剧下降;

6、3.交易高峰时段,随着用户访问量的剧增,可能会宕机风险。

7、由此可见,提供一种消息推送性能稳定可靠的债券行情推送网关方案为本领域亟需解决的技术问题。


技术实现思路

1、针对现有债券行情推送方案所存在的问题,本专利技术的目的在于提供一种基于timeline模型的数据信息推送方法,依据timeline模型构建债券行情推送方案,良好的收发性能、支持消息多端同步且互不干扰和实现行情数据漫游的债券行情推送;在此基础上,本专利技术进一步提供了能够实施该方法的数据信息推送网关以及相关设备。

2、为了达到上述目的,本专利技术提供的基于timeline模型的数据信息推送方法,所述推送方法包括:

3、步骤1:创建全局内存缓存,用来存放接收到的数据信息;

4、步骤2:创建全局的timeline结构,初始化用户推送位置;

5、步骤3:基于数据信息接收线程来连接数据信息源,并监测是否有客户端连接请求;

6、步骤4:根据客户端的连接请求,针对每一类消息,在收到客户端ack消息时,记录用户的初始接收消息位置,并加入timeline结构;

7、步骤5:创建推送线程,后续轮询推送通道列表,向客户端推送数据;

8、步骤6:从消息源接收到相应的数据信息,放入全局缓存,同时触发推送线程轮询推送通道列表,向客户端推送数据,记录该用户新推送的位置。

9、在本专利技术的一些实例中,所述步骤(2)中通过创建一个store类型的静态变量作为timeline存储数据的位置,并进一步结合能够唯一标识timeline的timelineid来创建全局的timeline结构。

10、在本专利技术的一些实例中所述步骤(5)中在监听到的第一个连接请求后,由线程池创建推送线程。

11、在本专利技术的一些实例中所述步骤(6)中针对客户端发送的携带sequenceid的请求,从全局的timeline结构中根据请求中所携带的sequenceid所在位置及其后面所有数据,获取对应的数据包,压缩后推送;若后续收到客户端的响应ack消息,将其中包含的seqid存入获取到的所有用户seqid的表中,记录此用户的最新消息位置。

12、在本专利技术的一些实例中,所述推送方法在针对相应数据信息不可推时,则下一次轮询继续推送。

13、在本专利技术的一些实例中,所述推送方法针对不可推的数据信息进行下一次轮询继续推送时,继续从未成功推送的seqid开始。

14、为了达到上述目的,本专利技术提供的基于timeline模型的数据信息推送网关,所述数据信息推送网关包括上游数据接收模块、推送模块以及timeline模块;

15、所述上游数据接收模块基于disruptor+redis架构,disruptor生产者用于接收上游数据服务,disruptor有多个消费者,分别用于保存上游数据至redis备份、将数据存入全局timeline的本地缓存;

16、所述推送模块根据收到消息,确定推送目标,搜索目标对应的推送上下文(timeline),然后调用客户端推送通道发送数据;

17、所述timeline模块用于维护本地存储的数据信息,当客户端发起请求后,从请求携带的seqid和权限信息,判断是否推送,触发推送线程。

18、为了达到上述目的,本专利技术还提供一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现上述数据信息推送方法的步骤。

19、为了达到上述目的,本专利技术还提供了一种处理器,所述处理器用于运行程序,所述程序运行时执行上述数据信息推送方法的步骤。

20、为了达到上述目的,本专利技术还提供了一种终端设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,所述程序代码由所述处理器加载并执行以实现上述数据信息推送方法的步骤。

21、为了达到上述目的,本专利技术还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行上述数据信息推送方法的步骤。

22、本专利技术提供的方案能够实现对每一个接收端推送符合其身份的数据,保证推送数据的时序性和有效性。

23、timeline里内嵌的存储结构,确保收到的消息按序存放,每条消息位置唯一,确保数据的时序性。由于本系统推送性能优异,确保数据及时推送到客户端,因此提高了数据的有效性。

24、本专利技术提供的方案能够在消息积压时也不影响到新数据的推送,支持对全量数据做持久化处理以实现消息漫游和数据备份。

25、当天数据在记录到timeline结构时,同时保存在集群架构的redis缓存中,达到了数据达到持久化目标,客观上实现了数据备份,支持消息漫游。

本文档来自技高网...

【技术保护点】

1.基于Timeline模型的数据信息推送方法,其特征在于,所述推送方法包括:

2.根据权利要求1所述的基于Timeline模型的数据信息推送方法,其特征在于,所述步骤(2)中通过创建一个Store类型的静态变量作为Timeline存储数据的位置,并进一步结合能够唯一标识Timeline的TimelineID来创建全局的timeline结构。

3.根据权利要求1所述的基于Timeline模型的数据信息推送方法,其特征在于,所述步骤(5)中在监听到的第一个连接请求后,由线程池创建推送线程。

4.根据权利要求1所述的基于Timeline模型的数据信息推送方法,其特征在于,所述步骤(6)中针对客户端发送的携带sequenceID的请求,从全局的Timeline结构中根据请求中所携带的sequenceID所在位置及其后面所有数据,获取对应的数据包,压缩后推送;若后续收到客户端的响应ack消息,将其中包含的seqID存入获取到的所有用户seqID的表中,记录此用户的最新消息位置。

5.根据权利要求1所述的基于Timeline模型的数据信息推送方法,其特征在于,所述推送方法在针对相应数据信息不可推时,则下一次轮询继续推送。

6.根据权利要求5所述的基于Timeline模型的数据信息推送方法,其特征在于,所述推送方法针对不可推的数据信息进行下一次轮询继续推送时,继续从未成功推送的seqID开始。

7.基于Timeline模型的数据信息推送网关,其特征在于,所述数据信息推送网关包括上游数据接收模块、推送模块以及Timeline模块;

8.一种计算机可读存储介质,其上存储有程序,其特征在于,所述程序被处理器执行时实现权利要求1-6中任一项所述的数据信息推送方法的步骤。

9.一种处理器,所述处理器用于运行程序,其特征在于,所述程序运行时执行权利要求1-6中任一项所述的数据信息推送方法的步骤。

10.一种终端设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,其特征在于,所述程序代码由所述处理器加载并执行以实现权利要求1-6中任一项所述的数据信息推送方法的步骤。

...

【技术特征摘要】

1.基于timeline模型的数据信息推送方法,其特征在于,所述推送方法包括:

2.根据权利要求1所述的基于timeline模型的数据信息推送方法,其特征在于,所述步骤(2)中通过创建一个store类型的静态变量作为timeline存储数据的位置,并进一步结合能够唯一标识timeline的timelineid来创建全局的timeline结构。

3.根据权利要求1所述的基于timeline模型的数据信息推送方法,其特征在于,所述步骤(5)中在监听到的第一个连接请求后,由线程池创建推送线程。

4.根据权利要求1所述的基于timeline模型的数据信息推送方法,其特征在于,所述步骤(6)中针对客户端发送的携带sequenceid的请求,从全局的timeline结构中根据请求中所携带的sequenceid所在位置及其后面所有数据,获取对应的数据包,压缩后推送;若后续收到客户端的响应ack消息,将其中包含的seqid存入获取到的所有用户seqid的表中,记录此用户的最新消息位置。

5.根据权利要求...

【专利技术属性】
技术研发人员:陈邦新鲍琦杨伊杰
申请(专利权)人:上海森浦信息服务有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1