CN107656784A - 一种基于事件的流程处理方法及装置和服务器 - Google Patents

一种基于事件的流程处理方法及装置和服务器 Download PDF

Info

Publication number
CN107656784A
CN107656784A CN201611220361.2A CN201611220361A CN107656784A CN 107656784 A CN107656784 A CN 107656784A CN 201611220361 A CN201611220361 A CN 201611220361A CN 107656784 A CN107656784 A CN 107656784A
Authority
CN
China
Prior art keywords
event
server
client
data
sent
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.)
Withdrawn
Application number
CN201611220361.2A
Other languages
English (en)
Inventor
方敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Bill Trading Center Co Ltd
Original Assignee
Wuhan Bill Trading Center Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from CN201610606530.XA external-priority patent/CN106227584A/zh
Priority claimed from CN201610607261.9A external-priority patent/CN106326016A/zh
Application filed by Wuhan Bill Trading Center Co Ltd filed Critical Wuhan Bill Trading Center Co Ltd
Publication of CN107656784A publication Critical patent/CN107656784A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing
    • G06Q30/0635Processing of requisition or of purchase orders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/466Transaction processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2393Updating materialised views
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/045Payment circuits using payment protocols involving tickets
    • G06Q20/0457Payment circuits using payment protocols involving tickets the tickets being sent electronically
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/04Billing or invoicing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/12Accounting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/562Brokering proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5682Policies or rules for updating, deleting or replacing the stored data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5011Pool
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5018Thread allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/547Messaging middleware

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Technology Law (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Multi Processors (AREA)

Abstract

本发明公开了一种基于事件的流程处理方法及装置和服务器。其中方法包括:当接收到客户端发送的服务器事件时,确定所述事件是否为自身需要处理的服务器事件;如果是,则使用预设的事件处理类进行处理,否则转发至消息服务器,以便其他应用服务器读取并处理,当连接服务器监听到应用服务器处理完成后转发至客户端的交易处理结果的服务器事件时,根据优先级进行处理;转换成客户端事件,根据该服务器事件的分发列表,发送给对应的客户端。在上述方案中,整个业务流程以事件为驱动,可实现流程的快速流转,应用服务器与连接服务器等服务器之间并不直接交互,可以显著提高各服务器的执行效率,同时客户端不存储任何交易数据,降低对客户端的内存占用。

Description

一种基于事件的流程处理方法及装置和服务器
技术领域
本发明涉及计算机技术领域,特别涉及一种基于事件的流程处理方法及装置和服务器。
背景技术
票据是指出票人依法签发的由自己或指示他人无条件支付一定金额给收款人或持票人的有价证券,即某些可以代替现金流通的有价证券。票据的形式可以包括纸质票据和电子票据。随着互联网的发展,许多基于互联网的票据交易平台应运而生。
以银行承兑汇票为例,现有的票据交易平台的交易模式如下:用户可以在网上发送公开、定向的银行承兑汇票买断式、回购式转贴现报价,通过报价应答方式与业务人员联系,线下进行进一步议价交易。或者用户还可以通过网上填写承兑行类型、票面金额、汇票到期日等信息进行线下沟通议价等。
上述网络的交易平台的一个共同点在交易过程中,其主要作用还是发布交易信息,交易双方只能线下点对点进行票据议价,线下交易,一方面,银行承兑汇票进行交易要考虑的要素很多,在网站上找到自己想要的票据要花费很长的时间;另外一方面,当找到想要进行交易的票后要在线下通过一个一个打电话等方式跟对手方进行议价,费时费力还有可能失败从而需要重新寻找合适的票;最后,因为用户掌握的信息有限,所以用户在交易中的利益不能得到预期的保证。
基于上述问题,如何提供一种票据交易***,实现高效的票据交易流程流转,实现整个票据交易的电子化,解决用户之间信息不对称的问题,使交易双方都能够高效率地找到自身想要交易的票据或者交易者,成为亟待解决的问题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种基于事件的流程处理方法及装置和服务器。
第一方面,本发明提供一种基于事件的流程处理方法,包括:
当连接服务器接收到客户端发送的服务器事件时,确定所述事件是否为自身需要处理的服务器事件;当确定为是时,将所述服务器事件发送给所述连接服务器本地预设的处理该服务器事件的事件处理类进行处理;当确定为否时,将所述服务器事件发送给消息服务器,以便其他应用服务器从所述消息服务器读取并处理;
当连接服务器监听到应用服务器处理完成后转发至客户端的交易处理结果的服务器事件时,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理;根据处理结果更新缓存的数据,并将服务器事件转换成客户端事件,根据该服务器事件的分发列表,发送给对应的客户端;
所述根据该服务器事件的分发列表,发送给对应的客户端,包括:
连接服务器根据所述处理结果的分发列表,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据;所述视图模型是客户端对需要实时刷新的表格预先在连接服务器中注册的镜像;根据所述客户端当前显示的页面内容,判断是否需要将更新的数据推送给所述客户端;当需要时,将发生数据更新的所述视图模型的标识以及对应的更新的数据推送给客户端。
在一个实施例中,所述确定所述事件是否为自身需要处理的服务器事件,包括:
所述连接服务器判断所述服务器事件的类型是否与自身预先注册的事件类型一致,若一致,则确定所述服务器事件属于自身需要处理的服务器事件;否则,确定所述服务器事件不属于自身需要处理的服务器事件。
在一个实施例中,将所述服务器事件发送给消息服务器之后,还包括:
通过socket连接向发送服务器事件的客户端返回提交成功的消息。
在一个实施例中,当所述服务器事件为多个时,将所述服务器事件发送给所述连接服务器本地预设的处理该服务器事件的事件处理类进行处理,包括:
将各个服务器事件按照预设的优先级级别,分别缓存于对应级别的队列中,每个队列中服务器事件按照接收的时间先后排列;
按照优先级的高低顺序,依次从不同级别的队列中取出该队列中的服务器事件,并将所述服务器事件分发至对应级别的事件处理线程;
通过所述事件处理线程调用服务器事件对应的事件处理类,对所述服务器事件进行处理。
在一个实施例中,将所述服务器事件发送给所述连接服务器本地预设的处理该服务器事件的事件处理类进行处理之后,还包括:
对处理结果的数据进行序列化,对经过序列化处理后的数据通过socket连接返回给对应的客户端。
在一个实施例中,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理,包括:
将各个服务器事件按照预设的优先级级别,分别缓存于对应级别的队列中,每个队列中服务器事件按照接收的时间先后排列;
按照优先级的高低顺序,依次从不同级别的队列中取出该队列中的服务器事件,并将所述服务器事件分发至对应级别的事件处理线程;
通过所述事件处理线程调用服务器事件对应的事件处理类,对所述服务器事件进行处理。
在一个实施例中,所述客户端在所述连接服务器侧分配有对应的会话模型对象;所述会话模型对象记录有客户端的标识、客户端与连接服务器之间socket连接的标识;
所述根据该服务器事件的分发列表,发送给对应的客户端,包括:
所述会话模型对象根据所述分发列表,确定是否需要将所述事件转发给对应的客户端;若需要,则根据所述客户端的socket连接的标识,将所述事件发送给对应的客户端。
在一个实施例中,所述事件处理线程的处理性能与所处理的服务器事件的优先级级别正相关。
在一个实施例中,所述视图模型通过下述方式注册:
连接服务器在客户端已登录且与连接服务器连接后,当接收到客户端发送的视图模型注册请求时,为所述客户端新建对应的视图模型;所述视图模型对应所述客户端请求加载的页面中需要实时刷新的表格;
所述视图模型注册请求,由客户端请求加载的页面中包含需要实时刷新表格的页面触发。
在一个实施例中,在客户端已登录且与连接服务器连接后,还包括:所述连接服务器为客户端分配对应的会话模型对象;所述会话模型对象记录有客户端的标识、客户端与连接服务器之间socket连接的标识;
当连接服务器接收到客户端发送的视图模型注册请求时,为所述客户端新建对应的视图模型,具体包括:
在所述客户端对应的会话模型对象中新建对应的视图模型。
在一个实施例中,所述方法还包括:
当连接服务器接收客户端的第一次发送的页面加载请求时,确定需要发送的表格数据的条数n,并发送n条表格数据作为当前显示数据;分别记录所述当前显示页面中第一条数据和最后一条数据在所述表格中的位置作为上游标和下游标并保存;
当连接服务器接收客户端的表格分页刷新请求时,从所述下游标后面的第一条数据开始顺序向后获取n条表格数据,或者从所述上游标前面的最后一条数据开始顺序向前获取n条表格数据;将所述表格数据发送给客户端;更新所保存的上游标和下游标。
第二方面,本发明提供一种基于事件的流程处理装置,包括:
确定模块,用于当接收到客户端发送的服务器事件时,判断所述事件是否为自身需要处理的服务器事件;
第一事件处理模块,用于当判断模块判断为是时,将所述服务器事件发送给所述连接服务器本地预设的处理该服务器事件的事件处理类进行处理;
发送模块,用于当判断模块判断为否时,将所述服务器事件发送给消息服务器,以便其他应用服务器从所述消息服务器读取并处理;
第二事件处理模块,用于监听到需转发至客户端的交易处理结果的服务器事件时,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理;
缓存更新模块,用于根据处理结果更新缓存的数据;
转换模块,用于将服务器事件转换成客户端事件;
分发模块,用于根据该服务器事件的分发列表,发送给对应的客户端;所述根据该服务器事件的分发列表,发送给对应的客户端,包括:连接服务器根据所述处理结果的分发列表,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据;所述视图模型是客户端对需要实时刷新的表格预先在连接服务器中注册的镜像;根据所述客户端当前显示的页面内容,判断是否需要将更新的数据推送给所述客户端;当需要时,将发生数据更新的所述视图模型的标识以及对应的更新的数据推送给客户端。
在一个实施例中,所述确定模块,具体用于判断所述服务器事件的类型是否与自身预先注册的事件类型一致,若一致,则确定所述服务器事件属于自身需要处理的服务器事件;否则,确定所述服务器事件不属于自身需要处理的服务器事件。
在一个实施例中,所述发送模块,还用于将所述服务器事件发送给消息服务器之后,通过socket连接向发送服务器事件的客户端返回提交成功的消息。
在一个实施例中,所述服务器事件为多个时,所述事件处理模块,包括:
队列缓存子模块,用于将各个服务器事件按照预设的优先级级别,分别缓存于对应级别的队列中,每个队列中服务器事件按照接收的时间先后排列;
分发子模块,用于按照优先级的高低顺序,依次从不同级别的队列中取出该队列中的服务器事件,并将所述服务器事件分发至对应级别的事件处理线程;
处理子模块,用于通过所述事件处理线程调用服务器事件对应的事件处理类,对所述服务器事件进行处理。
在一个实施例中,上述装置还包括:序列化处理模块,用于对事件处理模块的处理结果的数据进行序列化;
相应地,所述发送模块,还用于将经过序列化处理后的数据通过socket连接返回给对应的客户端。
在一个实施例中,所述第二事件处理模块,包括:
队列缓存子模块,用于将各个服务器事件按照预设的优先级级别,分别缓存于对应级别的队列中,每个队列中服务器事件按照接收的时间先后排列;
分发子模块,用于按照优先级的高低顺序,依次从不同级别的队列中取出该队列中的服务器事件,并将所述服务器事件分发至对应级别的事件处理线程;
处理子模块,用于通过所述事件处理线程调用服务器事件对应的事件处理类,对所述服务器事件进行处理。
在一个实施例中,所述客户端在所述连接服务器侧分配有对应的会话模型对象;所述会话模型对象记录有客户端的标识、客户端与连接服务器之间socket连接的标识;
所述分发模块,用于根据所述分发列表,确定是否需要将所述事件转发给对应的客户端;若需要,则根据所述客户端的socket连接的标识,将所述事件发送给对应的客户端。
第三方面,本发明实施例还提供了一种连接服务器,该连接服务器包含上述基于事件的流程处理装置。
本发明实施例提供的上述技术方案的有益效果至少包括:
本发明实施例提供的上述基于事件的流程处理方法及装置和服务器中,在接收到客户端发送的服务器事件时,确认该事件是否为自身需要处理的服务器事件,如果是,则使用预设的事件处理类进行处理,否则转发至消息服务器,以便其他应用服务器读取并处理,当连接服务器监听到应用服务器处理完成后转发至客户端的交易处理结果的服务器事件时,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理;根据处理结果更新缓存的数据,并将服务器事件转换成客户端事件,根据该服务器事件的分发列表,发送给对应的客户端。
在上述方案中,整个业务流程以事件为驱动,可以实现流程的快速流转,并且,应用服务器与连接服务器等服务器之间并不直接交互,而采用消息服务器进行消息的中转,消息服务器作为消息中间件(Message Queue,MQ),负责服务器之间消息的缓存和转发,这种方式,消息可以驻留在内存或者磁盘上,直到它们被需要处理它们的服务器的应用程序读走,通过消息队列,服务器可以独立的执行,不需要知道彼此的位置,不需要直接与其他服务器进行交互,以及在继续执行流程的下一个步骤时不需要等待处理结果是否已被接收的服务器接收,这种快速的消息交换机制,一方面,对于服务器集群来说,可以显著提高各服务器的执行效率,另外一方面,也可以更好地适应于异构的网络环境,为大规模的网络架构的服务器间提供有效的通信手段。
并且,上述流程中,服务器事件按照其业务的重要程度,划分对应的优先级,并分配对应级别的事件处理线程分别进行处理,使得优先级较高的,要求响应速度特别快的事件得以优先处理,并根据该服务器事件的分发列表,发送给与该业务结果相关的所有客户端。
连接服务器更新本地缓存中分发列表中每个客户端与处理结果对应的视图模型的数据,并根据客户端当前显示的页面内容,判断是否需要将更新的数据推送给客户端,在判断需要时,将数据更新涉及到的视图模型的标识与对应的更新的数据推送给客户端,客户端可以根据视图模型的标识更新对应的表格,一方面,采用视图模型,视图模型是客户端将需要实时刷新的表格预先在连接服务器中注册的镜像,当发生交易数据的更新时,与客户端的显示的表格数据始终保持一致,保证表格内容实时更新的准确性,在必要时可以迅速响应表格刷新的需求;另一方面,根据客户端当前显示的页面内容,如果更新的内容在当前显示页面对应的数据中,则判断将更新的数据和视图模型的标识发给客户端,避免了客户端与服务器之间不必要的交互,智能地将用户关心的数据实时推送给客户端,客户端不存储任何交易数据,只显示用户关心的数据,降低对客户端的内存占用。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例提供的基于事件的流程处理方法所适用的网络架构图;
图2为本发明实施例提供的基于事件的流程处理方法的流程图;
图3为本发明实施例提供的确定事件是否为连接服务器需要处理的服务器事件的步骤的具体实施流程图;
图4为本发明实施例提供的将服务器事件发送给连接服务器本地预设的处理该服务器事件的处理类进行处理的具体实施流程图;
图5为本发明实施例提供的客户端向连接服务器发起交易请求的一个例子的示意图;
图6为为本发明实施例中会话模型对象的示意图;
图7为本发明实施例中更新本地缓存中分发列表中每个客户端与所述处理结果对应的视图模型的数据的步骤的流程图;
图8为本发明实施例中基于事件的流程处理方法中另一流程图;
图9为本发明实施例中步骤S202具体实施流程图;
图10为本发明实施例中一个简单例子的流程图;
图11为本发明实施例提供的基于事件的流程处理装置的结构示意图;
图12为本发明实施例提供的第二事件处理模块112的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
下面分别对本发明实施例提供的基于事件的流程处理方法及***的各种具体实施方式进行详细的说明。
为了更好地说明本发明实施例提供的基于事件的流程处理方法,首先对该基于事件的流程处理方法适用的网络架构进行简单介绍,如图1所示,该网络架构中包含票据交易客户端(例如可包括银行客户端或企业客户端),连接服务器和其他类型服务器(例如应用服务器等等);连接服务器与各客户端之间相连,用于处理客户端的服务请求的接受、连接会话的建立、维持和中断服务;应用服务器(也叫核心业务服务器)用于对用户登录进行认证、对用户交易权限进行验证、执行对应的交易逻辑,并在必要时对数据库进行读写操作;各服务器可以采用服务器集群的方式,以应对数量巨大的业务处理量。
在同一个票据交易***中,应用服务器是负责处理业务逻辑的服务器;应用服务器可以有一个或多个,应用服务器有多个时,彼此可以组成应用服务器集群,应用服务器与其他服务器例如连接服务器、其他应用服务器等之间并不直接交互,而是通过消息服务器进行消息的中转,消息服务器起到消息中间件的作用,缓存和转发每个服务器所需的消息(服务器事件)。
基于上述网络架构,本发明实施例提供的一种基于事件的流程处理方法,如图2所示,包括:
S201、当连接服务器接收到客户端发送的服务器事件时,确定所述事件是否为自身需要处理的服务器事件;当确定为是时,将所述服务器事件发送给所述连接服务器本地预设的处理该服务器事件的事件处理类进行处理;当确定为否时,将所述服务器事件发送给消息服务器,以便其他应用服务器从所述消息服务器读取并处理;
S202、当连接服务器监听到应用服务器处理完成后转发至客户端的交易处理结果的服务器事件时,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理;根据处理结果更新缓存的数据,并将服务器事件转换成客户端事件,根据该服务器事件的分发列表,发送给对应的客户端;
其中,步骤S202中,所述根据该服务器事件的分发列表,发送给对应的客户端,包括:
连接服务器根据所述处理结果的分发列表,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据;所述视图模型是客户端对需要实时刷新的表格预先在连接服务器中注册的镜像;根据所述客户端当前显示的页面内容,判断是否需要将更新的数据推送给所述客户端;当需要时,将发生数据更新的所述视图模型的标识以及对应的更新的数据推送给客户端。
本发明实施例提供的上述基于事件的流程处理方法,当连接服务器接收到客户端发送的服务器事件时,确认该事件是否为自身需要处理的服务器事件,如果是,则使用预设的事件处理类进行处理,否则转发至消息服务器,以便其他应用服务器读取并处理,当连接服务器监听到应用服务器处理完成后转发至客户端的交易处理结果的服务器事件时,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理;根据处理结果更新缓存的数据,并将服务器事件转换成客户端事件,根据该服务器事件的分发列表,发送给对应的客户端。
在上述方案中,整个业务流程以事件为驱动,可以实现流程的快速流转,并且,应用服务器与连接服务器等服务器之间并不直接交互,而采用消息服务器进行消息的中转,消息服务器作为消息中间件(Message Queue,MQ),负责服务器之间消息的缓存和转发,这种方式,消息可以驻留在内存或者磁盘上,直到它们被需要处理它们的服务器的应用程序读走,通过消息队列,服务器可以独立的执行,不需要知道彼此的位置,不需要直接与其他服务器进行交互,以及在继续执行流程的下一个步骤时不需要等待处理结果是否已被接收的服务器接收,这种快速的消息交换机制,一方面,对于服务器集群来说,可以显著提高各服务器的执行效率,另外一方面,也可以更好地适应于异构的网络环境,为大规模的网络架构的服务器间提供有效的通信手段。
并且,上述流程中,服务器事件按照其业务的重要程度,划分对应的优先级,并分配对应级别的事件处理线程分别进行处理,使得优先级较高的,要求响应速度特别快的事件得以优先处理,并根据该服务器事件的分发列表,发送给与该业务结果相关的所有客户端。
连接服务器更新本地缓存中分发列表中每个客户端与处理结果对应的视图模型的数据,并根据客户端当前显示的页面内容,判断是否需要将更新的数据推送给客户端,在判断需要时,将数据更新涉及到的视图模型的标识与对应的更新的数据推送给客户端,客户端可以根据视图模型的标识更新对应的表格,一方面,采用视图模型,视图模型是客户端将需要实时刷新的表格预先在连接服务器中注册的镜像,当发生交易数据的更新时,与客户端的显示的表格数据始终保持一致,保证表格内容实时更新的准确性,在必要时可以迅速响应表格刷新的需求;另一方面,根据客户端当前显示的页面内容,如果更新的内容在当前显示页面对应的数据中,则判断将更新的数据和视图模型的标识发给客户端,避免了客户端与服务器之间不必要的交互,智能地将用户关心的数据实时推送给客户端,客户端不存储任何交易数据,只显示用户关心的数据,降低对客户端的内存占用。
下面分别对上述各步骤进行详细的说明。
在一个实施例中,上述步骤S201中确定所述事件是否为自身需要处理的服务器事件,如图3所示,可具体实施为:
S301、连接服务器判断所述服务器事件的类型是否与自身预先注册的事件类型一致;若一致,则执行下述步骤S302;否则执行下述步骤S303;
S302、确定所述服务器事件属于自身需要处理的服务器事件。
S303、确定所述服务器事件不属于自身需要处理的服务器事件。
不论是连接服务器,还是各种类型的应用服务器,在本发明实施例中,都预先注册了各种需要自身处理的事件类型,根据预先注册的事件类型,就可以确认该消息是否为自身需要处理的消息。
例如采用Publisher(消息发布者)和consumer(消息消费者)实现的pub(发布)-sub(消费)的模式,消息发布者和消息消费者(服务器和服务器之间,客户端与服务器之间)预先设定了一个共同的topic(话题),有了这个模式之后,可以实现对于同一类话题的消息的发送和接收。
如果不是自身处理的服务器事件,则连接服务器将其发送至消息服务器,等待其他需要处理该事件的服务器读取。
对于连接服务器来说,其主要负责处理客户端的服务请求的接受、连接会话的建立、维持和中断服务;对于某些简单的查询类的关联事件,可以由连接服务器来处理,连接服务器查询数据库,获得查询结果,然后将查询的结果进行序列化,然后将序列化后的数据通过socket连接返回给客户端。
对客户端事件的序列化是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化主要是为了解决在对对象流进行读写操作时所引发的问题。
在一个实施例中,服务器事件发送给消息服务器之后,还包括执行下述步骤:通过socket连接向发送服务器事件的客户端返回提交成功的消息。
不论是否由自身处理,连接服务器在事件处理的同时或者将服务事件发送给消息服务器之后,将反馈一个提交成功的消息给客户端,客户端收到这个提交成功的消息后,及时会切换界面,避免用户等待,提高用户使用体验。比如结束正在提交查询请求的页面,转换到下一个界面。
在大型分布式的处理***中,连接服务器可能会与大量的客户端连接,当接收的服务器事件为多个时,将服务器事件发送给连接服务器本地预设的处理该服务器事件的处理类进行处理时,为了优化处理效率,在本发明实施例中,如图4所示,可以通过下述方式实现:
S401、将各个服务器事件按照预设的优先级级别,分别缓存于对应级别的队列中,每个队列中服务器事件按照接收的时间先后排列;
S402、按照优先级的高低顺序,依次从不同级别的队列中取出该队列中的服务器事件,并将服务器事件分发至对应级别的事件处理线程;
S403、通过事件处理线程调用服务器事件对应的事件处理类,对服务器事件进行处理。
服务器事件也按照其与业务之间的重要程度,划分对应的优先级,每个队列中按照事件接收的先后顺序来排列。
按照优先级的高低顺序,依次按照先入先出的规则,依次从不同级别的队列中取出该队列中的服务器事件,并将服务器事件分发至对应级别的事件处理线程;
不同的事件处理线程的处理能力也不同,总的来说,对应事件级别越高的,其线程的处理能力也越高。这样,多线程并行处理,并且,处理能力高的线程,也能够优先处理级别较高的服务器事件,可以整体提高处理能力。
如图5所示,在客户端,发起确认面板上,用户选择发送对象列表:张三、李四和王五;
客户端的交易请求管理监听类(InquiryManager)调用函数submitInquiry(),生成交易请求事件(DealRequestEvent),将画面的请求数据封装在该交易请求事件中,该交易请求事件(Deal_Request)的内容如下:事件名称:DealRequestAction,数据:交易请求事件(DealRequestEvent),其中包括交易ID,交易类型,交易限定时间,交易价格,发送对象列表等。事件对象即交易请求事件通过Map将数据序列化,然后再通过socket通信函数(sendDataToServer)将其发送给连接服务器;
连接服务器(CS)接收到客户端事件,事件名称为DealRequestAction,数据:交易请求事件(DealRequestEvent),发现自身不是处理该交易请求事件的服务器,将该事件发送到消息服务器。
消息队列技术是分布式应用间交换信息的一种技术。消息队列(其他服务器发送的事件形成的队列)可驻留在消息服务器的内存或磁盘上,队列存储消息直到它们被其他服务器的应用程序读走。通过消息队列,各服务器之间也可独立地执行,它们不需要知道彼此的位置、或在继续执行前不需要等待接收的服务器接收此消息。在分布式计算环境中,为了集成分布式应用,开发者需要对异构网络环境下的分布式应用提供有效的通信手段。为了管理需要共享的消息,这种消息中间件的技术是非常重要的。
在一个实施例中,所述客户端在所述连接服务器侧分配有对应的会话模型对象;所述会话模型对象记录有客户端的标识、客户端与连接服务器之间socket连接的标识;
所述根据该服务器事件的分发列表,发送给对应的客户端,包括:
所述会话模型对象根据所述分发列表,确定是否需要将所述事件转发给对应的客户端;若需要,则根据所述客户端的socket连接的标识,将所述事件发送给对应的客户端。
进一步地,在客户端登录且与连接服务器连接之后,连接服务器还可以为客户端分配与该客户端对应的会话(session)模型对象,会话模型对象记录有客户端的标识、客户端与连接服务器之间socket连接的标识;
这样,如图6所示,在连接服务器中,包含多个会话模型对象,每个会话模型对象都与一个客户端对应,会话模型对象用于管理每个客户端的视图模型。
上述连接服务器为该客户端建立与这些需要实时刷新的表格所对应的视图模型,具体可实施为:在客户端对应的会话模型对象中新建对应的视图模型。
进一步地,在上述步骤S202中,更新本地缓存中分发列表中每个客户端与所述处理结果对应的视图模型的数据的步骤,如图7所示,具体可实施为:
S71、将所述处理结果所涉及所述视图模型的标识和对应更新的数据,发送给所述客户端的会话模型对象;
S72、通过所述会话模型对象将所述处理结果发送给对应的视图模型,由所述视图模型更新自身数据。
进一步地,上述视图模型可以在客户端登录,与连接服务器建立连接,并请求加载相关页面时注册,具体来说,可以通过下述方式注册:
在客户端已登录且与连接服务器连接后,当接收到客户端发送的视图模型注册请求时,为所述客户端新建对应的视图模型;所述视图模型对应所述客户端请求加载的页面中需要实时刷新的表格;
客户端登录后,与连接服务器建立了连接,此时,当客户端请求加载某页面,而该页面上有预设的需要实时刷新的表格时,客户端会向连接服务器发送视图模型注册请求,连接服务器据此为该客户端建立与这些需要实时刷新的表格所对应的视图模型。
在一个实施例中,本发明实施例提供的基于事件的流程处理方法的方法,如图8所示,还可以执行下述步骤:
S81、当接收客户端的第一次发送的页面加载请求时,确定需要发送的表格数据的条数n,并发送n条表格数据作为当前显示数据;
S82、分别记录所述当前显示页面中第一条数据和最后一条数据在所述表格的全部数据位置作为上游标和下游标并保存;
S83、当接收客户端的表格分页刷新请求时,从所述下游标后面的第一条数据开始顺序向后获取n条表格数据,或者从所述上游标前面的最后一条数据开始顺序向前获取n条表格数据;
S84、将所述表格数据发送给客户端;
S85、更新所保存的上游标和下游标。
客户端显示的页面中,每一页都只显示n条数据,为了保证数据的实时推送,需要对客户端当前显示页面是那些数据进行记录,一旦发生更新的数据位于客户端当前显示的数据中,那么需要对客户端的数据进行刷新。
当接收到客户端的表格分页刷新请求时,如果客户端选择翻到后一页,则从所述下游标后面的第一条数据开始顺序向后获取n条表格数据,如果客户端选择翻到前一页,则从所述上游标前面的最后一条数据开始顺序向前获取n条表格数据。
以一个例子进行说明,从视图模型中的全部数据的第1条数据开始,发送30条数据给客户端的情况下,上游标可记为1,下游标记为30;当连接服务端收到客户端的刷新请求,发送下一个30条数据后,则上游标更新为31,下游标更新为60;若客户端此时只有15条数据可发送,发送15条数据后,则上游标更新为31,下游标更新为45。
若视图模型中的全部数据的数量小于或等于n条表格数据,则向客户端发送全部数据。
在本发明实施例中,更新处理结果中对应的视图模型的数据,包括:在视图模型中增加数据、删除数据和修改数据;
由于增加和删除会导致视图模型中数据条目的变化,因此在增加和删除数据之后,还需要针对视图模型中增加的或删除的数据以及其之后的数据,更新其位置信息。
例如视图模型中包含1-100条数据,如果在第32条这个位置增加一条数据,则原有的第32条数据会变成第33条数据,依次类推,最后一条数据变成第101条数据。
进一步地,上述步骤S202,如图9所示,在具体实施时,可以通过下述步骤实现:
S91、判断发生更新的数据在整个表格中的位置,是否位于所记录的所述上游标和下游标之间;若是,执行S92;
S92、将从上游标之后的n条表格数据重新推送给所述客户端。
一方面,需要在连接服务器视图模型中,始终保持实时更新的数据,另一方面,这样的数据并不一定需要实时推送给客户端,只有需要更新的数据位于上游标和下游标之间时,才会将更新后的数据推送过去,减少了客户端与服务器之间的不必要的交互,智能地将用户关心的数据实时推送给客户端,客户端不存储任何交易数据,只显示用户关心的数据,降低对客户端的内存占用。
一个简单的例子中,应用服务器处理交易完成后,在数据1和数据2后面增加了数据3,并将该事件封装,发送给消息服务器后,连接服务器读取该事件,如图10所示,连接服务器接收到该事件后,将其发送给分发列表中所有用户的会话模型对象,会话模型对象发送给对应的视图模型对象,接收到该事件的视图模型对象处理该事件,对视图模型的数据进行更新,当客户端B查看对应的更新的数据时,向客户端例如客户端B推送数据1-3。
基于同一发明构思,本发明实施例还提供了一种基于事件的流程处理装置和连接服务器,由于该装置和连接服务器所解决问题的原理与前述实施例提供的基于事件的流程处理方法相似,因此该装置和连接服务器的实施可以参见前述方法的实施,重复之处不再赘述。
本发明实施例提供的基于事件的流程处理装置,如图11所示,包括:
确定模块111,用于当接收到客户端发送的服务器事件时,判断所述事件是否为自身需要处理的服务器事件;
第一事件处理模块112,用于当判断模块判断为是时,将所述服务器事件发送给所述连接服务器本地预设的处理该服务器事件的事件处理类进行处理;
发送模块113,用于当判断模块判断为否时,将所述服务器事件发送给消息服务器,以便其他应用服务器从所述消息服务器读取并处理;
第二事件处理模块114,用于监听到需转发至客户端的交易处理结果的服务器事件时,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理;
缓存更新模块115,用于根据处理结果更新缓存的数据;
转换模块116,用于将服务器事件转换成客户端事件;
分发模块117,用于根据该服务器事件的分发列表,发送给对应的客户端;所述根据该服务器事件的分发列表,发送给对应的客户端,包括:连接服务器根据所述处理结果的分发列表,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据;所述视图模型是客户端对需要实时刷新的表格预先在连接服务器中注册的镜像;根据所述客户端当前显示的页面内容,判断是否需要将更新的数据推送给所述客户端;当需要时,将发生数据更新的所述视图模型的标识以及对应的更新的数据推送给客户端。
在一个实施例中,确定模块111,具体用于判断所述服务器事件的类型是否与自身预先注册的事件类型一致,若一致,则确定所述服务器事件属于自身需要处理的服务器事件;否则,确定所述服务器事件不属于自身需要处理的服务器事件。
在一个实施例中,所述发送模块113,还用于将所述服务器事件发送给消息服务器之后,通过socket连接向发送服务器事件的客户端返回提交成功的消息。
在一个实施例中,所述服务器事件为多个时,第二事件处理模块112,如图12所示,包括:
队列缓存子模块1121,用于将各个服务器事件按照预设的优先级级别,分别缓存于对应级别的队列中,每个队列中服务器事件按照接收的时间先后排列;
分发子模块1122,用于按照优先级的高低顺序,依次从不同级别的队列中取出该队列中的服务器事件,并将所述服务器事件分发至对应级别的事件处理线程;
处理子模块1123,用于通过所述事件处理线程调用服务器事件对应的事件处理类,对所述服务器事件进行处理。
在一个实施例中,上述基于事件的流程处理装置,如图11所示,还可以包括:序列化处理模块118,用于对事件处理模块的处理结果的数据进行序列化;
相应地,所述发送模块113,还用于将经过序列化处理后的数据通过socket连接返回给对应的客户端。
在一个实施例中,上述客户端在所述连接服务器侧分配有对应的会话模型对象;所述会话模型对象记录有客户端的标识、客户端与连接服务器之间socket连接的标识;
所述分发模块117,用于根据所述分发列表,确定是否需要将所述事件转发给对应的客户端;若需要,则根据所述客户端的socket连接的标识,将所述事件发送给对应的客户端。
在一个实施例中,本发明实施例还提供了一种连接服务器,所述连接服务器包含本发明实施例提供的上述基于事件的流程处理装置。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (11)

1.一种基于事件的流程处理方法,其特征在于,包括:
当连接服务器接收到客户端发送的服务器事件时,确定所述事件是否为自身需要处理的服务器事件;当确定为是时,将所述服务器事件发送给所述连接服务器本地预设的处理该服务器事件的事件处理类进行处理;当确定为否时,将所述服务器事件发送给消息服务器,以便其他应用服务器从所述消息服务器读取并处理;
当连接服务器监听到应用服务器处理完成后转发至客户端的交易处理结果的服务器事件时,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理;根据处理结果更新缓存的数据,并将服务器事件转换成客户端事件,根据该服务器事件的分发列表,发送给对应的客户端;
所述根据该服务器事件的分发列表,发送给对应的客户端,包括:
连接服务器根据所述处理结果的分发列表,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据;所述视图模型是客户端对需要实时刷新的表格预先在连接服务器中注册的镜像;根据所述客户端当前显示的页面内容,判断是否需要将更新的数据推送给所述客户端;当需要时,将发生数据更新的所述视图模型的标识以及对应的更新的数据推送给客户端。
2.如权利要求1所述的方法,其特征在于,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理,包括:
将各个服务器事件按照预设的优先级级别,分别缓存于对应级别的队列中,每个队列中服务器事件按照接收的时间先后排列;
按照优先级的高低顺序,依次从不同级别的队列中取出该队列中的服务器事件,并将所述服务器事件分发至对应级别的事件处理线程;
通过所述事件处理线程调用服务器事件对应的事件处理类,对所述服务器事件进行处理。
3.如权利要求1所述的方法,其特征在于,所述客户端在所述连接服务器侧分配有对应的会话模型对象;所述会话模型对象记录有客户端的标识、客户端与连接服务器之间socket连接的标识;
所述根据该服务器事件的分发列表,发送给对应的客户端,包括:
所述会话模型对象根据所述分发列表,确定是否需要将所述事件转发给对应的客户端;若需要,则根据所述客户端的socket连接的标识,将所述事件发送给对应的客户端。
4.如权利要求1所述的方法,其特征在于,所述视图模型通过下述方式注册:
连接服务器在客户端已登录且与连接服务器连接后,当接收到客户端发送的视图模型注册请求时,为所述客户端新建对应的视图模型;所述视图模型对应所述客户端请求加载的页面中需要实时刷新的表格;
所述视图模型注册请求,由客户端请求加载的页面中包含需要实时刷新表格的页面触发。
5.如权利要求4所述的方法,其特征在于,在客户端已登录且与连接服务器连接后,还包括:所述连接服务器为客户端分配对应的会话模型对象;所述会话模型对象记录有客户端的标识、客户端与连接服务器之间socket连接的标识;
当连接服务器接收到客户端发送的视图模型注册请求时,为所述客户端新建对应的视图模型,具体包括:
在所述客户端对应的会话模型对象中新建对应的视图模型。
6.如权利要求1所述的方法,其特征在于,所述方法还包括:
当连接服务器接收客户端的第一次发送的页面加载请求时,确定需要发送的表格数据的条数n,并发送n条表格数据作为当前显示数据;分别记录所述当前显示页面中第一条数据和最后一条数据在所述表格中的位置作为上游标和下游标并保存;
当连接服务器接收客户端的表格分页刷新请求时,从所述下游标后面的第一条数据开始顺序向后获取n条表格数据,或者从所述上游标前面的最后一条数据开始顺序向前获取n条表格数据;将所述表格数据发送给客户端;更新所保存的上游标和下游标。
7.一种基于事件的流程处理装置,其特征在于,包括:
确定模块,用于当接收到客户端发送的服务器事件时,判断所述事件是否为自身需要处理的服务器事件;
第一事件处理模块,用于当判断模块判断为是时,将所述服务器事件发送给所述连接服务器本地预设的处理该服务器事件的事件处理类进行处理;
发送模块,用于当判断模块判断为否时,将所述服务器事件发送给消息服务器,以便其他应用服务器从所述消息服务器读取并处理;
第二事件处理模块,用于监听到需转发至客户端的交易处理结果的服务器事件时,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理;
缓存更新模块,用于根据处理结果更新缓存的数据;
转换模块,用于将服务器事件转换成客户端事件;
分发模块,用于根据该服务器事件的分发列表,发送给对应的客户端;所述根据该服务器事件的分发列表,发送给对应的客户端,包括:连接服务器根据所述处理结果的分发列表,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据;所述视图模型是客户端对需要实时刷新的表格预先在连接服务器中注册的镜像;根据所述客户端当前显示的页面内容,判断是否需要将更新的数据推送给所述客户端;当需要时,将发生数据更新的所述视图模型的标识以及对应的更新的数据推送给客户端。
8.如权利要求7所述的装置,其特征在于,所述确定模块,具体用于判断所述服务器事件的类型是否与自身预先注册的事件类型一致,若一致,则确定所述服务器事件属于自身需要处理的服务器事件;否则,确定所述服务器事件不属于自身需要处理的服务器事件。
9.如权利要求8所述的装置,其特征在于,所述第二事件处理模块,包括:
队列缓存子模块,用于将各个服务器事件按照预设的优先级级别,分别缓存于对应级别的队列中,每个队列中服务器事件按照接收的时间先后排列;
分发子模块,用于按照优先级的高低顺序,依次从不同级别的队列中取出该队列中的服务器事件,并将所述服务器事件分发至对应级别的事件处理线程;
处理子模块,用于通过所述事件处理线程调用服务器事件对应的事件处理类,对所述服务器事件进行处理。
10.如权利要求9所述的装置,其特征在于,所述客户端在所述连接服务器侧分配有对应的会话模型对象;所述会话模型对象记录有客户端的标识、客户端与连接服务器之间socket连接的标识;
所述分发模块,用于根据所述分发列表,确定是否需要将所述事件转发给对应的客户端;若需要,则根据所述客户端的socket连接的标识,将所述事件发送给对应的客户端。
11.一种连接服务器,其特征在于,所述连接服务器包含如权利要求7-10任一项所述的基于事件的流程处理装置。
CN201611220361.2A 2016-07-25 2016-12-26 一种基于事件的流程处理方法及装置和服务器 Withdrawn CN107656784A (zh)

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
CN201610591965 2016-07-25
CN2016105919651 2016-07-25
CN201610606530.XA CN106227584A (zh) 2016-07-28 2016-07-28 一种基于状态机的事件驱动方法和***
CN2016106072619 2016-07-28
CN201610606530X 2016-07-28
CN201610607261.9A CN106326016A (zh) 2016-07-28 2016-07-28 一种多线程事件分发方法和***
CN2016108035099 2016-09-06
CN201610803509 2016-09-06
CN2016108410855 2016-09-22
CN201610841085 2016-09-22

Publications (1)

Publication Number Publication Date
CN107656784A true CN107656784A (zh) 2018-02-02

Family

ID=61126735

Family Applications (31)

Application Number Title Priority Date Filing Date
CN201611218386.9A Pending CN107656818A (zh) 2016-07-25 2016-12-26 一种票据交易的流程实现方法及相关***
CN201611218348.3A Pending CN107659546A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及装置和服务器
CN201611219280.0A Withdrawn CN107657419A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及相关装置和服务器
CN201611220307.8A Pending CN107656824A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及相关装置和服务器
CN201611220330.7A Withdrawn CN107657531A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及***
CN201611219325.4A Withdrawn CN107656778A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及***
CN201611220354.2A Withdrawn CN107659549A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及装置和服务器
CN201611220292.5A Withdrawn CN107657501A (zh) 2016-07-25 2016-12-26 一种数据实时更新的方法及相关装置和服务器
CN201611220361.2A Withdrawn CN107656784A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及装置和服务器
CN201611219331.XA Withdrawn CN107656779A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及相关***
CN201611218383.5A Pending CN107656801A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及***
CN201611220338.3A Withdrawn CN107656783A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及***
CN201611220337.9A Pending CN107657532A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及***
CN201611218372.7A Withdrawn CN107659605A (zh) 2016-07-25 2016-12-26 一种票据交易的流程实现方法及相关***
CN201611218388.8A Pending CN107659547A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及装置和服务器
CN201611218389.2A Withdrawn CN107657530A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及***
CN201611220312.9A Withdrawn CN107656781A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及***
CN201611220334.5A Withdrawn CN107656782A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及***
CN201611219329.2A Withdrawn CN107657420A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及***
CN201611218373.1A Withdrawn CN107657517A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及相关装置和服务器
CN201611219359.3A Pending CN107656822A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及相关***
CN201611218394.3A Pending CN107656819A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及相关***
CN201611219350.2A Withdrawn CN107656780A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及***
CN201611220324.1A Withdrawn CN107659548A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及装置和客户端
CN201611218380.1A Withdrawn CN107656808A (zh) 2016-07-25 2016-12-26 一种票据交易的流程实现方法及相关***
CN201611219315.0A Pending CN107656821A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及相关装置和服务器
CN201611219367.8A Pending CN107656823A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及相关***
CN201611219300.4A Pending CN107656820A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及相关装置和服务器
CN201611220358.0A Withdrawn CN107657518A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及相关装置和服务器
CN201611219323.5A Withdrawn CN107656777A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及***
CN201611220322.2A Withdrawn CN107656809A (zh) 2016-07-25 2016-12-26 一种票据交易的流程实现方法及相关***

Family Applications Before (8)

Application Number Title Priority Date Filing Date
CN201611218386.9A Pending CN107656818A (zh) 2016-07-25 2016-12-26 一种票据交易的流程实现方法及相关***
CN201611218348.3A Pending CN107659546A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及装置和服务器
CN201611219280.0A Withdrawn CN107657419A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及相关装置和服务器
CN201611220307.8A Pending CN107656824A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及相关装置和服务器
CN201611220330.7A Withdrawn CN107657531A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及***
CN201611219325.4A Withdrawn CN107656778A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及***
CN201611220354.2A Withdrawn CN107659549A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及装置和服务器
CN201611220292.5A Withdrawn CN107657501A (zh) 2016-07-25 2016-12-26 一种数据实时更新的方法及相关装置和服务器

Family Applications After (22)

Application Number Title Priority Date Filing Date
CN201611219331.XA Withdrawn CN107656779A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及相关***
CN201611218383.5A Pending CN107656801A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及***
CN201611220338.3A Withdrawn CN107656783A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及***
CN201611220337.9A Pending CN107657532A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及***
CN201611218372.7A Withdrawn CN107659605A (zh) 2016-07-25 2016-12-26 一种票据交易的流程实现方法及相关***
CN201611218388.8A Pending CN107659547A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及装置和服务器
CN201611218389.2A Withdrawn CN107657530A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及***
CN201611220312.9A Withdrawn CN107656781A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及***
CN201611220334.5A Withdrawn CN107656782A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及***
CN201611219329.2A Withdrawn CN107657420A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及***
CN201611218373.1A Withdrawn CN107657517A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及相关装置和服务器
CN201611219359.3A Pending CN107656822A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及相关***
CN201611218394.3A Pending CN107656819A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及相关***
CN201611219350.2A Withdrawn CN107656780A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及***
CN201611220324.1A Withdrawn CN107659548A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及装置和客户端
CN201611218380.1A Withdrawn CN107656808A (zh) 2016-07-25 2016-12-26 一种票据交易的流程实现方法及相关***
CN201611219315.0A Pending CN107656821A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及相关装置和服务器
CN201611219367.8A Pending CN107656823A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及相关***
CN201611219300.4A Pending CN107656820A (zh) 2016-07-25 2016-12-26 一种业务流程的处理方法及相关装置和服务器
CN201611220358.0A Withdrawn CN107657518A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及相关装置和服务器
CN201611219323.5A Withdrawn CN107656777A (zh) 2016-07-25 2016-12-26 一种基于事件的流程处理方法及***
CN201611220322.2A Withdrawn CN107656809A (zh) 2016-07-25 2016-12-26 一种票据交易的流程实现方法及相关***

Country Status (1)

Country Link
CN (31) CN107656818A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109669791A (zh) * 2018-12-22 2019-04-23 网宿科技股份有限公司 交互方法、服务器及计算机可读存储介质
CN114039981A (zh) * 2021-11-11 2022-02-11 中国建设银行股份有限公司 一种消息处理方法、装置、服务器及存储介质
CN116841772A (zh) * 2023-08-30 2023-10-03 成都中科合迅科技有限公司 基于事件队列的跨线程信号处理方法和***

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107122239A (zh) * 2017-04-28 2017-09-01 武汉票据交易中心有限公司 一种多线程事件分发方法和***
CN108595530A (zh) * 2018-03-30 2018-09-28 武汉楚鼎信息技术有限公司 一种后台处理和存储用户消息的方法及***装置
CN108519903A (zh) * 2018-04-09 2018-09-11 平安普惠企业管理有限公司 静态资源适配方法、装置、计算机设备及存储介质
CN108616597B (zh) * 2018-05-09 2021-06-15 四川华创世纪科技有限公司 一种实现服务永不中断的分布式运行方法
CN109032723A (zh) * 2018-06-28 2018-12-18 北京潘达互娱科技有限公司 一种界面跳转方法、装置及设备
CN109104297B (zh) * 2018-07-09 2022-01-21 中国银行股份有限公司 一种业务流程的处理方法及装置
CN109165994A (zh) * 2018-07-17 2019-01-08 北京知果科技有限公司 一种信息推送方法和服务器
CN109213495A (zh) * 2018-08-23 2019-01-15 郑州云海信息技术有限公司 一种数据的读取方法及装置
CN109144701A (zh) * 2018-09-05 2019-01-04 郑州云海信息技术有限公司 一种任务流管理方法、装置、设备及***
CN109376054B (zh) * 2018-09-25 2023-02-28 广州虎牙信息科技有限公司 一种数据分发的方法、装置、终端设备及存储介质
CN110968586B (zh) * 2018-09-30 2023-08-25 北京国双科技有限公司 分布式事务处理方法及装置
CN109542592A (zh) * 2018-11-22 2019-03-29 深圳墨世科技有限公司 事件处理方法及装置
CN109729410B (zh) * 2018-12-29 2022-03-04 北京字节跳动网络技术有限公司 一种直播间交互事件处理方法、装置、设备及存储介质
CN109889373B (zh) * 2019-01-22 2022-06-21 视联动力信息技术股份有限公司 一种告警信息的传输方法、装置和***
CN110009283B (zh) * 2019-04-03 2021-09-07 北京思特奇信息技术股份有限公司 一种服务产品的电商化物流跟踪方法和***
CN110099111A (zh) * 2019-04-26 2019-08-06 深圳智链物联科技有限公司 一种推送消息的显示***及其显示方法
CN110267228B (zh) * 2019-06-13 2022-03-22 重庆邮电大学 一种v2x车载终端消息自适应调度管理***及方法
CN110532088B (zh) * 2019-07-15 2022-09-23 金蝶汽车网络科技有限公司 连接处理方法、装置、计算机设备和存储介质
CN110490600B (zh) * 2019-08-23 2022-04-26 中国联合网络通信集团有限公司 处理银行业务的方法、服务器、终端
CN110708356B (zh) * 2019-09-06 2024-01-05 国云科技股份有限公司 一种注册中心管理第三方应用的方法和***
CN110597867B (zh) * 2019-09-09 2023-04-28 珠海格力电器股份有限公司 图文数据处理方法及***
CN110995781B (zh) * 2019-11-01 2022-01-11 腾讯科技(深圳)有限公司 点赞信息处理方法、装置及***
JP7385436B2 (ja) * 2019-11-12 2023-11-22 株式会社野村総合研究所 管理システム
CN110855529B (zh) * 2019-11-26 2021-04-23 广东物壹信息科技股份有限公司 网络信息安全监护方法、装置、服务器及可读存储介质
CN111008069B (zh) * 2019-12-02 2023-12-15 浙江大搜车软件技术有限公司 业务处理方法、装置、计算机设备和存储介质
CN111131425B (zh) * 2019-12-18 2022-08-30 东软集团股份有限公司 分布式***以及分布式***的通信方法
CN111158928B (zh) * 2019-12-18 2024-04-05 东软集团股份有限公司 分布式***及通信方法
CN111144982B (zh) * 2019-12-20 2022-02-11 网联清算有限公司 订单状态转移方法、装置、电子设备和存储介质
CN111179081A (zh) * 2019-12-24 2020-05-19 中国建设银行股份有限公司 一种消息的处理方法和处理装置
CN111210286A (zh) * 2019-12-26 2020-05-29 大象慧云信息技术有限公司 一种基于税控服务器的***高效开具方法及***
CN111210288A (zh) * 2019-12-26 2020-05-29 大象慧云信息技术有限公司 基于税控服务器的***批量开具作业优化调度方法及***
CN111277626B (zh) * 2020-01-07 2023-08-22 平安科技(深圳)有限公司 服务器升级方法、装置、电子设备及介质
CN111352674B (zh) * 2020-02-21 2023-07-07 中国平安财产保险股份有限公司 名单流转方法、服务器及计算机可读存储介质
CN111367694B (zh) * 2020-03-18 2024-01-26 北京奇艺世纪科技有限公司 事件处理方法、服务器及计算机存储介质
CN111581114B (zh) * 2020-06-04 2023-10-27 网易(杭州)网络有限公司 事件处理方法、装置、存储介质、处理器及电子装置
CN111880611B (zh) * 2020-06-19 2022-06-28 深圳宏芯宇电子股份有限公司 用于快速交易的服务器及快速交易数据处理方法
CN111770171B (zh) * 2020-06-29 2023-05-02 浪潮通用软件有限公司 一种微服务模式下多页面功能会话周期状态管理方法
CN112015393B (zh) * 2020-08-25 2024-05-03 ***股份有限公司 一种业务处理方法及装置
CN112100187B (zh) * 2020-08-31 2024-01-26 武汉美和易思数字科技有限公司 一种基于VueJS的学生学习数据存储方法及装置
CN112131238B (zh) * 2020-09-30 2022-07-22 江苏苏宁银行股份有限公司 一种交易状态机设计方法、处理装置和处理方法
CN112702270B (zh) * 2020-12-18 2023-05-02 深圳赛安特技术服务有限公司 基于事件分发机制的节点调用方法、***及存储介质
CN114760530B (zh) * 2020-12-25 2023-08-01 深圳Tcl新技术有限公司 事件处理方法、装置、电视机及计算机可读存储介质
CN112559535B (zh) * 2020-12-28 2023-08-22 平安银行股份有限公司 基于多线程的异步任务处理方法、装置、设备及介质
CN112667527A (zh) * 2021-01-15 2021-04-16 北京云上曲率科技有限公司 一种确保客户端数据采集准确性的方法及客户端
CN112700310B (zh) * 2021-01-19 2021-09-07 汇通数科智能科技有限公司 一种基于电商平台的交易订单数据优化处理方法
CN112860454B (zh) * 2021-02-05 2024-04-19 百果园技术(新加坡)有限公司 业务处理***及方法
CN112860460B (zh) * 2021-02-23 2022-01-04 创盛视联数码科技(北京)有限公司 用于实时课堂的事件分发方法及***
CN112766935B (zh) * 2021-02-24 2024-03-01 中国工商银行股份有限公司 处理票据业务的方法、装置、计算设备和介质
CN112988813A (zh) * 2021-03-16 2021-06-18 武汉卓宇诚科技有限公司 一种农产品信息追溯方法
CN113031992B (zh) * 2021-04-27 2023-04-07 中国平安人寿保险股份有限公司 Annoy热更新方法、装置、设备及介质
CN113204442B (zh) * 2021-05-31 2023-11-24 成都安恒信息技术有限公司 一种基于MVVM模式的操作IndexedDB的javascript库***
CN113742807B (zh) * 2021-09-07 2024-05-14 广联达科技股份有限公司 交互处理方法、装置及电子设备
CN113761006A (zh) * 2021-09-10 2021-12-07 南京星邺汇捷网络科技有限公司 基于多队列的事件时序性保障方法
CN113821279A (zh) * 2021-11-24 2021-12-21 深圳市永联科技股份有限公司 一种状态转换的方法、装置及嵌入式设备
CN114357029B (zh) * 2022-01-04 2022-09-02 工银瑞信基金管理有限公司 业务数据的处理方法、装置、设备及介质
CN114385267B (zh) * 2022-01-13 2024-06-18 平安壹钱包电子商务有限公司 一种用于出款交易业务的数据推送方法
CN114615318B (zh) * 2022-01-24 2023-04-28 阿里云计算有限公司 一种数据处理方法及装置
CN115225633B (zh) * 2022-06-24 2024-04-12 浪潮软件集团有限公司 基于对端网络信号的状态机状态转换方法及***
CN115309536B (zh) * 2022-10-12 2023-01-24 青岛民航凯亚***集成有限公司 高并发的彩票交易场景下数据一致性方法
CN117215755B (zh) * 2023-11-07 2024-02-06 西安博达软件股份有限公司 一种基于时间轮算法的预约事件任务调度方法及***

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102255867A (zh) * 2010-05-18 2011-11-23 华为技术有限公司 服务请求处理方法、装置及***
CN102291416A (zh) * 2011-09-14 2011-12-21 成都软智科技有限公司 一种客户端与服务器端双向同步的方法及***
CN102594798A (zh) * 2011-12-31 2012-07-18 苏州阔地网络科技有限公司 一种连接数据库的代理方法及***
CN102843389A (zh) * 2011-06-21 2012-12-26 国承斌 基于事件驱动的web***和方法

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7441240B2 (en) * 2003-01-07 2008-10-21 Matsushita Electric Industrial Co., Ltd. Process scheduling apparatus, process scheduling method, program for process scheduling, and storage medium recording a program for process scheduling
CN1482566A (zh) * 2003-01-22 2004-03-17 余育新 分布式工作流管理平台
CN1487446A (zh) * 2003-06-24 2004-04-07 深圳市华磊网络技术有限公司 服务器端应用为浏览器客户端提供用户界面的方法
CN1983313B (zh) * 2006-04-07 2011-08-10 华为技术有限公司 工作流数据处理装置及方法
CN101201753B (zh) * 2007-12-13 2012-12-26 浪潮通信信息***有限公司 一种多状态机管理引擎的配置管理方法
CN101873334B (zh) * 2009-04-24 2013-01-02 同济大学 一种状态驱动的可执行业务流程执行方法
CN101551745A (zh) * 2009-05-13 2009-10-07 山东中创软件工程股份有限公司 大幅度提高工作流引擎性能的方法
CN101741850B (zh) * 2009-12-25 2012-05-30 北京邮电大学 面向混合网络服务的多任务并发执行***及方法
CN102025650A (zh) * 2010-06-04 2011-04-20 西本新干线股份有限公司 企业服务总线的消息处理***和消息处理方法
CN101957751B (zh) * 2010-06-04 2013-07-24 福建星网锐捷网络有限公司 一种状态机的实现方法及装置
CN102340495B (zh) * 2010-07-26 2014-09-03 ***通信集团广东有限公司 一种支撑跨***业务联动的事件中心及其事件处理方法
CN102044089A (zh) * 2010-09-20 2011-05-04 董福田 一种三维模型的自适应化简、渐进传输和快速绘制的方法
CN101982955B (zh) * 2010-11-19 2013-09-04 深圳华大基因科技有限公司 高性能文件传输***及方法
CN102693434B (zh) * 2011-03-22 2015-01-28 中兴通讯股份有限公司 射频识别设备接口层的通信装置及方法
CN102562162B (zh) * 2011-12-14 2014-05-07 北京邮电大学 一种基于事件处理的煤矿报警***及方法
CN102572954B (zh) * 2012-01-31 2015-05-20 ***(深圳)有限公司 一种漫游清算服务调度方法、中间件及***
CN102664934B (zh) * 2012-04-06 2015-04-15 北京华夏电通科技股份有限公司 一种用于服务器自适应自反馈的多线程控制方法及***
CN102904887B (zh) * 2012-09-26 2016-01-20 东软集团股份有限公司 一种Web客户端与服务器的数据同步方法和***
US9235464B2 (en) * 2012-10-16 2016-01-12 Microsoft Technology Licensing, Llc Smart error recovery for database applications
CN103093342A (zh) * 2013-01-11 2013-05-08 北京掌上汇通科技发展有限公司 一种联机交易处理平台及其交易处理方法
CN103197968B (zh) * 2013-03-18 2016-03-30 焦点科技股份有限公司 一种融合同步异步特点的线程池处理方法及***
CN103179133B (zh) * 2013-04-12 2016-03-30 北京工业大学 基于实体类的客户端与服务器通信的方法
CN103366471B (zh) * 2013-06-26 2015-08-12 福建联迪商用设备有限公司 一种联机业务并发处理方法、***及服务器
CN104253808B (zh) * 2013-06-29 2018-05-08 北京新媒传信科技有限公司 即时通信***中的状态呈现方法和状态呈现服务器
CN104793999A (zh) * 2014-01-21 2015-07-22 航天信息股份有限公司 伺服服务器架构***
CN103854168B (zh) * 2014-02-17 2016-09-28 湖南中烟工业有限责任公司 异构流程待办集中处理方法及处理装置
CN103927218B (zh) * 2014-04-30 2017-07-04 广州唯品会网络技术有限公司 事件分发方法及***
CN104615647B (zh) * 2014-12-25 2018-05-01 百度在线网络技术(北京)有限公司 视图模型请求、下发方法及装置
CN104618432B (zh) * 2014-12-30 2019-03-08 北京红马传媒文化发展有限公司 一种事件发送与接收的处理方法和处理***
CN104580226B (zh) * 2015-01-15 2017-07-11 上海瀚之友信息技术服务有限公司 一种共享会话数据的***和方法
CN104820701B (zh) * 2015-05-11 2018-02-06 北京瑞星信息技术股份有限公司 数据记录和同步方法及***
CN105573840B (zh) * 2015-12-08 2019-06-14 东软集团股份有限公司 工作流运行期的事件处理方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102255867A (zh) * 2010-05-18 2011-11-23 华为技术有限公司 服务请求处理方法、装置及***
CN102843389A (zh) * 2011-06-21 2012-12-26 国承斌 基于事件驱动的web***和方法
CN102291416A (zh) * 2011-09-14 2011-12-21 成都软智科技有限公司 一种客户端与服务器端双向同步的方法及***
CN102594798A (zh) * 2011-12-31 2012-07-18 苏州阔地网络科技有限公司 一种连接数据库的代理方法及***

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109669791A (zh) * 2018-12-22 2019-04-23 网宿科技股份有限公司 交互方法、服务器及计算机可读存储介质
CN114039981A (zh) * 2021-11-11 2022-02-11 中国建设银行股份有限公司 一种消息处理方法、装置、服务器及存储介质
CN114039981B (zh) * 2021-11-11 2024-04-02 中国建设银行股份有限公司 一种消息处理方法、装置、服务器及存储介质
CN116841772A (zh) * 2023-08-30 2023-10-03 成都中科合迅科技有限公司 基于事件队列的跨线程信号处理方法和***
CN116841772B (zh) * 2023-08-30 2023-11-07 成都中科合迅科技有限公司 基于事件队列的跨线程信号处理方法和***

Also Published As

Publication number Publication date
CN107656780A (zh) 2018-02-02
CN107659548A (zh) 2018-02-02
CN107659605A (zh) 2018-02-02
CN107656822A (zh) 2018-02-02
CN107659549A (zh) 2018-02-02
CN107656779A (zh) 2018-02-02
CN107656808A (zh) 2018-02-02
CN107656783A (zh) 2018-02-02
CN107659547A (zh) 2018-02-02
CN107656777A (zh) 2018-02-02
CN107656801A (zh) 2018-02-02
CN107657517A (zh) 2018-02-02
CN107657532A (zh) 2018-02-02
CN107656821A (zh) 2018-02-02
CN107657501A (zh) 2018-02-02
CN107657518A (zh) 2018-02-02
CN107657530A (zh) 2018-02-02
CN107656782A (zh) 2018-02-02
CN107657531A (zh) 2018-02-02
CN107656824A (zh) 2018-02-02
CN107656823A (zh) 2018-02-02
CN107656819A (zh) 2018-02-02
CN107656778A (zh) 2018-02-02
CN107656820A (zh) 2018-02-02
CN107656818A (zh) 2018-02-02
CN107656809A (zh) 2018-02-02
CN107656781A (zh) 2018-02-02
CN107657420A (zh) 2018-02-02
CN107657419A (zh) 2018-02-02
CN107659546A (zh) 2018-02-02

Similar Documents

Publication Publication Date Title
CN107656784A (zh) 一种基于事件的流程处理方法及装置和服务器
CN107369012A (zh) 一种支付信息处理方法及***、及具有履约保证保险机制的预付卡处理方法
CN107430618A (zh) 实现与主计算设备进行用户语音交互的***和方法
CN104992357A (zh) 一种拼单方法和装置
CN106600373A (zh) 一种基于即时通讯的商品交易数据处理方法及***
WO2020136775A1 (ja) 機械学習モデル共創システム、機械学習モデル共創方法、及びプログラム
CN104240049A (zh) 一种订单综合处理***
CN104240048A (zh) 一种订单综合处理平台
US11614981B2 (en) Handling of metadata for microservices processing
JP2020194387A (ja) マッチング支援装置、マッチング支援方法、コンピュータプログラム及び記録媒体
CN107171941A (zh) 一种分享和社交模式的互联网供应链平台,方法和装置
CN107169738B (zh) 一种基于信息主题股份化的信息服务平台、***及方法
CN117014458A (zh) 一种跨链处理业务的方法、装置、计算机设备及存储介质
TWM609200U (zh) 液化石油氣產業應用系統
CN113781184A (zh) 基于互联网的智慧城市服务平台
TWI238327B (en) Message delivery system transmitting massive messages in short period of time
CN115660760A (zh) 基于区块链的增值税***的开票预测方法及装置
CN118014721A (zh) 碳排放指标的管理方法、装置、计算机设备、介质及产品
CN116974652A (zh) 基于saas平台的智能交互方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20180202