[发明专利]一种基于线程池的业务处理方法及装置有效
申请号: | 201611209613.1 | 申请日: | 2016-12-23 |
公开(公告)号: | CN106802826B | 公开(公告)日: | 2021-06-18 |
发明(设计)人: | 吴文昊;吕伊蒙;冯哲 | 申请(专利权)人: | 中国银联股份有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50;G06F16/2453 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 黄志华 |
地址: | 200135 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 线程 业务 处理 方法 装置 | ||
本发明公开了一种基于线程池的业务处理方法及装置,用以使线程池处理系统处理业务时能够具备优先级功能,包括:接收待处理业务并解析待处理业务为N个任务;N大于等于1;根据待处理业务的业务类型,获取待处理业务的配置文件;配置文件中包含了待处理业务的任务队列信息和待处理业务解析的各任务的任务优先级;根据各任务的任务优先级,将N个任务放入待处理业务所对应的任务队列中;任务队列具有优先级;根据任务队列优先级,依次将N个任务放入线程池中。由于任务队列具有优先级,会对优先级较高的业务进行优先处理,此外,任务队列中的任务也具有优先级,使得重要任务能够被优先处理。
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于线程池的业务处理方法及装置。
背景技术
如今,随着金融业的蓬勃发展,金融系统中无论是实时处理系统或是批量处理系统面对的数据压力越来越大。而随着数据的爆发式的增长,大部分金融系统都已经完成分布式储存数据,相关技术也越来越成熟。业务处理中常常伴随着复杂的数据库操作,为了实现对分布式数据库的管理,提高业务处理效率,线程池是一种非常有效的业务处理机制。
目前,基于线程池业务处理系统主要有同步单数据库线程池系统和异步多数据线程池系统两种。其中,异步多数据线程池系统因其不需等待,异步处理等高效率处理特征而被越来越广泛的使用。然而,异步多数据线程池没有权重功能,不能支持优先级的线程处理,使得异步多数据线程池不能优先处理紧急任务和重要任务。
综上所述,目前的线程池处理系统在处理业务时不具备优先级功能。
发明内容
本发明提供一种基于线程池的业务处理方法及装置,用以使线程池处理系统处理业务时能够具备优先级功能。
本发明实施例提供一种基于线程池的业务处理方法,包括:
接收待处理业务并解析待处理业务为N个任务;N大于等于1;
根据待处理业务的业务类型,获取待处理业务的配置文件;配置文件中包含了待处理业务的任务队列信息和待处理业务解析的各任务的任务优先级;
根据各任务的任务优先级,将N个任务放入待处理业务所对应的任务队列中;任务队列具有优先级;
根据任务队列优先级,依次将N个任务放入线程池中。
可选地,配置文件中还包含待处理业务的线程池信息,
根据任务队列优先级,依次将N个任务放入线程池中之前,还包括:
根据所述待处理业务的线程池信息,确定所述线程池中所述待处理业务对的M个线程;
将待处理业务所对应的任务队列中的任务与M个线程关联。
可选地,配置文件中还包含了数据库信息,
根据任务队列优先级,依次将N个任务放入线程池中之前,还包括:
根据数据库信息,将M个线程与数据库信息中记载的数据库相连接。
可选地,任务队列按优先级从高到低共分为先入先出FIFO队列、权重队列、后入先出LIFO队列以及外置队列;
外置队列用于保存关键任务,关键任务为N个任务中的部分或全部;
根据任务队列优先级,依次将N个任务放入线程池中之后,还包括:
针对N个任务中的每一个任务,接收任务的回调信息;
根据回调信息,判断任务是否执行成功;
若任务为执行失败,则确定任务在外置队列中对应的关键任务,并返回执行关键任务。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国银联股份有限公司,未经中国银联股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611209613.1/2.html,转载请声明来源钻瓜专利网。