CN105183549A - 基于任务分配的自动出票系统 - Google Patents
基于任务分配的自动出票系统 Download PDFInfo
- Publication number
- CN105183549A CN105183549A CN201510536338.3A CN201510536338A CN105183549A CN 105183549 A CN105183549 A CN 105183549A CN 201510536338 A CN201510536338 A CN 201510536338A CN 105183549 A CN105183549 A CN 105183549A
- Authority
- CN
- China
- Prior art keywords
- task
- automatic ticket
- ticket system
- processing
- message queue
- 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.)
- Pending
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于任务分配的自动出票系统,包括:任务分配模块,用于在接收到表征出票任务的外部请求时,根据任务类型将不同的出票任务分别置入对应的消息队列中,消息队列采用先进先出的数据结构;任务取出模块,用于从消息队列中取出出票任务;多个任务处理模块,每个任务处理模块均包括一组可自动扩展的处理线程,每个处理线程中均包含出票任务的处理逻辑,任务处理模块用于通过执行处理线程来处理出票任务。本发明的自动出票系统是一种高性能、高可用、可扩展的分布式自动出票系统,具有出票任务顺序存储及分配、大吞吐量、日志传输、支持异常报警等特性,同时具有很好的平台无关性,并能够很好地支持并发与异步调用。
Description
技术领域
本发明涉及一种基于任务分配的自动出票系统。
背景技术
现有的自动出票系统工作时通常只有一个服务器,这严重影响了出票业务的处理速度和效率,对于具有大吞吐量需求的出票业务,现有的自动出票系统已经渐渐无法满足需求。
发明内容
本发明要解决的技术问题是为了克服现有技术中自动出票系统出票业务的处理速度和效率很慢,无法满足大吞吐量需求的缺陷,提供一种基于任务分配的自动出票系统。
本发明是通过下述技术方案来解决上述技术问题的:
本发明提供了一种基于任务分配的自动出票系统,其特点在于,包括:
任务分配模块,用于在接收到表征出票任务的外部请求时,根据任务类型将不同的出票任务分别置入对应的消息队列中,所述消息队列采用先进先出的数据结构;
任务取出模块,用于从所述消息队列中取出出票任务;
多个任务处理模块,每个任务处理模块均包括一组可自动扩展的处理线程,每个处理线程中均包含出票任务的处理逻辑,所述任务处理模块用于通过执行处理线程来处理出票任务。
较佳地,所述自动出票系统还包括管理模块,用于执行数据监控及报警、任务处理模块的配置和管理及连接池的管理。
较佳地,所述自动出票系统还包括日志模块,用于记录所述自动出票系统的所有运行日志。
较佳地,所述运行日志的存储格式包括文本日志、数据库日志、TraceLog(一种日志格式)及CentralLog(一种日志格式)。
较佳地,所述消息队列采用异步通信机制。
较佳地,所述自动出票系统还包括数据库,用于存储所述消息队列。
较佳地,所述自动出票系统还包括消息队列管理模块,用于对所述消息队列进行监控和管理,包括日志查询、计时计数器查询、消息队列积压情况的监控和报警以及配置信息的查询和修改。
较佳地,所述任务处理模块还用于在所述消息队列的任务量超过一第一阈值时自动增加处理线程,并在任务量低于一第二阈值时自动减少处理线程。
较佳地,所述自动出票系统为分布式系统,采用不同的服务器执行不同任务类型的出票任务。
本发明的积极进步效果在于:本发明的自动出票系统是一种高性能、高可用、可扩展的分布式自动出票系统,具有出票任务顺序存储及分配、大吞吐量、日志传输、支持异常报警等特性,同时具有很好的平台无关性,并能够很好地支持并发与异步调用,适用于大吞吐量、顺序任务和日志数据传输等场景。
附图说明
图1为本发明的较佳实施例的基于任务分配的自动出票系统的模块示意图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
如图1所示,本发明的基于任务分配的自动出票系统包括任务分配模块1、任务取出模块2、多个任务处理模块3、管理模块4、日志模块5、数据库6及消息队列管理模块7。
本发明的自动出票系统以WebService(一种平台独立的、低耦合的、自包含的、基于可编程的应用程序)方式对外提供服务,调用方可以采用不同语言与平台进行调用,这样就彻底解决了客户端与服务端的耦合,并且很好地形成了对服务的重用。
所述任务分配模块1用于在接收到用于表征出票任务的外部请求时,根据任务类型将不同的出票任务分别置入指定的对应的消息队列中,对于不同的应用,可以同时部署多个消息队列,不同的消息队列会接收不同的消息,例如Register、Pay、Issue、Ticket、Query等消息队列,当某个消息队列出现异常时,不会对其他消息队列中的出票任务处理产生影响。
所述消息队列采用先进先出的数据结构,因此能保证数据按照特定的顺序来处理。为了保持数据持久化,所述消息队列会被存储到所述数据库6中,这样一旦系统出现故障,消息队列中未处理的出票任务也不会丢失,等到系统故障解决后,可以从第一条未处理的出票任务开始继续执行。
所述任务取出模块2会从所述消息队列中取出对应的出票任务,因为消息队列提供了“只取出一次”的保证,因此无论有多少进程从队列中取数据,每一个出票任务只会被处理一次,所述任务取出模块2同时提供了数据缓存、延迟取出、批量取出以及轻量级路由等功能,保证了数据处理的多样性。
每个任务处理模块3均包括一组可自动扩展的处理线程,每个处理线程中均包含出票任务的处理逻辑,所述任务处理模块3用于通过执行处理线程来处理出票任务。所述任务处理模块3还在所述消息队列的任务量超过一第一阈值时自动增加处理线程,并在所述消息队列的任务量低于一第二阈值时自动减少处理线程,其中所述第一阈值和所述第二阈值均可以根据需要进行设置,且所述第一阈值大于或等于所述第二阈值,从而实现对系统资源的合理利用。
所述管理模块4则用于执行数据监控及报警、任务处理模块的配置和管理以及连接池的管理等操作,通过对连接池的控制,可以缓解对外部资源的大量冲击和浪费。其中,所述管理模块4与所述多个任务处理模块3可集成在同一个主处理程序中。
所述日志模块5则用于记录所述自动出票系统的所有运行日志,并且提供便捷的配置来实现多种不同形式的日志存储方式,所述运行日志的存储格式具体包括文本日志、数据库日志、TraceLog、CentralLog等。
所述消息队列管理模块7用于对所述消息队列进行监控和管理,包括日志查询、计时计数器查询、消息队列积压情况的监控和报警以及配置信息的查询和修改等。
本发明的自动出票系统是分布式系统,通过将不同任务类型的出票业务操作与数据处理以不同的服务形式部署并运行在不同的服务器上,从而能够有效地缓解单个服务器的压力,进而可以有效地分配与利用服务器资源。
当自动出票系统需要处理的都是执行时间较长的出票任务时,本发明中引入消息队列使之成为出票任务处理的缓冲区,而所述消息队列采用异步通信机制,使得发送方和接收方都不用等待对方返回成功消息,就可以继续执行下面的处理,从而提高了数据处理的能力。
在任务量和数据量较大的情况下,本发明的自动出票系统可以自动增加处理线程来保证出票任务处理的及时性,也可以结合消息队列与后台配置,有效降低数据库处理数据的负荷,避免高峰期对内部系统及外部资源造成冲击。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
Claims (9)
1.一种基于任务分配的自动出票系统,其特征在于,包括:
任务分配模块,用于在接收到表征出票任务的外部请求时,根据任务类型将不同的出票任务分别置入对应的消息队列中,所述消息队列采用先进先出的数据结构;
任务取出模块,用于从所述消息队列中取出出票任务;
多个任务处理模块,每个任务处理模块均包括一组可自动扩展的处理线程,每个处理线程中均包含出票任务的处理逻辑,所述任务处理模块用于通过执行处理线程来处理出票任务。
2.如权利要求1所述的自动出票系统,其特征在于,所述自动出票系统还包括管理模块,用于执行数据监控及报警、任务处理模块的配置和管理及连接池的管理。
3.如权利要求1所述的自动出票系统,其特征在于,所述自动出票系统还包括日志模块,用于记录所述自动出票系统的所有运行日志。
4.如权利要求3所述的自动出票系统,其特征在于,所述运行日志的存储格式包括文本日志、数据库日志、TraceLog及CentralLog。
5.如权利要求1所述的自动出票系统,其特征在于,所述消息队列采用异步通信机制。
6.如权利要求1所述的自动出票系统,其特征在于,所述自动出票系统还包括数据库,用于存储所述消息队列。
7.如权利要求1所述的自动出票系统,其特征在于,所述自动出票系统还包括消息队列管理模块,用于对所述消息队列进行监控和管理,包括日志查询、计时计数器查询、消息队列积压情况的监控和报警以及配置信息的查询和修改。
8.如权利要求1所述的自动出票系统,其特征在于,所述任务处理模块还用于在所述消息队列的任务量超过一第一阈值时自动增加处理线程,并在任务量低于一第二阈值时自动减少处理线程。
9.如权利要求1所述的自动出票系统,其特征在于,所述自动出票系统为分布式系统,采用不同的服务器执行不同任务类型的出票任务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510536338.3A CN105183549A (zh) | 2015-08-27 | 2015-08-27 | 基于任务分配的自动出票系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510536338.3A CN105183549A (zh) | 2015-08-27 | 2015-08-27 | 基于任务分配的自动出票系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105183549A true CN105183549A (zh) | 2015-12-23 |
Family
ID=54905645
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510536338.3A Pending CN105183549A (zh) | 2015-08-27 | 2015-08-27 | 基于任务分配的自动出票系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105183549A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105389617A (zh) * | 2015-11-19 | 2016-03-09 | 上海携程商务有限公司 | 自动化的订单处理方法及系统 |
CN105590253A (zh) * | 2016-01-12 | 2016-05-18 | 上海携程商务有限公司 | 基于多线程的并行财务流水生成方法及系统 |
CN105701257A (zh) * | 2016-03-31 | 2016-06-22 | 北京奇虎科技有限公司 | 数据处理方法和装置 |
CN106095546A (zh) * | 2016-06-01 | 2016-11-09 | 深圳市永兴元科技有限公司 | 云计算平台的任务管理方法及装置 |
CN107679931A (zh) * | 2017-08-17 | 2018-02-09 | 平安科技(深圳)有限公司 | 订单异步处理的方法、装置、存储介质及终端 |
CN107872398A (zh) * | 2017-06-25 | 2018-04-03 | 平安科技(深圳)有限公司 | 高并发数据处理方法、装置及计算机可读存储介质 |
CN108664315A (zh) * | 2017-03-30 | 2018-10-16 | 北京京东尚科信息技术有限公司 | 多线程动态处理业务的方法、电子设备和可读存储介质 |
CN108694107A (zh) * | 2017-04-10 | 2018-10-23 | 北京京东尚科信息技术有限公司 | 消息队列的积压量监控方法、装置、可读介质和电子设备 |
CN110009420A (zh) * | 2019-04-04 | 2019-07-12 | 携程旅游网络技术(上海)有限公司 | 增值服务产品的出票系统以及出票方法 |
CN110245011A (zh) * | 2018-03-08 | 2019-09-17 | 北京京东尚科信息技术有限公司 | 一种任务调度方法和装置 |
CN110297708A (zh) * | 2018-03-22 | 2019-10-01 | 阿里巴巴集团控股有限公司 | 一种出票处理及调度的方法、服务器及出票平台 |
CN111131082A (zh) * | 2019-12-25 | 2020-05-08 | 广东电科院能源技术有限责任公司 | 一种充电设施数据传输动态控制方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020173996A1 (en) * | 2001-04-12 | 2002-11-21 | Steve Murch | Method and system for asynchronously booking travel inventory |
CN101236630A (zh) * | 2007-01-31 | 2008-08-06 | 北京宏德信智源信息技术有限公司 | 铁路自动售票系统 |
CN102347986A (zh) * | 2011-10-17 | 2012-02-08 | 百度在线网络技术(北京)有限公司 | 多事务同步协作管理方法、系统及其装置 |
CN103353951A (zh) * | 2012-02-07 | 2013-10-16 | 周双桂 | 一种网上预订的数据处理及自动售票 |
CN103714487A (zh) * | 2013-12-19 | 2014-04-09 | 广东粤铁科技有限公司 | 轨道交通的票务系统及其购票验票方法 |
-
2015
- 2015-08-27 CN CN201510536338.3A patent/CN105183549A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020173996A1 (en) * | 2001-04-12 | 2002-11-21 | Steve Murch | Method and system for asynchronously booking travel inventory |
CN101236630A (zh) * | 2007-01-31 | 2008-08-06 | 北京宏德信智源信息技术有限公司 | 铁路自动售票系统 |
CN102347986A (zh) * | 2011-10-17 | 2012-02-08 | 百度在线网络技术(北京)有限公司 | 多事务同步协作管理方法、系统及其装置 |
CN103353951A (zh) * | 2012-02-07 | 2013-10-16 | 周双桂 | 一种网上预订的数据处理及自动售票 |
CN103714487A (zh) * | 2013-12-19 | 2014-04-09 | 广东粤铁科技有限公司 | 轨道交通的票务系统及其购票验票方法 |
Non-Patent Citations (1)
Title |
---|
英特尔软件学院教材编写组: "《多核多线程技术》", 31 January 2011, 上海交通大学出版社 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105389617A (zh) * | 2015-11-19 | 2016-03-09 | 上海携程商务有限公司 | 自动化的订单处理方法及系统 |
CN105590253A (zh) * | 2016-01-12 | 2016-05-18 | 上海携程商务有限公司 | 基于多线程的并行财务流水生成方法及系统 |
CN105701257B (zh) * | 2016-03-31 | 2019-05-21 | 北京奇虎科技有限公司 | 数据处理方法和装置 |
CN105701257A (zh) * | 2016-03-31 | 2016-06-22 | 北京奇虎科技有限公司 | 数据处理方法和装置 |
CN106095546A (zh) * | 2016-06-01 | 2016-11-09 | 深圳市永兴元科技有限公司 | 云计算平台的任务管理方法及装置 |
CN108664315A (zh) * | 2017-03-30 | 2018-10-16 | 北京京东尚科信息技术有限公司 | 多线程动态处理业务的方法、电子设备和可读存储介质 |
CN108694107A (zh) * | 2017-04-10 | 2018-10-23 | 北京京东尚科信息技术有限公司 | 消息队列的积压量监控方法、装置、可读介质和电子设备 |
CN107872398A (zh) * | 2017-06-25 | 2018-04-03 | 平安科技(深圳)有限公司 | 高并发数据处理方法、装置及计算机可读存储介质 |
WO2019001256A1 (zh) * | 2017-06-25 | 2019-01-03 | 平安科技(深圳)有限公司 | 高并发数据处理方法、装置及计算机可读存储介质 |
CN107679931A (zh) * | 2017-08-17 | 2018-02-09 | 平安科技(深圳)有限公司 | 订单异步处理的方法、装置、存储介质及终端 |
WO2019033605A1 (zh) * | 2017-08-17 | 2019-02-21 | 平安科技(深圳)有限公司 | 订单异步处理的方法、装置、存储介质及终端 |
CN110245011A (zh) * | 2018-03-08 | 2019-09-17 | 北京京东尚科信息技术有限公司 | 一种任务调度方法和装置 |
CN110297708A (zh) * | 2018-03-22 | 2019-10-01 | 阿里巴巴集团控股有限公司 | 一种出票处理及调度的方法、服务器及出票平台 |
CN110297708B (zh) * | 2018-03-22 | 2023-04-28 | 阿里巴巴集团控股有限公司 | 一种出票处理及调度的方法、服务器及出票平台 |
CN110009420A (zh) * | 2019-04-04 | 2019-07-12 | 携程旅游网络技术(上海)有限公司 | 增值服务产品的出票系统以及出票方法 |
CN111131082A (zh) * | 2019-12-25 | 2020-05-08 | 广东电科院能源技术有限责任公司 | 一种充电设施数据传输动态控制方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105183549A (zh) | 基于任务分配的自动出票系统 | |
CN110535787B (zh) | 消息消费方法、装置及可读存储介质 | |
CN102929834B (zh) | 众核处理器及其核间通信的方法、主核和从核 | |
CN108647104B (zh) | 请求处理方法、服务器及计算机可读存储介质 | |
CN107025139A (zh) | 一种基于云计算的高性能计算调度框架 | |
CN100562850C (zh) | 多处理器负载分配调整方法 | |
CN101661386B (zh) | 多硬件线程处理器的业务处理装置及其业务处理方法 | |
CN102469033A (zh) | 一种消息订阅系统以及消息发送方法 | |
CN102622265A (zh) | 一种任务分配方法和系统 | |
CN107239342A (zh) | 一种存储集群任务管理方法及装置 | |
CN111061570B (zh) | 一种图像计算请求处理方法、装置及终端设备 | |
US20150112934A1 (en) | Parallel scanners for log based replication | |
CN105373453A (zh) | 数据备份方法及系统 | |
CN105786909A (zh) | 一种自适应消息队列积压负载的应用触发方法和系统 | |
CN109818810A (zh) | 一种接入服务器连接优化方法、接入服务器以及通信系统 | |
CN102457578A (zh) | 一种基于事件机制的分布式网络监控方法 | |
CN109450803A (zh) | 流量调度方法、装置和系统 | |
CN108628677B (zh) | 分布式任务处理系统、方法和装置 | |
CN104199729B (zh) | 一种资源管理方法及系统 | |
US9853933B2 (en) | Message queue replication with message ownership migration | |
CN105824699A (zh) | 一种分布式任务调度装置及方法 | |
CN110519354A (zh) | 一种分布式对象存储系统及其业务处理方法和存储介质 | |
CN102375780B (zh) | 一种分布式文件系统中元数据缓存管理的方法 | |
CN108509257B (zh) | 一种基于多线程的消息处理方法及装置 | |
CN105550025A (zh) | 分布式基础设施即服务(IaaS)调度方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20160203 Address after: 200335 Shanghai city Changning District Admiralty Road No. 968 Building No. 16 10 floor Applicant after: SHANGHAI XIECHENG BUSINESS CO., LTD. Address before: 200335 Shanghai City, Changning District Fuquan Road No. 99, Ctrip network technology building Applicant before: Ctrip computer technology (Shanghai) Co., Ltd. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151223 |