票务处理方法及系统的制作方法
技术领域:
本发明涉及票务处理技术领域,尤其涉及一种票务处理方法及系统。
背景技术:
现有的票务处理系统中,存储票务数据采用的是数据库的存储方式,处理票务请求和维护票务信息采用浏览器和Web服务器以及数据库的方式进行,由于对票务资源数据的操作几乎是和硬盘数据库打交道的,且对订票请求和查询请求放在一起处理,当负载增加时,就会对系统的服务层和数据层造成压力,导致系统反应迟钝进而严重影响系统性能,在春运或者出行旺季时票务处理系统常会出现系统繁忙,无法进行交易的情况,甚至造成系统瘫痪
发明内容
本发明提供一种票务处理方法及系统。本发明一方面提供一种票务处理方法,包括静态页面管理模块接收用户输入的包含网页标识的访问请求,并将与所述网页标识对应的网页推送给所述用户;动态页面管理模块接收所述用户通过所述网页发送的包含待查询信息的查询请求,将所述查询请求加入查询请求消息队列;进程任务管理模块接收所述动态页面管理模块按照所述查询请求消息队列推送的查询请求,为所述查询请求分配空闲的处理进程,向内存集群管理模块请求与所述待查询信息对应的票务信息;所述内存集群管理模块将所述票务信息反馈给所述进程任务管理模块,以使所述进程任务管理模块将所述票务信息反馈给所述动态页面管理模块从而将所述票务信息推送给所述用户。本发明另一方面提供一种票务处理系统,包括静态页面管理模块,用于接收用户输入的包含网页标识的访问请求,并将与所述网页标识对应的网页推送给所述用户;动态页面管理模块,用于接收所述用户通过所述网页发送的包含待查询信息的查询请求,将所述查询请求加入查询请求消息队列;进程任务管理模块,用于接收所述动态页面管理模块按照所述查询请求消息队列推送的查询请求,为所述查询请求分配空闲的处理进程,向内存集群管理模块请求与所述待查询信息对应的票务信息;所述内存集群管理模块,用于将所述票务信息反馈给所述进程任务管理模块,以使所述进程任务管理模块将所述票务信息反馈给所述动态页面管理模块从而将所述票务信息推送给所述用户。本发明提供的票务处理方法及系统,通过使用内存集群的方式存储票务信息,利用分离的消息队列模式保存用户订票请求和用户查询请求,利用异步推送方式维护票务信息,保证了实时联机效率,增强了系统性能,能够解决在春运或者出行旺季时票务处理系统出现业务繁忙交易堵塞的问题,满足大并发查询订票的需求。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图I为本发明提供的票务处理方法实施例一的流程图;图2为本发明提供的票务处理方法实施例二的流程图;图3为本发明提供的票务处理方法中内存集群的数据结构示意图; 图4为本发明提供的票务处理方法实施例三的流程图;图5为本发明提供的票务处理系统实施例一的结构示意图;图6为本发明提供的票务处理系统实施例二的结构示意图。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。现有技术中存储票务数据采用的是数据库的存储方式,处理票务请求和维护票务信息采用浏览器和Web服务器以及数据库的方式进行,因此数据层的操作几乎是和硬盘直接打交道的,进而会影响系统性能。本发明提供的票务处理系统采用联机交易两层架构,展示层和业务处理层,展示层负责处理用户页面的处理和展示,业务处理层集成了应用逻辑和数据处理两种功能,业务处理层采用内存集群的方式存储票务数据,内存集群可适应大吞吐的读取和写入,其横向扩展能力极强,可满足大并发查询订票的需求,可极大地增强系统性能。图I为本发明提供的票务处理方法实施例一的流程图,如图I所示,该方法包括步骤101、静态页面管理模块接收用户输入的包含网页标识的访问请求,并将与所述网页标识对应的网页推送给所述用户;在步骤101中,首先用户输入包含网页标识的访问请求,静态页面管理模块接收该访问请求,并将与网页标识对应的网页推送给用户,通过用户浏览器显示。步骤102、动态页面管理模块接收所述用户通过所述网页发送的包含待查询信息的查询请求,将所述查询请求加入查询请求消息队列;在步骤102中,用户通过网页发送包含待查询信息的查询请求,动态页面管理模块接收到该请求后将其按照编号的方式加入查询请求队列。步骤103、进程任务管理模块接收所述动态页面管理模块按照所述查询请求消息队列推送的查询请求,为所述查询请求分配空闲的处理进程,向内存集群管理模块请求与所述待查询信息对应的票务信息;在步骤103中,首先动态页面管理模块按照查询请求消息队列推送查询请求至进程任务管理模块,接着进程任务管理模块为查询请求分配空闲的处理进程,然后进程任务管理模块向内存集群管理模块请求与待查询信息对应的票务信息,其中进程任务管理模块采用只读的方式,从内存集群管理模块中读取与待查询信息对应的票务信息,查询请求队列依次支持批量查询请求,当多个查询请求出队列时,以只读的方式读取票务信息。这种方式运行可以同时有多个请求访问到同一个票务资源,但只能读不能写。步骤104、所述内存集群管理模块将所述票务信息反馈给所述进程任务管理模块,以使所述进程任务管理模块将所述票务信息反馈给所述动态页面管理模块从而将所述票务信息推送给所述用户。在步骤104中,内存集群管理模块将票务信息反馈给进程任务管理模块,然后进程任务管理模块将票务信息反馈给动态页面管理模块,动态页面管理模块加载动态内容,发送结果给静态页面管理模块,静态页面管理模块加载静态网页内容,发送最终结果给客户端浏览器,从而将票务信息推送给所述用户。 本实施例提供的票务处理方法,通过使用内存集群的方式存储票务信息,以只读的方式读取票务信息,支持大批量查询,增强了系统性能,能够解决在春运或者出行旺季时票务处理系统出现业务繁忙交易堵塞的问题。图2为本发明提供的票务处理方法实施例二的流程图,如图2所示,在图I的基础上,将票务信息推送给用户之后,还包括步骤105、动态页面管理模块接收所述用户根据所述票务信息发送的订票请求,将所述订票请求加入订票请求消息队列;在步骤105中,用户查询到票务信息后,可能会发起订票业务正式点击订票,即发送订票请求,动态页面管理模块接收到订票请求后将订票请求按照编号的方式加入订票请求消息队列。步骤106、进程任务管理模块接收所述动态页面管理模块按照所述订票请求消息队列推送的订票请求,为所述订票请求分配空闲的处理进程,向内存集群管理模块请求订
票结果信息;在步骤106中,动态页面管理模块按照订票请求消息队列推送订票请求至进程任务管理模块,进程任务管理模块为订票请求分配空闲的处理进程,向内存集群管理模块请求订票结果信息,其中,进程任务管理模块采用独占的方式,从内存集群管理模块中读取订票结果信息,当一个订票请求占领一个票务信息时,其他订票请求将无法访问到票务信息。步骤107、内存集群管理模块将所述订票结果信息反馈给所述进程任务管理模块,以使所述进程任务管理模块将所述订票结果信息反馈给所述动态页面管理模块从而将所述订票结果信息推送给所述用户。在步骤107中,内存集群管理模块将订票结果信息反馈给进程任务管理模块,然后进程任务管理模块将订票结果信息反馈给动态页面管理模块,动态页面管理模块加载动态内容,发送结果给静态页面管理模块,静态页面管理模块加载静态网页内容,发送最终结果给客户端浏览器,从而将订票结果信息推送给用户。本实施例提供的票务处理方法,通过使用内存集群的方式存储票务信息,利用分离的消息队列模式保存用户订票请求和用户查询请求,接收到查询请求时以只读的方式读取票务信息,接收到订票请求时以独占的方式读取订票结果信息,支持大批量查询和订票,增强了系统性能,能够解决在春运或者出行旺季时票务处理系统出现业务繁忙交易堵塞的问题。上述两个实施例中,票务基础资源管理模块采用异步的方式将票务信息推送给内存集群管理模块,具体是票务基础资源管理模块在系统空闲时将票务信息推送到内存集群中,把内存集群中已完成订票的数据同步到内存数据库中,由内存集群管理模块控制票务信息,这样进程任务管理模块中的票务进程就不会直接和数据库进行联系,保证了实时联机效率。
下面详细介绍如何采用内存集群的方式进行票务处理,进程任务管理模块中的票务进程只读写内存数据,查询或者订票时不和数据库打交道。分布式数据库采用长数组的方式进行读写。图3为本发明提供的票务处理方法中内存集群的数据结构示意图,如图3所示,图中数据结构表示当有查询请求时,请求可以访问到长数组的其中一个,比如目前请求I访问到长数组下标4的数据(北京到上海4张,编号00004),请求2也访问到数组下标4的数据(北京到上海4张,编号00004),但是请求I的客户端马上发起开始订票请求,这时候长数组下标为4的数据就被锁定了,其他查询请求无法访问,请求I的客户端订票结束后,长数组访问指针将自动下移一个到数组下标3,其他的请求目前操作的数据就是数据下标3的数据了。采用这种方式体现在无需更新数据,数据使用完毕后立即移动下一个数组下标,读取访问都是纯线性的,当访问到下标为O时即表示无票可买。用户如果此时再发送查询请求或订票请求,系统将会提醒票已经售完,而无效请求也不会发送到票务基础资源管理模块了。下面详细说明查询流程及订票流程,图4为本发明提供的票务处理方法实施例三的流程图,如图4所示,包括步骤401、首先用户输入包含网页标识的访问请求;步骤402、静态页面管理模块接收该访问请求,并将与网页标识对应的网页推送给用户;步骤403、用户通过网页发送包含待查询信息的查询请求;步骤404、动态页面管理模块接收到该请求后将其按照编号的方式加入查询请求队列,按照查询请求消息队列推送查询请求至进程任务管理模块;步骤405、进程任务管理模块为查询请求分配空闲的处理进程,然后进程任务管理模块向内存集群管理模块请求与待查询信息对应的票务信息;步骤406、内存集群管理模块将票务信息反馈给进程任务管理模块;步骤407、进程任务管理模块将票务信息反馈给动态页面管理模块;步骤408、动态页面管理模块将票务信息推送给用户浏览器;步骤409、票务基础资源管理模块采用异步的方式将票务信息推送给内存集群管理模块,在系统空闲时将票务资源数据推送到内存集群中,把内存集群中已完成订票的数据同步到内存数据库中,由内存集群管理模块控制票务资源。订票流程在上述步骤之后,首先用户正式点击订票,即发送订票请求,动态页面管理模块接收到订票请求后将订票请求按照编号的方式加入订票请求消息队列,接着动态页面管理模块按照订票请求消息队列推送订票请求至进程任务管理模块,然后进程任务管理模块为订票请求分配空闲的处理进程,向内存集群管理模块请求订票结果信息,接着内存集群管理模块将订票结果信息反馈给进程任务管理模块,然后进程任务管理模块将订票结果信息反馈给动态页面管理模块,最后动态页面管理模块将订票结果信息推送给用户浏览器。本发明提供的票务处理方法,通过使用内存集群的方式存储票务信息,利用分离的消息队列模式保存用户订票请求和用户查询请求,利用异步推送方式维护票务信息,在系统空闲时将票务信息推送到内存集群中,把内存集群中已完成订票的数据同步到内存数据库中,由内存集群管理模块控制票务资源,这样进程任务管理模块中的票务进程就不会直接和数据库进行联系,保证了实时联机效率,增强了系统性能,能够解决在春运或者出行旺季时票务处理系统出现业务繁忙交易堵塞的问题,满足大并发订票的需求。本领域普通技术人员可以理解实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程·序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。图5为本发明提供的票务处理系统实施例一的结构示意图,如图5所示,该系统包括静态页面管理模块11、动态页面管理模块12、进程任务管理模块13、内存集群管理模块14。其中静态页面管理模块11用于接收用户输入的包含网页标识的访问请求,并将与所述网页标识对应的网页推送给所述用户;动态页面管理模块12用于接收所述用户通过所述网页发送的包含待查询信息的查询请求,将所述查询请求加入查询请求消息队列;进程任务管理模块13用于接收所述动态页面管理模块按照所述查询请求消息队列推送的查询请求,为所述查询请求分配空闲的处理进程,向内存集群管理模块请求与所述待查询信息对应的票务信息,进程任务管理模块具体用于采用只读的方式,从内存集群管理模块中读取与待查询信息对应的票务信息。内存集群管理模块14用于将所述票务信息反馈给所述进程任务管理模块,以使所述进程任务管理模块将所述票务信息反馈给所述动态页面管理模块从而将所述票务信息推送给所述用户。本实施例的装置,可以用于执行图I所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。在图5所示装置结构的基础上,进一步地,动态页面管理模块12还用于接收所述用户根据所述票务信息发送的订票请求,将所述订票请求加入订票请求消息队列;进程任务管理模块13还用于接收所述动态页面管理模块按照所述订票请求消息队列推送的订票请求,为所述订票请求分配空闲的处理进程,向内存集群管理模块请求订票结果信息,进程任务管理模块13具体用于采用独占的方式,从所述内存集群管理模块中读取所述订票结果信息;内存集群管理模块14还用于将所述订票结果信息反馈给所述进程任务管理模块,以使所述进程任务管理模块将所述订票结果信息反馈给所述动态页面管理模块从而将所述订票结果信息推送给所述用户。本实施例的装置,可以用于执行图2所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。图6为本发明提供的票务处理系统实施例二的结构示意图,如图6所示,在图5所示装置结构的基础上,进一步地,该系统还包括票务基础资源管理模块15,票务基础资源管理模块15用于采用异步方式将所述票务信息推送给所述内存集群管理模块。最后应说明的是以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
权利要求
1.一种票务处理方法,其特征在于,包括 静态页面管理模块接收用户输入的包含网页标识的访问请求,并将与所述网页标识对应的网页推送给所述用户; 动态页面管理模块接收所述用户通过所述网页发送的包含待查询信息的查询请求,将所述查询请求加入查询请求消息队列; 进程任务管理模块接收所述动态页面管理模块按照所述查询请求消息队列推送的查询请求,为所述查询请求分配空闲的处理进程,向内存集群管理模块请求与所述待查询信息对应的票务信息; 所述内存集群管理模块将所述票务信息反馈给所述进程任务管理模块,以使所述进程任务管理模块将所述票务信息反馈给所述动态页面管理模块从而将所述票务信息推送给所述用户。
2.根据权利要求I所述的方法,其特征在于,所述向内存集群管理模块请求与所述待查询信息对应的票务信息,包括 采用只读的方式,从所述内存集群管理模块中读取与所述待查询信息对应的票务信肩、O
3.根据权利要求I或2所述的方法,其特征在于,所述将所述票务信息推送给所述用户之后,还包括 所述动态页面管理模块接收所述用户根据所述票务信息发送的订票请求,将所述订票请求加入订票请求消息队列; 所述进程任务管理模块接收所述动态页面管理模块按照所述订票请求消息队列推送的订票请求,为所述订票请求分配空闲的处理进程,向内存集群管理模块请求订票结果信息; 所述内存集群管理模块将所述订票结果信息反馈给所述进程任务管理模块,以使所述进程任务管理模块将所述订票结果信息反馈给所述动态页面管理模块从而将所述订票结果信息推送给所述用户。
4.根据权利要求3所述的方法,其特征在于,所述向内存集群管理模块请求订票结果信息,包括 采用独占的方式,从所述内存集群管理模块中读取所述订票结果信息。
5.根据权利要求I或2所述的方法,其特征在于,还包括 票务基础资源管理模块采用异步方式将所述票务信息推送给所述内存集群管理模块。
6.一种票务处理系统,其特征在于,包括 静态页面管理模块,用于接收用户输入的包含网页标识的访问请求,并将与所述网页标识对应的网页推送给所述用户; 动态页面管理模块,用于接收所述用户通过所述网页发送的包含待查询信息的查询请求,将所述查询请求加入查询请求消息队列; 进程任务管理模块,用于接收所述动态页面管理模块按照所述查询请求消息队列推送的查询请求,为所述查询请求分配空闲的处理进程,向内存集群管理模块请求与所述待查询信息对应的票务信息; 所述内存集群管理模块,用于将所述票务信息反馈给所述进程任务管理模块,以使所述进程任务管理模块将所述票务信息反馈给所述动态页面管理模块从而将所述票务信息推送给所述用户。
7.根据权利要求6所述的系统,其特征在于,所述进程任务管理模块具体用于采用只读的方式,从所述内存集群管理模块中读取与所述待查询信息对应的票务信息。
8.根据权利要求6或7所述的系统,其特征在于,所述动态页面管理模块,还用于接收所述用户根据所述票务信息发送的订票请求,将所述订票请求加入订票请求消息队列; 所述进程任务管理模块,还用于接收所述动态页面管理模块按照所述订票请求消息队列推送的订票请求,为所述订票请求分配空闲的处理进程,向内存集群管理模块请求订票结果息; 所述内存集群管理模块,还用于将所述订票结果信息反馈给所述进程任务管理模块,以使所述进程任务管理模块将所述订票结果信息反馈给所述动态页面管理模块从而将所述订票结果信息推送给所述用户。
9.根据权利要求8所述的系统,其特征在于,所述进程任务管理模块具体用于采用独占的方式,从所述内存集群管理模块中读取所述订票结果信息。
10.根据权利要求6或7所述的系统,其特征在于,还包括 票务基础资源管理模块,用于采用异步方式将所述票务信息推送给所述内存集群管理模块。
全文摘要
本发明提供一种票务处理方法及系统,该方法包括静态页面管理模块接收用户输入的包含网页标识的访问请求,并将与网页标识对应的网页推送给用户;动态页面管理模块接收用户通过网页发送的包含待查询信息的查询请求,将查询请求加入查询请求消息队列;进程任务管理模块接收动态页面管理模块按照查询请求消息队列推送的查询请求,为查询请求分配空闲的处理进程,向内存集群管理模块请求与待查询信息对应的票务信息;内存集群管理模块将票务信息反馈给进程任务管理模块,以使进程任务管理模块将票务信息反馈给动态页面管理模块从而将票务信息推送给所述用户。通过本发明提供的票务处理方法及系统,增强了系统性能,满足大并发查询订票的需求。
文档编号G06Q10/02GK102881050SQ20121035021
公开日2013年1月16日 申请日期2012年9月19日 优先权日2012年9月19日
发明者郭强 申请人:中国联合网络通信集团有限公司
文档序号 :
【 6377378 】
技术研发人员:郭强
技术所有人:中国联合网络通信集团有限公司
备 注:该技术已申请专利,仅供学习研究,如用于商业用途,请联系技术所有人。
声 明 :此信息收集于网络,如果你是此专利的发明人不想本网站收录此信息请联系我们,我们会在第一时间删除
技术研发人员:郭强
技术所有人:中国联合网络通信集团有限公司
备 注:该技术已申请专利,仅供学习研究,如用于商业用途,请联系技术所有人。
声 明 :此信息收集于网络,如果你是此专利的发明人不想本网站收录此信息请联系我们,我们会在第一时间删除