System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机数据处理领域,具体为一种基于线程池阻塞队列对拨付指令缓存和处理的方法。
技术介绍
1、当前社会对代发的需求越来越大,银行需提高对代发的响应速度和接受能力,目前市面上大部分银行对于代发指令的处理都是先将指令存入数据库,然后基于数据库分批次处理指令,其目的是在处理数据的同时保证数据的真实、准确、可控,但随着代发需求的不断提高,原有技术在保证稳定安全的同时,效率逐渐降低,需要更高效的处理速度。
2、目前的针对代发指令的处理主要是通过数据库进行处理的方式,一般是服务器依次读出代发指令批次信息,然后根据批次信息按顺序读出批次的明细信息依次处理,在实际处理中,由于一般数据量较大,单线程处理效率十分低下,单服务器时且存在单点故障问题且处理时间太长,在多个服务器处理时,为了保证数据的准确性且未重复处理,一般会把数据按批次分配给各个服务器,这会导致木桶效应从而降低处理效率。
3、现有的批量指令处理方式主要采用定时任务-分批处理方式:以数据库操作指令实现批量代发的操作。在数据量过大时效率会显著下降,且可能存在单点故障。
技术实现思路
1、为了解决上述问题,本专利技术提供一种基于线程池阻塞队列对拨付指令缓存和处理的方法,包括以下步骤:s1.将指令信息存入线程池阻塞队列中;s2.从线程池阻塞队列中取出指令批次信息存入各个子线程中;s3.子线程依据指令批次信息获取批次对应的明细信息并进行代发。
2、进一步地,所述指令批次信息为财务批次号、付款行信息、付
3、进一步地,所述批次对应的明细信息包括:收款行信息、收款账户信息。
4、进一步地,所述指令信息中一条数据对应一批指令批次信息。
5、进一步地,所述s2步骤中每个子线程中仅存储一批指令批次信息。
6、进一步地,所述子线程在阻塞队列中获取指令批次信息的方式为先进先出。
7、本专利技术提供了一种基于线程池阻塞队列对拨付指令缓存和处理的方法,具有以下有益效果:
8、(1)本专利技术有效解决了数据的分配问题,同时采用服务器集群部署服务,且每台服务器多个线程服务,解决了单点故障问题。
9、(2)本专利技术采用线程池阻塞队列缓存指令的方式,提高了系统处理效率,优化处理流程,同时在数据层面保证数据不被重复处理,解决单点故障问题提高系统可靠的同时还加强了系统的可扩展性。
本文档来自技高网...【技术保护点】
1.一种基于线程池阻塞队列对拨付指令缓存和处理的方法,其特征在于,包括以下步骤:S1.将指令信息存入线程池阻塞队列中;S2.从线程池阻塞队列中取出指令批次信息存入各个子线程中;S3.子线程依据指令批次信息获取批次对应的明细信息并进行代发。
2.根据权利要求1所述的基于线程池阻塞队列对拨付指令缓存和处理的方法,其特征在于,所述指令批次信息为财务批次号、付款行信息、付款账户信息、批次汇总信息。
3.根据权利要求1所述的基于线程池阻塞队列对拨付指令缓存和处理的方法,其特征在于,所述批次对应的明细信息包括:收款行信息、收款账户信息。
4.根据权利要求1所述的基于线程池阻塞队列对拨付指令缓存和处理的方法,其特征在于,所述指令信息中一条数据对应一批指令批次信息。
5.根据权利要求4所述的基于线程池阻塞队列对拨付指令缓存和处理的方法,其特征在于,所述S2步骤中每个子线程中仅存储一批指令批次信息。
6.根据权利要求5所述的基于线程池阻塞队列对拨付指令缓存和处理的方法,其特征在于,所述子线程在阻塞队列中获取指令批次信息的方式为先进先出。<
...【技术特征摘要】
1.一种基于线程池阻塞队列对拨付指令缓存和处理的方法,其特征在于,包括以下步骤:s1.将指令信息存入线程池阻塞队列中;s2.从线程池阻塞队列中取出指令批次信息存入各个子线程中;s3.子线程依据指令批次信息获取批次对应的明细信息并进行代发。
2.根据权利要求1所述的基于线程池阻塞队列对拨付指令缓存和处理的方法,其特征在于,所述指令批次信息为财务批次号、付款行信息、付款账户信息、批次汇总信息。
3.根据权利要求1所述的基于线程池阻塞队列对拨付指令缓存和处理的方法,其特征在...
【专利技术属性】
技术研发人员:任健,宋朝霞,高阳,李永生,苏芮,林海,周英,陈美英,苏以鹏,汤彪武,刘倩玉,吴江,张与弛,张婉婷,任和,唐小林,伍练,
申请(专利权)人:中国农业银行股份有限公司四川省分行,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。