CN107657518A - 一种基于事件的流程处理方法及相关装置和服务器 - Google Patents
一种基于事件的流程处理方法及相关装置和服务器 Download PDFInfo
- Publication number
- CN107657518A CN107657518A CN201611220358.0A CN201611220358A CN107657518A CN 107657518 A CN107657518 A CN 107657518A CN 201611220358 A CN201611220358 A CN 201611220358A CN 107657518 A CN107657518 A CN 107657518A
- Authority
- CN
- China
- Prior art keywords
- client
- data
- event
- server
- view model
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0633—Lists, e.g. purchase orders, compilation or processing
- G06Q30/0635—Processing of requisition or of purchase orders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2393—Updating materialised views
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/045—Payment circuits using payment protocols involving tickets
- G06Q20/0457—Payment circuits using payment protocols involving tickets the tickets being sent electronically
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/04—Billing or invoicing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/02—Banking, e.g. interest calculation or account maintenance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/12—Accounting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/562—Brokering proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5011—Pool
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5018—Thread allocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/547—Messaging middleware
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Accounting & Taxation (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Databases & Information Systems (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Data Mining & Analysis (AREA)
- Technology Law (AREA)
- Human Resources & Organizations (AREA)
- Computer Security & Cryptography (AREA)
- Multimedia (AREA)
- Entrepreneurship & Innovation (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连接的标识;
当接收到客户端发送的视图模型注册请求时,为所述客户端新建对应的视图模型,具体包括:
在所述客户端对应的会话模型对象中新建对应的视图模型。
在一个实施例中,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据,包括:
将所述处理结果所涉及所述视图模型的标识和对应更新的数据,发送给所述客户端的会话模型对象;
通过所述会话模型对象将所述处理结果发送给对应的视图模型,由所述视图模型更新自身数据。
在一个实施例中,所述数据实时更新的方法,还包括:
当接收客户端的第一次发送的页面加载请求时,确定需要发送的表格数据的条数n,并发送n条表格数据作为当前显示数据;分别记录所述当前显示页面中第一条数据和最后一条数据在所述表格中的位置作为上游标和下游标并保存;
当接收客户端的表格分页刷新请求时,从所述下游标后面的第一条数据开始顺序向后获取n条表格数据,或者从所述上游标前面的最后一条数据开始顺序向前获取n条表格数据;将所述表格数据发送给客户端;更新所保存的上游标和下游标。
在一个实施例中,更新处理结果中对应的视图模型的数据,包括:在视图模型中增加数据、删除数据和修改数据;
在视图模型中增加数据和删除数据之后,还包括:针对视图模型中增加的或删除的数据以及其之后的数据,更新其位置信息。
在一个实施例中,根据所述客户端当前显示的页面内容,判断是否需要将更新的数据推送给所述客户端,当需要时,将更新的数据推送给客户端,包括:
判断发生更新的数据在整个表格中的位置,是否位于所记录的所述上游标和下游标之间;
若是,将从上游标之后的n条表格数据重新推送给所述客户端。
在一个实施例中,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理,包括:
将各个服务器事件按照预设的优先级级别,分别缓存于对应级别的队列中,每个队列中服务器事件按照接收的时间先后排列;
按照优先级的高低顺序,依次从不同级别的队列中取出该队列中的服务器事件,并将所述服务器事件分发至对应级别的事件处理线程;
通过所述事件处理线程调用服务器事件对应的事件处理类,对所述服务器事件进行处理。
在一个实施例中,所述事件处理线程的处理性能与所处理的服务器事件的优先级级别正相关。
第二方面,本发明实施例提供一种基于事件的流程处理装置,包括:
事件处理模块,用于监听到需转发至客户端的交易处理结果的服务器事件时,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理;
转换模块,用于将服务器事件转换成客户端事件;
更新模块,用于当接收到应用服务器返回的交易处理结果时,根据所述处理结果的分发列表,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据;所述视图模型是客户端对需要实时刷新的表格预先在连接服务器中注册的镜像;
判断模块,用于根据所述客户端当前显示的页面内容,判断是否需要将更新的数据推送给所述客户端;
推送模块,用于当所述判断模块判断需要时,将发生数据更新的所述视图模型的标识以及对应的更新的数据推送给客户端,以便客户端根据所述视图模型的标识更新本地对应的表格。
在一个实施例中,上述基于事件的流程处理装置还包括:
视图注册模块,用于在客户端已登录且与连接服务器连接后,当接收到客户端发送的视图模型注册请求时,为所述客户端新建对应的视图模型;所述视图模型对应所述客户端请求加载的页面中需要实时刷新的表格;所述视图模型注册请求,由客户端请求加载的页面中包含需要实时刷新表格的页面触发。
在一个实施例中,上述装置还包括:会话模型建立模块,用于在客户端已登录且与连接服务器连接后,为客户端分配对应的会话模型对象;所述会话模型对象记录有客户端的标识、客户端与连接服务器之间socket连接的标识;
所述视图注册模块,还用于在所述客户端对应的回话模型对象中新建对应的视图模型。
在一个实施例中,所述更新模块,包括:
发送子模块,用于将所述处理结果所涉及所述视图模型的标识和对应更新的数据,发送给所述客户端的会话模型对象;
更新子模块,用于通过所述会话模型对象将所述处理结果发送给对应的视图模型,由所述视图模型更新自身数据。
在一个实施例中,上述装置,还包括:
分页显示同步模块,用于当接收客户端的第一次发送的页面加载请求时,确定需要发送的表格数据的条数n,并发送n条表格数据作为当前显示数据;当接收客户端的表格分页刷新请求时,从所述下游标后面的第一条数据开始顺序向后获取n条表格数据,或者从所述上游标前面的最后一条数据开始顺序向前获取n条表格数据;将所述表格数据发送给客户端;
游标记录模块,用于在分页显示同步模块显示数据时,分别记录所述当前显示页面中第一条数据和最后一条数据在所述表格的全部数据位置作为上游标和下游标并保存;并在当接收客户端的表格分页刷新请求时,更新所保存的上游标和下游标。
在一个实施例中,所述更新模块,具体用于当在视图模型中增加数据和删除数据之后,针对视图模型中增加的或删除的数据以及其之后的数据,更新其位置信息。
在一个实施例中,所述判断模块,具体用于判断发生更新的数据在整个表格中的位置,是否位于所述上游标和下游标之间;
所述推送模块,具体用于当所述判断模块判断为是时,若是,将从上游标之后的n条表格数据重新推送给所述客户端。
在一个实施例中,所述事件处理模块,包括:
队列缓存子模块,用于将各个服务器事件按照预设的优先级级别,分别缓存于对应级别的队列中,每个队列中服务器事件按照接收的时间先后排列;
分发子模块,用于按照优先级的高低顺序,依次从不同级别的队列中取出该队列中的服务器事件,并将所述服务器事件分发至对应级别的事件处理线程;
处理子模块,用于通过所述事件处理线程调用服务器事件对应的事件处理类,对所述服务器事件进行处理。
第三方面,本发明实施例提供一种连接服务器,所述连接服务器包括本发明实施例提供的上述基于事件的流程处理装置。
本发明实施例提供的上述技术方案的有益效果至少包括:
本发明实施例提供的基于事件的流程处理装置及相关装置和服务器中,连接服务器监听到需转发至客户端的交易处理结果的服务器事件时,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理;将服务器事件转换成客户端事件,并根据处理结果的分发列表,更新本地缓存中分发列表中每个客户端与处理结果对应的视图模型的数据,并根据客户端当前显示的页面内容,判断是否需要将更新的数据推送给客户端,在判断需要时,将数据更新涉及到的视图模型的标识与对应的更新的数据推送给客户端,客户端可以根据视图模型的标识更新对应的表格,一方面,采用视图模型,视图模型是客户端将需要实时刷新的表格预先在连接服务器中注册的镜像,当发生交易数据的更新时,与客户端的显示的表格数据始终保持一致,保证表格内容实时更新的准确性,在必要时可以迅速响应表格刷新的需求;另一方面,根据客户端当前显示的页面内容,如果更新的内容在当前显示页面对应的数据中,则判断将更新的数据和视图模型的标识发给客户端,避免了客户端与服务器之间不必要的交互,智能地将用户关心的数据实时推送给客户端,客户端不存储任何交易数据,只显示用户关心的数据,降低对客户端的内存占用。
并且,服务器事件按照其业务的重要程度,划分对应的优先级,并分配对应级别的事件处理线程分别进行处理,使得优先级较高的,要求响应速度特别快的事件得以优先处理,进一步提高了处理效率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例提供的基于事件的流程处理方法的网络架构图;
图2为本发明实施例提供的基于事件的流程处理方法的流程图;
图3为本发明实施例中会话模型对象的示意图;
图4为本发明实施例中更新本地缓存中分发列表中每个客户端与所述处理结果对应的视图模型的数据的步骤的流程图;
图5为本发明实施例中基于事件的流程处理方法中另一流程图;
图6为本发明实施例中步骤S23具体实施流程图;
图7为本发明实施例中一个简单例子的流程图;
图8为本发明实施例提供的按照交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理的步骤的实现流程图;
图9为连接服务器处理过程的框图;
图10A-图10B为本发明实施例提供的交易过程的流程示意图;
图11为本发明实施例中基于事件的流程处理装置的结构框图;
图12为本发明实施例中更新模块113的框图;
图13为本发明实施例提供的事件处理模块111的框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
下面分别对本发明实施例提供的基于事件的流程处理方法及装置和服务器的各种具体实施方式进行详细的说明。
为了更好地说明本发明实施例提供的基于事件的流程处理方法,首先对该基于事件的流程处理方法适用的网络架构进行简单介绍,如图1所示,该网络架构中包含票据交易客户端(例如可包括银行客户端或企业客户端),连接服务器和其他类型服务器(例如应用服务器等等);连接服务器与各客户端之间相连,用于处理客户端的服务请求的接收、连接会话的建立、维持和中断服务;应用服务器(也叫核心业务服务器)用于对用户登录进行认证、对用户交易权限进行验证、执行对应的交易逻辑,并在必要时对数据库进行读写操作;各服务器可以采用服务器集群的方式,以应对数量巨大的业务处理量。
本发明实施例提供的基于事件的流程处理方法,如图2所示,包括下述步骤:
S21、连接服务器监听到需转发至客户端的交易处理结果的服务器事件时,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理;
S22、将服务器事件转换成客户端事件,并根据所述处理结果的分发列表,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据;所述视图模型是客户端对需要实时刷新的表格预先在连接服务器中注册的镜像;
S23、根据所述客户端当前显示的页面内容,判断是否需要将更新的数据推送给所述客户端;当需要时,将发生数据更新的所述视图模型的标识以及对应的更新的数据推送给客户端,以便客户端根据所述视图模型的标识更新本地对应的表格。
本发明实施例提供的数据实时更新的方法,连接服务器监听到需转发至客户端的交易处理结果的服务器事件时,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理;将服务器事件转换成客户端事件,并根据处理结果的分发列表,更新本地缓存中分发列表中每个客户端与处理结果对应的视图模型的数据,并根据客户端当前显示的页面内容,判断是否需要将更新的数据推送给客户端,在判断需要时,将数据更新涉及到的视图模型的标识与对应的更新的数据推送给客户端,客户端可以根据视图模型的标识更新对应的表格,一方面,采用视图模型,视图模型是客户端将需要实时刷新的表格预先在连接服务器中注册的镜像,当发生交易数据的更新时,与客户端的显示的表格数据始终保持一致,保证表格内容实时更新的准确性,在必要时可以迅速响应表格刷新的需求;另一方面,根据客户端当前显示的页面内容,如果更新的内容在当前显示页面对应的数据中,则判断将更新的数据和视图模型的标识发给客户端,避免了客户端与服务器之间不必要的交互,只传输必须更新的数据,智能地将用户关心的数据实时推送给客户端,客户端不存储任何交易数据,只显示用户关心的数据,降低对客户端的内存占用。
并且,服务器事件按照其业务的重要程度,划分对应的优先级,并分配对应级别的事件处理线程分别进行处理,使得优先级较高的,要求响应速度特别快的事件得以优先处理,进一步提高了处理效率。
上述S21中,连接服务器从消息服务器中监听是否有需要转发给客户端的事件。
消息服务器作为消息中间件中转消息,负责服务器之间消息的缓存和转发,这种方式,消息可以驻留在内存或者磁盘上,直到它们被需要处理它们的服务器的应用程序读走,通过消息队列,服务器可以独立的执行,不需要知道彼此的位置,不需要直接与其他服务器进行交互,以及在继续执行流程的下一个步骤时不需要等待处理结果是否已被接收的服务器接收,这种快速的消息交换机制,一方面,对于服务器集群来说,可以显著提高各服务器的执行效率,另外一方面,也可以更好地适应于异构的网络环境,为大规模的网络架构的服务器间提供有效的通信手段。
本实施例中,每个视图模型都与一个需要实时刷新的表格相对应。需要实时刷新的表格包括:现有持仓、持仓日志、交易动态等表格,一个票据交易状态的变化,可能会涉及到买家、卖家多个交易员当前显示界面中需要实时刷新的表格,这类表格的内容,不需要用户主动点击刷新,就能够智能刷新,实时地展示交易变化,使用户能够直观地、快速地了解当前交易行情。视图模型(MVC,Model-View-Controller)是客户端对需要实时刷新的表格预先在连接服务器中注册的镜像,也就是说,视图模型的数据内容始终保持与客户端的实时同步,至于是否需要将更新的数据交易推送给客户端展示,则需要根据当前客户端所展示的页面来决定。
上述实施例中,处理结果的分发列表可以是由应用服务器发送给连接服务器的,分发列表中包含交易数据所涉及的各个客户端的标识。
进一步地,上述视图模型可以在客户端登录,与连接服务器建立连接,并请求加载相关页面时注册,具体来说,可以通过下述方式注册:
在客户端已登录且与连接服务器连接后,当接收到客户端发送的视图模型注册请求时,为所述客户端新建对应的视图模型;所述视图模型对应所述客户端请求加载的页面中需要实时刷新的表格;
客户端登录后,与连接服务器建立了连接,此时,当客户端请求加载某页面,而该页面上有预设的需要实时刷新的表格时,客户端会向连接服务器发送视图模型注册请求,连接服务器据此为该客户端建立与这些需要实时刷新的表格所对应的视图模型。
进一步地,在客户端登录且与连接服务器连接之后,连接服务器还可以为客户端分配与该客户端对应的会话(session)模型对象,会话模型对象记录有客户端的标识、客户端与连接服务器之间socket连接的标识;
这样,如图3所示,在连接服务器中,包含多个会话模型对象,每个会话模型对象都与一个客户端对应,会话模型对象用于管理每个客户端的视图模型。
上述连接服务器为该客户端建立与这些需要实时刷新的表格所对应的视图模型,具体可实施为:在客户端对应的会话模型对象中新建对应的视图模型。
进一步地,在上述步骤S21中,更新本地缓存中分发列表中每个客户端与所述处理结果对应的视图模型的数据的步骤,如图4所示,具体可实施为:
S41、将所述处理结果所涉及所述视图模型的标识和对应更新的数据,发送给所述客户端的会话模型对象;
S42、通过所述会话模型对象将所述处理结果发送给对应的视图模型,由所述视图模型更新自身数据。
在一个实施例中,本发明实施例提供的基于事件的流程处理方法,如图5所示,还可以执行下述步骤:
S51、当接收客户端的第一次发送的页面加载请求时,确定需要发送的表格数据的条数n,并发送n条表格数据作为当前显示数据;
S52、分别记录所述当前显示页面中第一条数据和最后一条数据在所述表格的全部数据位置作为上游标和下游标并保存;
S53、当接收客户端的表格分页刷新请求时,从所述下游标后面的第一条数据开始顺序向后获取n条表格数据,或者从所述上游标前面的最后一条数据开始顺序向前获取n条表格数据;
S54、将所述表格数据发送给客户端;
S55、更新所保存的上游标和下游标。
客户端显示的页面中,每一页都只显示n条数据,为了保证数据的实时推送,需要对客户端当前显示页面是那些数据进行记录,一旦发生更新的数据位于客户端当前显示的数据中,那么需要对客户端的数据进行刷新。
当接收到客户端的表格分页刷新请求时,如果客户端选择翻到后一页,则从所述下游标后面的第一条数据开始顺序向后获取n条表格数据,如果客户端选择翻到前一页,则从所述上游标前面的最后一条数据开始顺序向前获取n条表格数据。
以一个例子进行说明,从视图模型中的全部数据的第1条数据开始,发送30条数据给客户端的情况下,上游标可记为1,下游标记为30;当连接服务端收到客户端的刷新请求,发送下一个30条数据后,则上游标更新为31,下游标更新为60;若客户端此时只有15条数据可发送,发送15条数据后,则上游标更新为31,下游标更新为45。
若视图模型中的全部数据的数量小于或等于n条表格数据,则向客户端发送全部数据。
在本发明实施例中,更新处理结果中对应的视图模型的数据,包括:在视图模型中增加数据、删除数据和修改数据;
由于增加和删除会导致视图模型中数据条目的变化,因此在增加和删除数据之后,还需要针对视图模型中增加的或删除的数据以及其之后的数据,更新其位置信息。
例如视图模型中包含1-100条数据,如果在第32条这个位置增加一条数据,则原有的第32条数据会变成第33条数据,依次类推,最后一条数据变成第101条数据。
进一步地,上述步骤S23,如图6所示,在具体实施时,可以通过下述步骤实现:
S61、判断发生更新的数据在整个表格中的位置,是否位于所记录的所述上游标和下游标之间;若是,执行S62;
S62、将从上游标之后的n条表格数据重新推送给所述客户端。
一方面,需要在连接服务器视图模型中,始终保持实时更新的数据,另一方面,这样的数据并不一定需要实时推送给客户端,只有需要更新的数据位于上游标和下游标之间时,才会将更新后的数据推送过去,减少了客户端与服务器之间的不必要的交互,智能地将用户关心的数据实时推送给客户端,客户端不存储任何交易数据,只显示用户关心的数据,降低对客户端的内存占用。
一个简单的例子中,应用服务器处理交易完成后,在数据1和数据2后面增加了数据3,并将该事件封装,发送给消息服务器后,连接服务器读取该事件,如图7所示,连接服务器接收到该事件后,将其发送给分发列表中所有用户的会话模型对象,会话模型对象发送给对应的视图模型对象,接收到该事件的视图模型对象处理该事件,对视图模型的数据进行更新,当客户端B查看对应的更新的数据时,向客户端例如客户端B推送数据1-3。
上述S21中,如图8所示,根据交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理,具体可以实施为:
S81、将各个服务器事件按照预设的优先级级别,分别缓存于对应级别的队列中,每个队列中服务器事件按照接收的时间先后排列;
S82、按照优先级的高低顺序,依次从不同级别的队列中取出该队列中的服务器事件,并将所述服务器事件分发至对应级别的事件处理线程;
S83、通过事件处理线程调用服务器事件对应的事件处理类,对服务器事件进行处理。
如图9所示,消息服务器负责存储和转发服务器之间的各种消息(或称事件),连接服务器例如可以采用消息监听线程持续监听,当监听到需要转发给客户端的各类业务处理结果的服务器事件时,根据不同服务器事件的优先级存储到对应级别的队列之中。
如图9所示,例如队列分为三个等级:L代表低优先级、N代表中优先级和H代表高优先级,L队列中按照事件先后顺序放置。
不同事件处理线程的处理性能与所处理的服务器事件的优先级级别正相关。
较高优先级别的服务器事件,可以使用较高性能的事件处理线程处理,反之,较低优先级别的服务器事件,可以使用较低性能的事件处理线程处理;
按照优先级的高低顺序,依次按照先入先出的规则,依次从不同级别的队列中取出该队列中的服务器事件,并将服务器事件分发至对应级别的事件处理线程;
不同的事件处理线程的处理能力也不同,总的来说,对应事件级别越高的,其线程的处理能力也越高。这样,多线程并行处理,并且,处理能力高的线程,也能够优先处理级别较高的服务器事件,可以整体提高处理能力。
线程池中包含预先创建的多个线程,线程池适用于单个任务处理时间较短,但所需处理的任务数量大的情况,使用线程池的好处:1、减少在创建和销毁线程上所花的时间及系统资源的开销(将线程预先创建出来),2、如果不使用线程池,则有可能造成系统创建大量线程而导致消耗完系统内存以及“过度切换”。
处理不同优先级的事件处理线程分别属于不同级别的线程池。
如图9所示,事件处理线程也分为低优先级、普通优先级和高优先级,事件处理线程调用监听该事件的所有监听者(包括各功能和服务类)的processServerEvent方法,处理该事件。
如图9所示,事件监听处理类A和事件监听处理类B和事件监听处理C,事件处理终了后,发送给相应的客户端。
举例来说,发起交易后应用服务器计算A+B=C的计算结果,应用服务器将计算结果发送消息服务器,连接服务器读取消息服务器交易相关的各方,包括发起交易方和被动接收交易方,发起交易方和被动接收交易方分别包括各个交易员,连接服务器会将该计算结果发送给交易各方的交易员。
上述步骤S22将服务器事件转换成客户端事件,例如可以将Server Event转换成客户端能够处理的Application Event,客户端在接收到该事件后,执行预设的processApplication Event的方法,从而更新客户端的界面。
上述步骤S23中根据该服务器事件的分发列表,发送给对应的客户端,该事件的分发列表,由应用服务器根据该业务处理结果的逻辑,确定分发列表,发送给连接服务器,连接服务器根据该分发列表将交易处理结果发送给对应的客户端。
以赵六发起钢材交易的简单例子说明:
如图10A所示,在赵六在交易发起面板点击发起交易后,客户端生成客户端事件ActionEvent,ActionEvent监听器(DealPanel)监听到该事件,调用actionPerformed方法,构造请求数据BuildRequest(),然后启动一个新的ThreadWorker线程,进行数据处理(从连接服务器获取交易发送对象列表)和界面处理(弹出发起确认的界面),更新客户端界面至发起确认面板;
在确认面板中弹出发送给对象列表:张三、李四、王五,用户再次确认之后,客户端的交易请求管理监听类(InquiryManager)会调用函数submitinquiry(),生成对应的交易请求时间,将该画面的请求数据封装在该交易请求事件中。
交易请求事件中可包含:时间名称、事件数据(交易ID、交易类型、交易限定时间、交易价格和发送对象列表等);
然后事件对象(DealRequestEvent)通过Map将其数据序列化,最终通过socket通信函数将该交易请求事件发送给连接服务器;
连接服务器将该交易请求处理后发送到消息服务器,以便处理该交易请求的应用服务器读取并处理,应用服务器处理后,得到的最终的处理结果,即转发到张三、李四和王五的请求,通过服务器事件的方式再次存储到消息服务器;
如图10B所示,连接服务器从消息服务器读取到该服务器事件后,将其转换成对应的客户端事件,对事件进行分发,并通过socket通信发送给用户:张三、李四和王五;
客户端的交易请求管理监听类(InquiryManager)调用函数Receiveinquery弹窗处理。
比如用户:张三;
张三所使用的客户端的交易请求接收面板上限定了交易ID,交易类型、交易品种、交易限定时间、交易价格,交易状态,发送方和接收方等等。
基于同一发明构思,本发明实施例还提供了一种基于事件的流程处理装置和连接服务器,由于这些装置和服务器所解决问题的原理与前述基于事件的流程处理方法相似,因此该装置和连接服务器的实施可以参见前述方法的实施,重复之处不再赘述。
本发明实施例提供的一种基于事件的流程处理装置,如图11所示,包括:
事件处理模块111,用于监听到需转发至客户端的交易处理结果的服务器事件时,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理;
转换模块112,用于将服务器事件转换成客户端事件;
更新模块113,用于根据所述处理结果的分发列表,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据;所述视图模型是客户端对需要实时刷新的表格预先在连接服务器中注册的镜像;
判断模块114,用于根据所述客户端当前显示的页面内容,判断是否需要将更新的数据推送给所述客户端;
推送模块115,用于当所述判断模块判断需要时,将发生数据更新的所述视图模型的标识以及对应的更新的数据推送给客户端,以便客户端根据所述视图模型的标识更新本地对应的表格。
如图11所示,上述数据实时更新的装置,还包括:
视图注册模块116,用于在客户端已登录且与连接服务器连接后,当接收到客户端发送的视图模型注册请求时,为所述客户端新建对应的视图模型;所述视图模型对应所述客户端请求加载的页面中需要实时刷新的表格;所述视图模型注册请求,由客户端请求加载的页面中包含需要实时刷新表格的页面触发。
如图11所示,上述数据实时更新的装置,还包括:会话模型建立模块117,用于在客户端已登录且与连接服务器连接后,为客户端分配对应的会话模型对象;所述会话模型对象记录有客户端的标识、客户端与连接服务器之间socket连接的标识;
视图注册模块116,还用于在所述客户端对应的回话模型对象中新建对应的视图模型。
在一个实施例中,上述更新模块113,如图12所示,包括:
发送子模块1131,用于将所述处理结果所涉及所述视图模型的标识和对应更新的数据,发送给所述客户端的会话模型对象;
更新子模块1132,用于通过所述会话模型对象将所述处理结果发送给对应的视图模型,由所述视图模型更新自身数据。
在一个实施例中,如图11所示,上述数据实时更新的装置,还包括:
分页显示同步模块118,用于当接收客户端的第一次发送的页面加载请求时,确定需要发送的表格数据的条数n,并发送n条表格数据作为当前显示数据;当接收客户端的表格分页刷新请求时,从所述下游标后面的第一条数据开始顺序向后获取n条表格数据,或者从所述上游标前面的最后一条数据开始顺序向前获取n条表格数据;将所述表格数据发送给客户端;
游标记录模块119,用于在分页显示同步模块显示数据时,分别记录所述当前显示页面中第一条数据和最后一条数据在所述表格的全部数据位置作为上游标和下游标并保存;并在当接收客户端的表格分页刷新请求时,更新所保存的上游标和下游标。
在一个实施例中,上述更新模块113,具体用于当在视图模型中增加数据和删除数据之后,针对视图模型中增加的或删除的数据以及其之后的数据,更新其位置信息。
在一个实施例中,上述判断模块114,具体用于判断发生更新的数据在整个表格中的位置,是否位于所述上游标和下游标之间;
相应地,上述推送模块115,具体用于当所述判断模块判断为是时,若是,将从上游标之后的n条表格数据重新推送给所述客户端。
在一个实施例中,事件处理模块111,如图13所示,包括:
队列缓存子模块1111,用于将各个服务器事件按照预设的优先级级别,分别缓存于对应级别的队列中,每个队列中服务器事件按照接收的时间先后排列;
分发子模块1112,用于按照优先级的高低顺序,依次从不同级别的队列中取出该队列中的服务器事件,并将所述服务器事件分发至对应级别的事件处理线程;
处理子模块1113,用于通过所述事件处理线程调用服务器事件对应的事件处理类,对所述服务器事件进行处理。
事件处理线程的处理性能与所处理的服务器事件的优先级级别正相关。
本发明实施例还提供了一种连接服务器,该连接服务器包含上述基于事件的流程处理装置。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (14)
1.一种基于事件的流程处理方法,其特征在于,包括:
连接服务器监听到需转发至客户端的交易处理结果的服务器事件时,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理;
将服务器事件转换成客户端事件,并根据所述处理结果的分发列表,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据;所述视图模型是客户端对需要实时刷新的表格预先在连接服务器中注册的镜像;
根据所述客户端当前显示的页面内容,判断是否需要将更新的数据推送给所述客户端;当需要时,将发生数据更新的所述视图模型的标识以及对应的更新的数据推送给客户端,以便客户端根据所述视图模型的标识更新本地对应的表格。
2.如权利要求1所述的方法,其特征在于,所述视图模型通过下述方式注册:
在客户端已登录且与连接服务器连接后,当接收到客户端发送的视图模型注册请求时,为所述客户端新建对应的视图模型;所述视图模型对应所述客户端请求加载的页面中需要实时刷新的表格;
所述视图模型注册请求,由客户端请求加载的页面中包含需要实时刷新表格的页面触发。
3.如权利要求2所述的方法,其特征在于,在客户端已登录且与连接服务器连接后,还包括:为客户端分配对应的会话模型对象;所述会话模型对象记录有客户端的标识、客户端与连接服务器之间socket连接的标识;
当接收到客户端发送的视图模型注册请求时,为所述客户端新建对应的视图模型,具体包括:
在所述客户端对应的会话模型对象中新建对应的视图模型。
4.如权利要求3所述的方法,其特征在于,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据,包括:
将所述处理结果所涉及所述视图模型的标识和对应更新的数据,发送给所述客户端的会话模型对象;
通过所述会话模型对象将所述处理结果发送给对应的视图模型,由所述视图模型更新自身数据。
5.如权利要求1所述的方法,其特征在于,所述方法还包括:
当接收客户端的第一次发送的页面加载请求时,确定需要发送的表格数据的条数n,并发送n条表格数据作为当前显示数据;分别记录所述当前显示页面中第一条数据和最后一条数据在所述表格中的位置作为上游标和下游标并保存;
当接收客户端的表格分页刷新请求时,从所述下游标后面的第一条数据开始顺序向后获取n条表格数据,或者从所述上游标前面的最后一条数据开始顺序向前获取n条表格数据;将所述表格数据发送给客户端;更新所保存的上游标和下游标。
6.如权利要求1所述的方法,其特征在于,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理,包括:
将各个服务器事件按照预设的优先级级别,分别缓存于对应级别的队列中,每个队列中服务器事件按照接收的时间先后排列;
按照优先级的高低顺序,依次从不同级别的队列中取出该队列中的服务器事件,并将所述服务器事件分发至对应级别的事件处理线程;
通过所述事件处理线程调用服务器事件对应的事件处理类,对所述服务器事件进行处理。
7.如权利要求6所述的方法,其特征在于,所述事件处理线程的处理性能与所处理的服务器事件的优先级级别正相关。
8.一种基于事件的流程处理的装置,其特征在于,包括:
事件处理模块,用于监听到需转发至客户端的交易处理结果的服务器事件时,根据所述交易处理结果对应的优先级级别,分配对应级别的事件处理线程分别进行处理;
转换模块,用于将服务器事件转换成客户端事件;
更新模块,用于根据所述处理结果的分发列表,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据;所述视图模型是客户端对需要实时刷新的表格预先在连接服务器中注册的镜像;
判断模块,用于根据所述客户端当前显示的页面内容,判断是否需要将更新的数据推送给所述客户端;
推送模块,用于当所述判断模块判断需要时,将发生数据更新的所述视图模型的标识以及对应的更新的数据推送给客户端,以便客户端根据所述视图模型的标识更新本地对应的表格。
9.如权利要求8所述的装置,其特征在于,还包括:
视图注册模块,用于在客户端已登录且与连接服务器连接后,当接收到客户端发送的视图模型注册请求时,为所述客户端新建对应的视图模型;所述视图模型对应所述客户端请求加载的页面中需要实时刷新的表格;所述视图模型注册请求,由客户端请求加载的页面中包含需要实时刷新表格的页面触发。
10.如权利要求9所述的装置,其特征在于,还包括:会话模型建立模块,用于在客户端已登录且与连接服务器连接后,为客户端分配对应的会话模型对象;所述会话模型对象记录有客户端的标识、客户端与连接服务器之间socket连接的标识;
所述视图注册模块,还用于在所述客户端对应的回话模型对象中新建对应的视图模型。
11.如权利要求10所述的装置,其特征在于,所述更新模块,包括:
发送子模块,用于将所述处理结果所涉及所述视图模型的标识和对应更新的数据,发送给所述客户端的会话模型对象;
更新子模块,用于通过所述会话模型对象将所述处理结果发送给对应的视图模型,由所述视图模型更新自身数据。
12.如权利要求8所述的装置,其特征在于,还包括:
分页显示同步模块,用于当接收客户端的第一次发送的页面加载请求时,确定需要发送的表格数据的条数n,并发送n条表格数据作为当前显示数据;当接收客户端的表格分页刷新请求时,从所述下游标后面的第一条数据开始顺序向后获取n条表格数据,或者从所述上游标前面的最后一条数据开始顺序向前获取n条表格数据;将所述表格数据发送给客户端;
游标记录模块,用于在分页显示同步模块显示数据时,分别记录所述当前显示页面中第一条数据和最后一条数据在所述表格的全部数据位置作为上游标和下游标并保存;并在当接收客户端的表格分页刷新请求时,更新所保存的上游标和下游标。
13.如权利要求8所述的装置,其特征在于,所述事件处理模块,包括:
队列缓存子模块,用于将各个服务器事件按照预设的优先级级别,分别缓存于对应级别的队列中,每个队列中服务器事件按照接收的时间先后排列;
分发子模块,用于按照优先级的高低顺序,依次从不同级别的队列中取出该队列中的服务器事件,并将所述服务器事件分发至对应级别的事件处理线程;
处理子模块,用于通过所述事件处理线程调用服务器事件对应的事件处理类,对所述服务器事件进行处理。
14.一种连接服务器,其特征在于,所述连接服务器包括如权利要求8-13任一项所述的基于事件的流程处理装置。
Applications Claiming Priority (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2016105919651 | 2016-07-25 | ||
CN201610591965 | 2016-07-25 | ||
CN201610606530X | 2016-07-28 | ||
CN2016106072619 | 2016-07-28 | ||
CN201610606530.XA CN106227584A (zh) | 2016-07-28 | 2016-07-28 | 一种基于状态机的事件驱动方法和系统 |
CN201610607261.9A CN106326016A (zh) | 2016-07-28 | 2016-07-28 | 一种多线程事件分发方法和系统 |
CN201610803509 | 2016-09-06 | ||
CN2016108035099 | 2016-09-06 | ||
CN201610841085 | 2016-09-22 | ||
CN2016108410855 | 2016-09-22 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107657518A true CN107657518A (zh) | 2018-02-02 |
Family
ID=61126735
Family Applications (31)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611220354.2A Withdrawn CN107659549A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及装置和服务器 |
CN201611219350.2A Withdrawn CN107656780A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及系统 |
CN201611220358.0A Withdrawn CN107657518A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及相关装置和服务器 |
CN201611220312.9A Withdrawn CN107656781A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及系统 |
CN201611218386.9A Pending CN107656818A (zh) | 2016-07-25 | 2016-12-26 | 一种票据交易的流程实现方法及相关系统 |
CN201611218372.7A Withdrawn CN107659605A (zh) | 2016-07-25 | 2016-12-26 | 一种票据交易的流程实现方法及相关系统 |
CN201611220361.2A Withdrawn CN107656784A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及装置和服务器 |
CN201611218388.8A Pending CN107659547A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及装置和服务器 |
CN201611219280.0A Withdrawn CN107657419A (zh) | 2016-07-25 | 2016-12-26 | 一种业务流程的处理方法及相关装置和服务器 |
CN201611219367.8A Pending CN107656823A (zh) | 2016-07-25 | 2016-12-26 | 一种业务流程的处理方法及相关系统 |
CN201611220322.2A Withdrawn CN107656809A (zh) | 2016-07-25 | 2016-12-26 | 一种票据交易的流程实现方法及相关系统 |
CN201611219315.0A Pending CN107656821A (zh) | 2016-07-25 | 2016-12-26 | 一种业务流程的处理方法及相关装置和服务器 |
CN201611219331.XA Withdrawn CN107656779A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及相关系统 |
CN201611218389.2A Withdrawn CN107657530A (zh) | 2016-07-25 | 2016-12-26 | 一种业务流程的处理方法及系统 |
CN201611218383.5A Pending CN107656801A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及系统 |
CN201611220292.5A Withdrawn CN107657501A (zh) | 2016-07-25 | 2016-12-26 | 一种数据实时更新的方法及相关装置和服务器 |
CN201611219329.2A Withdrawn CN107657420A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及系统 |
CN201611220334.5A Withdrawn CN107656782A (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 | 一种业务流程的处理方法及相关系统 |
CN201611220338.3A Withdrawn CN107656783A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及系统 |
CN201611218380.1A Withdrawn CN107656808A (zh) | 2016-07-25 | 2016-12-26 | 一种票据交易的流程实现方法及相关系统 |
CN201611219325.4A Withdrawn CN107656778A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及系统 |
CN201611218373.1A Withdrawn CN107657517A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及相关装置和服务器 |
CN201611220324.1A Withdrawn CN107659548A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及装置和客户端 |
CN201611220330.7A Withdrawn CN107657531A (zh) | 2016-07-25 | 2016-12-26 | 一种业务流程的处理方法及系统 |
CN201611220307.8A Pending CN107656824A (zh) | 2016-07-25 | 2016-12-26 | 一种业务流程的处理方法及相关装置和服务器 |
CN201611219300.4A Pending CN107656820A (zh) | 2016-07-25 | 2016-12-26 | 一种业务流程的处理方法及相关装置和服务器 |
CN201611219323.5A Withdrawn CN107656777A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及系统 |
CN201611220337.9A Pending CN107657532A (zh) | 2016-07-25 | 2016-12-26 | 一种业务流程的处理方法及系统 |
CN201611218348.3A Pending CN107659546A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及装置和服务器 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611220354.2A Withdrawn CN107659549A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及装置和服务器 |
CN201611219350.2A Withdrawn CN107656780A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及系统 |
Family Applications After (28)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611220312.9A Withdrawn CN107656781A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及系统 |
CN201611218386.9A Pending CN107656818A (zh) | 2016-07-25 | 2016-12-26 | 一种票据交易的流程实现方法及相关系统 |
CN201611218372.7A Withdrawn CN107659605A (zh) | 2016-07-25 | 2016-12-26 | 一种票据交易的流程实现方法及相关系统 |
CN201611220361.2A Withdrawn CN107656784A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及装置和服务器 |
CN201611218388.8A Pending CN107659547A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及装置和服务器 |
CN201611219280.0A Withdrawn CN107657419A (zh) | 2016-07-25 | 2016-12-26 | 一种业务流程的处理方法及相关装置和服务器 |
CN201611219367.8A Pending CN107656823A (zh) | 2016-07-25 | 2016-12-26 | 一种业务流程的处理方法及相关系统 |
CN201611220322.2A Withdrawn CN107656809A (zh) | 2016-07-25 | 2016-12-26 | 一种票据交易的流程实现方法及相关系统 |
CN201611219315.0A Pending CN107656821A (zh) | 2016-07-25 | 2016-12-26 | 一种业务流程的处理方法及相关装置和服务器 |
CN201611219331.XA Withdrawn CN107656779A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及相关系统 |
CN201611218389.2A Withdrawn CN107657530A (zh) | 2016-07-25 | 2016-12-26 | 一种业务流程的处理方法及系统 |
CN201611218383.5A Pending CN107656801A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及系统 |
CN201611220292.5A Withdrawn CN107657501A (zh) | 2016-07-25 | 2016-12-26 | 一种数据实时更新的方法及相关装置和服务器 |
CN201611219329.2A Withdrawn CN107657420A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及系统 |
CN201611220334.5A Withdrawn CN107656782A (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 | 一种业务流程的处理方法及相关系统 |
CN201611220338.3A Withdrawn CN107656783A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及系统 |
CN201611218380.1A Withdrawn CN107656808A (zh) | 2016-07-25 | 2016-12-26 | 一种票据交易的流程实现方法及相关系统 |
CN201611219325.4A Withdrawn CN107656778A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及系统 |
CN201611218373.1A Withdrawn CN107657517A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及相关装置和服务器 |
CN201611220324.1A Withdrawn CN107659548A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及装置和客户端 |
CN201611220330.7A Withdrawn CN107657531A (zh) | 2016-07-25 | 2016-12-26 | 一种业务流程的处理方法及系统 |
CN201611220307.8A Pending CN107656824A (zh) | 2016-07-25 | 2016-12-26 | 一种业务流程的处理方法及相关装置和服务器 |
CN201611219300.4A Pending CN107656820A (zh) | 2016-07-25 | 2016-12-26 | 一种业务流程的处理方法及相关装置和服务器 |
CN201611219323.5A Withdrawn CN107656777A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及系统 |
CN201611220337.9A Pending CN107657532A (zh) | 2016-07-25 | 2016-12-26 | 一种业务流程的处理方法及系统 |
CN201611218348.3A Pending CN107659546A (zh) | 2016-07-25 | 2016-12-26 | 一种基于事件的流程处理方法及装置和服务器 |
Country Status (1)
Country | Link |
---|---|
CN (31) | CN107659549A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112702270A (zh) * | 2020-12-18 | 2021-04-23 | 深圳赛安特技术服务有限公司 | 基于事件分发机制的节点调用方法、系统及存储介质 |
CN116841772A (zh) * | 2023-08-30 | 2023-10-03 | 成都中科合迅科技有限公司 | 基于事件队列的跨线程信号处理方法和系统 |
Families Citing this family (63)
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 | 深圳墨世科技有限公司 | 事件处理方法及装置 |
CN109669791A (zh) * | 2018-12-22 | 2019-04-23 | 网宿科技股份有限公司 | 交互方法、服务器及计算机可读存储介质 |
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 | 浙江大搜车软件技术有限公司 | 业务处理方法、装置、计算机设备和存储介质 |
CN111158928B (zh) * | 2019-12-18 | 2024-04-05 | 东软集团股份有限公司 | 分布式系统及通信方法 |
CN111131425B (zh) * | 2019-12-18 | 2022-08-30 | 东软集团股份有限公司 | 分布式系统以及分布式系统的通信方法 |
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 | 江苏苏宁银行股份有限公司 | 一种交易状态机设计方法、处理装置和处理方法 |
CN114760530B (zh) * | 2020-12-25 | 2023-08-01 | 深圳Tcl新技术有限公司 | 事件处理方法、装置、电视机及计算机可读存储介质 |
CN112559535B (zh) * | 2020-12-28 | 2023-08-22 | 平安银行股份有限公司 | 基于多线程的异步任务处理方法、装置、设备及介质 |
CN112801722A (zh) * | 2020-12-29 | 2021-05-14 | 航天信息股份有限公司 | 一种缓存后开具发票的方法及系统 |
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热更新方法、装置、设备及介质 |
CN113220759A (zh) * | 2021-04-27 | 2021-08-06 | 深圳市云网万店科技有限公司 | 大数据存储服务共享方法、装置、计算机设备和存储介质 |
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 | 南京星邺汇捷网络科技有限公司 | 基于多队列的事件时序性保障方法 |
CN114039981B (zh) * | 2021-11-11 | 2024-04-02 | 中国建设银行股份有限公司 | 一种消息处理方法、装置、服务器及存储介质 |
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 | 西安博达软件股份有限公司 | 一种基于时间轮算法的预约事件任务调度方法及系统 |
Family Cites Families (36)
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 | 北京邮电大学 | 面向混合网络服务的多任务并发执行系统及方法 |
CN102255867A (zh) * | 2010-05-18 | 2011-11-23 | 华为技术有限公司 | 服务请求处理方法、装置及系统 |
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 | 中兴通讯股份有限公司 | 射频识别设备接口层的通信装置及方法 |
CN102843389B (zh) * | 2011-06-21 | 2015-08-26 | 国承斌 | 基于事件驱动的web系统和方法 |
CN102291416B (zh) * | 2011-09-14 | 2015-09-30 | 成都软智科技有限公司 | 一种客户端与服务器端双向同步的方法及系统 |
CN102562162B (zh) * | 2011-12-14 | 2014-05-07 | 北京邮电大学 | 一种基于事件处理的煤矿报警系统及方法 |
CN102594798A (zh) * | 2011-12-31 | 2012-07-18 | 苏州阔地网络科技有限公司 | 一种连接数据库的代理方法及系统 |
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 | 东软集团股份有限公司 | 工作流运行期的事件处理方法和装置 |
-
2016
- 2016-12-26 CN CN201611220354.2A patent/CN107659549A/zh not_active Withdrawn
- 2016-12-26 CN CN201611219350.2A patent/CN107656780A/zh not_active Withdrawn
- 2016-12-26 CN CN201611220358.0A patent/CN107657518A/zh not_active Withdrawn
- 2016-12-26 CN CN201611220312.9A patent/CN107656781A/zh not_active Withdrawn
- 2016-12-26 CN CN201611218386.9A patent/CN107656818A/zh active Pending
- 2016-12-26 CN CN201611218372.7A patent/CN107659605A/zh not_active Withdrawn
- 2016-12-26 CN CN201611220361.2A patent/CN107656784A/zh not_active Withdrawn
- 2016-12-26 CN CN201611218388.8A patent/CN107659547A/zh active Pending
- 2016-12-26 CN CN201611219280.0A patent/CN107657419A/zh not_active Withdrawn
- 2016-12-26 CN CN201611219367.8A patent/CN107656823A/zh active Pending
- 2016-12-26 CN CN201611220322.2A patent/CN107656809A/zh not_active Withdrawn
- 2016-12-26 CN CN201611219315.0A patent/CN107656821A/zh active Pending
- 2016-12-26 CN CN201611219331.XA patent/CN107656779A/zh not_active Withdrawn
- 2016-12-26 CN CN201611218389.2A patent/CN107657530A/zh not_active Withdrawn
- 2016-12-26 CN CN201611218383.5A patent/CN107656801A/zh active Pending
- 2016-12-26 CN CN201611220292.5A patent/CN107657501A/zh not_active Withdrawn
- 2016-12-26 CN CN201611219329.2A patent/CN107657420A/zh not_active Withdrawn
- 2016-12-26 CN CN201611220334.5A patent/CN107656782A/zh not_active Withdrawn
- 2016-12-26 CN CN201611219359.3A patent/CN107656822A/zh active Pending
- 2016-12-26 CN CN201611218394.3A patent/CN107656819A/zh active Pending
- 2016-12-26 CN CN201611220338.3A patent/CN107656783A/zh not_active Withdrawn
- 2016-12-26 CN CN201611218380.1A patent/CN107656808A/zh not_active Withdrawn
- 2016-12-26 CN CN201611219325.4A patent/CN107656778A/zh not_active Withdrawn
- 2016-12-26 CN CN201611218373.1A patent/CN107657517A/zh not_active Withdrawn
- 2016-12-26 CN CN201611220324.1A patent/CN107659548A/zh not_active Withdrawn
- 2016-12-26 CN CN201611220330.7A patent/CN107657531A/zh not_active Withdrawn
- 2016-12-26 CN CN201611220307.8A patent/CN107656824A/zh active Pending
- 2016-12-26 CN CN201611219300.4A patent/CN107656820A/zh active Pending
- 2016-12-26 CN CN201611219323.5A patent/CN107656777A/zh not_active Withdrawn
- 2016-12-26 CN CN201611220337.9A patent/CN107657532A/zh active Pending
- 2016-12-26 CN CN201611218348.3A patent/CN107659546A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112702270A (zh) * | 2020-12-18 | 2021-04-23 | 深圳赛安特技术服务有限公司 | 基于事件分发机制的节点调用方法、系统及存储介质 |
CN116841772A (zh) * | 2023-08-30 | 2023-10-03 | 成都中科合迅科技有限公司 | 基于事件队列的跨线程信号处理方法和系统 |
CN116841772B (zh) * | 2023-08-30 | 2023-11-07 | 成都中科合迅科技有限公司 | 基于事件队列的跨线程信号处理方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107656777A (zh) | 2018-02-02 |
CN107656783A (zh) | 2018-02-02 |
CN107659548A (zh) | 2018-02-02 |
CN107659547A (zh) | 2018-02-02 |
CN107656779A (zh) | 2018-02-02 |
CN107656781A (zh) | 2018-02-02 |
CN107656808A (zh) | 2018-02-02 |
CN107657532A (zh) | 2018-02-02 |
CN107659549A (zh) | 2018-02-02 |
CN107659605A (zh) | 2018-02-02 |
CN107656784A (zh) | 2018-02-02 |
CN107657420A (zh) | 2018-02-02 |
CN107656820A (zh) | 2018-02-02 |
CN107657531A (zh) | 2018-02-02 |
CN107657530A (zh) | 2018-02-02 |
CN107656824A (zh) | 2018-02-02 |
CN107656780A (zh) | 2018-02-02 |
CN107656819A (zh) | 2018-02-02 |
CN107656821A (zh) | 2018-02-02 |
CN107656818A (zh) | 2018-02-02 |
CN107656778A (zh) | 2018-02-02 |
CN107657501A (zh) | 2018-02-02 |
CN107657517A (zh) | 2018-02-02 |
CN107656782A (zh) | 2018-02-02 |
CN107659546A (zh) | 2018-02-02 |
CN107656801A (zh) | 2018-02-02 |
CN107656823A (zh) | 2018-02-02 |
CN107656822A (zh) | 2018-02-02 |
CN107656809A (zh) | 2018-02-02 |
CN107657419A (zh) | 2018-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107657518A (zh) | 一种基于事件的流程处理方法及相关装置和服务器 | |
US20240007545A1 (en) | Content payload delivery system | |
US20100005134A1 (en) | Systems and methods for recording changes to a data store and propagating changes to a client application | |
WO2019001139A1 (zh) | 运行智能合约的方法和装置 | |
CN110413918A (zh) | 数据发送方法、装置、设备及存储介质 | |
WO2002023861A2 (en) | Method and system for transforming session data | |
CN104240049A (zh) | 一种订单综合处理系统 | |
CN104240048A (zh) | 一种订单综合处理平台 | |
US20220129332A1 (en) | Handling of Metadata for Microservices Processing | |
CN111784429B (zh) | 信息推送方法和装置 | |
CN107093082A (zh) | 一种技术交易平台的数据收集及管理方法 | |
TWI238327B (en) | Message delivery system transmitting massive messages in short period of time | |
CN117014458A (zh) | 一种跨链处理业务的方法、装置、计算机设备及存储介质 | |
CN114978991A (zh) | 路由分发方法、装置、电子设备及计算机可读存储介质 | |
CN115965411A (zh) | 一种适用于福利活动的事件处理方法、装置及系统 | |
CN115660760A (zh) | 基于区块链的增值税发票的开票预测方法及装置 | |
CN118014721A (zh) | 碳排放指标的管理方法、装置、计算机设备、介质及产品 | |
JP2015125639A (ja) | データ配信システム |
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 |