【技术实现步骤摘要】
一种银行债券自动报价系统的分布式处理方法及装置
[0001]本专利技术涉及消息队列处理
,更具体的说,涉及一种银行债券自动报价系统的分布式处理方法及装置。
技术介绍
[0002]当前越来越多的银行系统使用自动报价系统做债券交易,对于银行系统来说,为了交易的顺利,就需要系统保持很好的稳定性,因此保证系统的容灾性尤其重要,所谓容灾性指的是发生灾难/故障之后系统维持稳定性的能力,即应对风险的能力。
[0003]但是,本专利技术的专利技术人经过研究后发现,对于银行债券行情信息而言,有了最新的债券行情信息之后,时间稍前的债券行情就没有使用价值了,因此保证单券行情信息的时序性对于银行债券交易系统也是至关重要的,而现有的系统在处理债券行情信息时往往会产生单券行情信息乱序的情况,从而无法兼顾单券行情信息处理的有序性和容灾性。
技术实现思路
[0004]有鉴于此,本专利技术公开一种银行债券自动报价系统的分布式处理方法及装置,以实现同时兼顾单券行情信息处理的有序性和容灾性。
[0005]一种银行债券自动报价系统的分布式处理方法,包括:
[0006]获取多券行情信息,所述多券行情信息包括:多个单券行情信息;
[0007]将所述多券行情信息多点分配至各个队列中,每个所述队列被分配一个所述单券行情信息;
[0008]当所有的服务全部启动时,开启队列锁抢占通道,允许每个所述服务进行队列锁抢占,其中,每个所述队列锁对应一个队列,所述队列的总数量不少于所述服务的总数量;
[000 ...
【技术保护点】
【技术特征摘要】
1.一种银行债券自动报价系统的分布式处理方法,其特征在于,包括:获取多券行情信息,所述多券行情信息包括:多个单券行情信息;将所述多券行情信息多点分配至各个队列中,每个所述队列被分配一个所述单券行情信息;当所有的服务全部启动时,开启队列锁抢占通道,允许每个所述服务进行队列锁抢占,其中,每个所述队列锁对应一个队列,所述队列的总数量不少于所述服务的总数量;控制抢占所述队列锁成功的各个目标服务进行相应的队列接管;设置被所述目标服务成功抢占的目标队列锁的心跳时间,并更新所述目标队列锁的当前状态为被抢占状态;基于每个所述心跳时间判断对应的所述目标服务是否超时;如果是,则控制心跳时间超时的所述目标服务释放对应的目标队列锁和目标队列;将释放的所述目标队列锁的当前状态由被抢占状态更新为未被抢占状态,并允许每个所述服务再次进行抢占。2.根据权利要求1所述的分布式处理方法,其特征在于,还包括:当所有的所述服务未全部启动时,则在第一预设时间段后,再次判断所有的所述服务是否全部启动;如果是,则允许每个所述服务进行队列锁抢占;如果否,则输出存在未启动服务的告警信息。3.根据权利要求1所述的分布式处理方法,其特征在于,所述基于每个所述心跳时间判断对应的所述目标服务是否超时,具体包括:每隔第二预设时间段对每个所述心跳时间进行刷新,得到最新心跳时间;基于每个所述最新心跳时间判断对应的所述目标服务是否超时。4.根据权利要求1所述的分布式处理方法,其特征在于,所述将所述多券行情信息多点分配至各个队列中,具体包括:采用hash算法将所述多券行情信息多点分配至各个所述队列中。5.根据权利要求1所述的分布式处理方法,其特征在于,所述队列锁采用redis分布式锁机制。6.根据权利要求1所述的分布式处理方法,其特征在于,还包括:对心跳时间超时的所述目标服务释放对应的锁,同时应用自动托管。7.根据权利要求1所述的分布式处理方法,其特征在于,在所述设置被所述目标服务成功抢占的目标队列锁的心跳时间,并更新所述目标队列锁的当前状态为被抢占状态之后,还包括:每隔第三预设时间段判断当前时刻是否有空白锁,所述空白锁为当前状态为未被抢占状态的队列锁;如果有所述空白锁,则再次开启所述队列锁抢占通道允许每个所述服务进行所述空白锁抢占。8.根据权利要求1所述的分布式处理方法,其特征在于,在所述设置被所述目标服务成功抢占的目标队列锁的心跳时间,并更新所述目标队列锁的当前状态为被抢占状态之后,还包括:
判断所有发生故障的服务中是否有恢复正常的服务;如果是,则清除所有队列内容,并再次开启所述队列锁抢占通道。9.一种银行债券自动报价系统的分布式处理装置,其特征在于,所述分布式处理装置包括:信息获取单元,用于获取多券行情信息,所述多券行情信息包括:多个单券行情信息;分配单元,用于将所述多券行情信息多点分...
【专利技术属性】
技术研发人员:胡磊,李琦,刘海林,常成,
申请(专利权)人:上海金仕达软件科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。