CN116506333B - 交易系统生产反演检测方法及设备 - Google Patents
交易系统生产反演检测方法及设备 Download PDFInfo
- Publication number
- CN116506333B CN116506333B CN202310765554.XA CN202310765554A CN116506333B CN 116506333 B CN116506333 B CN 116506333B CN 202310765554 A CN202310765554 A CN 202310765554A CN 116506333 B CN116506333 B CN 116506333B
- Authority
- CN
- China
- Prior art keywords
- data
- inversion
- transaction system
- client
- result
- 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.)
- Active
Links
- 238000004519 manufacturing process Methods 0.000 title claims abstract description 70
- 238000001514 detection method Methods 0.000 title claims abstract description 68
- 238000000034 method Methods 0.000 claims abstract description 51
- 230000004044 response Effects 0.000 claims abstract description 34
- 230000008569 process Effects 0.000 claims abstract description 27
- 230000011218 segmentation Effects 0.000 claims abstract description 8
- 238000012795 verification Methods 0.000 claims description 37
- 238000012545 processing Methods 0.000 claims description 28
- 238000007781 pre-processing Methods 0.000 claims description 13
- 238000012790 confirmation Methods 0.000 claims description 12
- 238000005192 partition Methods 0.000 claims description 7
- 230000002159 abnormal effect Effects 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 6
- 238000007689 inspection Methods 0.000 claims description 4
- 238000011144 upstream manufacturing Methods 0.000 claims description 4
- 238000004378 air conditioning Methods 0.000 claims description 2
- 238000012360 testing method Methods 0.000 abstract description 16
- 238000003860 storage Methods 0.000 description 16
- 238000004590 computer program Methods 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 238000013473 artificial intelligence Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000004321 preservation Methods 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
- H04L43/103—Active monitoring, e.g. heartbeat, ping or trace-route with adaptive polling, i.e. dynamically adapting the polling rate
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/069—Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/085—Retrieval of network configuration; Tracking network configuration history
- H04L41/0859—Retrieval of network configuration; Tracking network configuration history by keeping history of different configuration generations or by rolling back to previous configuration versions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/04—Processing captured monitoring data, e.g. for logfile generation
-
- 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
- H04L67/30—Profiles
- H04L67/303—Terminal profiles
-
- 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
- H04L67/63—Routing a service request depending on the request content or context
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Cardiology (AREA)
- Health & Medical Sciences (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- Data Mining & Analysis (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mobile Radio Communication Systems (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及大数据技术领域,提供一种交易系统生产反演检测方法及设备,能够启动反演服务以获取与新版本交易系统对应的旧版本交易系统的历史日志数据,并对历史日志数据进行预处理,得到单客户维度下各个客户端的交易数据,按客户进行数据分割可以有效提升测试效率而不影响测试结果,保证整个反演测试过程在单客户维度有序执行,并行轮询各个客户端的交易数据,并从各个客户端中选择任意客户端发送撮合请求,将撮合请求广播至每个撮合服务,解决了交叉路由问题,当接收到任意撮合服务的响应时,获取撮合结果数据作为当前结果,对比当前结果与历史日志数据中的历史结果以生成检测结果,实现对交易系统的生产反演检测。
Description
技术领域
本发明涉及大数据技术领域,尤其涉及一种交易系统生产反演检测方法及设备。
背景技术
生产反演是交易平台将生产上的数据脱敏,并重新在更新的系统上演算进行对比测试的一种手段,针对交易系统版本生产节点的整体升级,确保客户无感知切换或升级柜台,及确保拓展新业务的同时原有生产交易业务能够平稳过渡,客户交易习惯与周边系统消息及生产的现状保持一致。
但是,现有的反演检测存在数据量大、时序竞争、交叉路由等问题。
发明内容
鉴于以上内容,有必要提供一种交易系统生产反演检测方法及设备,旨在解决交易系统生产反演检测问题。
一种交易系统生产反演检测方法,所述交易系统生产反演检测方法包括:
响应于对新版本交易系统的生产反演检测指令,启动反演服务以获取与所述新版本交易系统对应的旧版本交易系统的历史日志数据;
对所述历史日志数据进行预处理,得到单客户维度下各个客户端的交易数据;
启动至少一个撮合服务,并建立与各个客户端的连接以加载各个客户端的交易数据;
并行轮询各个客户端的交易数据,并从各个客户端中选择任意客户端发送撮合请求;
将所述撮合请求广播至所述至少一个撮合服务中的每个撮合服务;
当接收到任意撮合服务的响应时,获取撮合结果数据作为当前结果;
从所述历史日志数据中获取与所述当前结果对应的历史结果;
对比所述当前结果与所述历史结果以生成检测结果。
根据本发明优选实施例,所述对所述历史日志数据进行预处理,得到单客户维度下各个客户端的交易数据包括:
对所述历史日志数据中属于同一逻辑节点的数据进行合并处理,按照客户维度对所述历史日志数据进行数据分割处理,及对所述历史日志数据进行保真处理;
整合处理后的数据,得到所述单客户维度下各个客户端的交易数据;
其中,所述逻辑节点包括标准网关节点、交易系统的数据交换服务节点;
其中,所述单客户维度下各个客户端的交易数据与所述历史日志数据具有相同的客户权限、费用配置、交易单元及分区;
其中,所述保真处理包括内容保真处理及时序保真处理。
根据本发明优选实施例,所述对所述历史日志数据进行保真处理包括:
对所述历史日志数据执行所述内容保真处理,包括:获取预先配置的API协议,及从所述历史日志数据中获取每个API接口的实际入参,基于所述API协议对每个API接口的实际入参的字段差异进行兼容性默认值填充;
对所述历史日志数据执行所述时序保真处理,包括:
对于所述历史日志数据中的盘前委托数据,跳过非交易时间段提示的确认响应并缓存所述盘前委托数据;当检测到开市后将所述盘前委托数据发送至撮合服务,并向上游服务发送确认响应;或者
对于所述历史日志数据中集合竞价期间的撤单委托数据,允许撤单,且针对撤单拒绝的第一订单,将所述第一订单的时序调整至对应客户委托序列末端执行反演;对于已撤销订单不进行时序调整;对于部分成交部分撤销的第二订单,将所述第二订单的订单状态字段添加至警告列表;或者
对于所述历史日志数据中连续竞价阶段委托和撤单同时发出,成交回报晚于撤单确认到达客户端的第三订单,将所述第三订单的订单状态字段添加至所述警告列表;
其中,所述警告列表中的订单不强制执行反演。
根据本发明优选实施例,当接收到任意撮合服务的响应时,所述方法还包括:
广播发布撮合处理完成的通知,并删除所有撮合服务上的所述撮合请求。
根据本发明优选实施例,所述方法还包括:
对于所述反演服务,当有两笔委托中响应丢失时的超时等待时长达到预设时长时,确定所述反演服务异常,不继续执行全量反演;
当所述反演服务异常的次数达到预设次数阈值时,获取当前客户,结束对所述当前客户的反演。
根据本发明优选实施例,所述对比所述当前结果与所述历史结果以生成检测结果包括:
检测所述当前结果与所述历史结果中客户维度资金日终结果的一致性,得到资金校验结果;
检测所述当前结果与所述历史结果中所述客户维度下逐个标的日终持仓数量的一致性,得到持仓校验结果;
检测所述当前结果与所述历史结果中逐笔委托、成交回报数据内容的一致性,得到委托成交校验结果;
整合所述资金校验结果、所述持仓校验结果及所述委托成交校验结果,得到日终数据比对一致性检验报告;
基于所述日终数据比对一致性检验报告进行统计,得到每日消息反演结果的统计报告;
输出并展示所述日终数据比对一致性检验报告及所述每日消息反演结果的统计报告。
根据本发明优选实施例,所述反演服务与所述撮合服务部署于不同的服务端;
所述各个客户端与所述撮合服务具有时序一致性;
按照流水线模型分批次执行所述旧版本交易系统对所述历史日志数据的处理及执行所述反演服务的生产反演检测,以对所述历史日志数据的处理及与所述反演服务的生产反演检测进行解耦。
根据本发明优选实施例,所述方法还包括:
响应于所述生产反演检测指令,获取预先配置的透传字段;
检测所述新版本交易系统对应的所述透传字段与所述旧版本交易系统对应的所述透传字段是否一致;
当检测到所述新版本交易系统对应的所述透传字段与所述旧版本交易系统对应的所述透传字段一致时,确定所述新版本交易系统与所述旧版本交易系统通过兼容性校验;或者
当检测到所述新版本交易系统对应的所述透传字段与所述旧版本交易系统对应的所述透传字段不一致时,确定所述新版本交易系统与所述旧版本交易系统未通过兼容性校验。
根据本发明优选实施例,所述方法还包括:
当发生异地报盘或报盘轮询时,确定有一个资金账户对应的多个股东账户从不同的客户端报入至对应交易系统并从不同的报盘通道上报到交易所;
获取该资金账户对应的多个股东账户所对应的各个客户端的交易数据;
基于获取到的交易数据执行全局时序反演,并启动所有撮合服务及对应的多分区报单服务进行交易委托,得到所述当前结果。
一种交易系统生产反演检测装置,所述交易系统生产反演检测装置包括:
获取单元,用于响应于对新版本交易系统的生产反演检测指令,启动反演服务以获取与所述新版本交易系统对应的旧版本交易系统的历史日志数据;
预处理单元,用于对所述历史日志数据进行预处理,得到单客户维度下各个客户端的交易数据;
加载单元,用于启动至少一个撮合服务,并建立与各个客户端的连接以加载各个客户端的交易数据;
发送单元,用于并行轮询各个客户端的交易数据,并从各个客户端中选择任意客户端发送撮合请求;
广播单元,用于将所述撮合请求广播至所述至少一个撮合服务中的每个撮合服务;
所述获取单元,还用于当接收到任意撮合服务的响应时,获取撮合结果数据作为当前结果;
所述获取单元,还用于从所述历史日志数据中获取与所述当前结果对应的历史结果;
生成单元,用于对比所述当前结果与所述历史结果以生成检测结果。
一种计算机设备,所述计算机设备包括:
存储器,存储至少一个指令;及
处理器,执行所述存储器中存储的指令以实现所述交易系统生产反演检测方法。
一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被计算机设备中的处理器执行以实现所述交易系统生产反演检测方法。
由以上技术方案可以看出,本发明能够启动反演服务以获取与新版本交易系统对应的旧版本交易系统的历史日志数据,并对历史日志数据进行预处理,得到单客户维度下各个客户端的交易数据,按客户进行数据分割可以有效提升测试效率而不影响测试结果,保证整个反演测试过程在单客户维度有序执行,并行轮询各个客户端的交易数据,并从各个客户端中选择任意客户端发送撮合请求,将撮合请求广播至每个撮合服务,解决了交叉路由问题,当接收到任意撮合服务的响应时,获取撮合结果数据作为当前结果,对比当前结果与历史日志数据中的历史结果以生成检测结果,实现对交易系统的生产反演检测。
附图说明
图1是本发明交易系统生产反演检测方法的较佳实施例的流程图。
图2是本发明交易系统生产反演检测装置的较佳实施例的功能模块图。
图3是本发明实现交易系统生产反演检测方法的较佳实施例的计算机设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
如图1所示,是本发明交易系统生产反演检测方法的较佳实施例的流程图。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
所述交易系统生产反演检测方法应用于一个或者多个计算机设备中,所述计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific IntegratedCircuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是任何一种可与用户进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(Personal Digital Assistant,PDA)、游戏机、交互式网络电视(Internet Protocol Television,IPTV)、智能式穿戴式设备等。
所述计算机设备还可以包括网络设备和/或用户设备。其中,所述网络设备包括,但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(CloudComputing)的由大量主机或网络服务器构成的云。
所述服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(ContentDelivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
所述计算机设备所处的网络包括但不限于互联网、广域网、城域网、局域网、虚拟专用网络(Virtual Private Network,VPN)等。
S10,响应于对新版本交易系统的生产反演检测指令,启动反演服务以获取与所述新版本交易系统对应的旧版本交易系统的历史日志数据。
在本实施例中,所述生产反演检测指令可以由相关工作人员通过语音指令或者触发预设按键进行触发。其中,所述预设按键可以为实体按键,也可以为虚拟按键。
在本实施例中,所述反演服务可以部署于服务端。
在本实施例中,启动所述反演服务以获取与所述新版本交易系统对应的旧版本交易系统的历史日志数据,以便后续基于所述历史日志数据进行比对,得到生产反演检测结果。
在本实施例中,所述历史日志数据可以包括,但不限于以下一种或者多种数据的组合:
(1)T日盘前客户初始数据:新旧两套交易系统需一致,避免由于不一致影响客户反演结果的正确性;
(2)T日盘前交易所统一下发文件:新旧两套交易系统需一致,避免影响所有反演结果正确性;
(3)T日生产交易数据:需要与(1)、(2)为同一天的配套数据,避免导致部分比对结果无法匹配;
(4)T日生产盘后终态数据:需要与(3)为同一天的配套数据,避免影响反演执行完成后的盘后资产比对。
S11,对所述历史日志数据进行预处理,得到单客户维度下各个客户端的交易数据。
在本实施例中,所述对所述历史日志数据进行预处理,得到单客户维度下各个客户端的交易数据包括:
对所述历史日志数据中属于同一逻辑节点的数据进行合并处理,按照客户维度对所述历史日志数据进行数据分割处理,及对所述历史日志数据进行保真处理;
整合处理后的数据,得到所述单客户维度下各个客户端的交易数据;
其中,所述逻辑节点包括标准网关节点、交易系统的数据交换服务节点;
其中,所述单客户维度下各个客户端的交易数据与所述历史日志数据具有相同的客户权限、费用配置、交易单元及分区;
其中,所述保真处理包括内容保真处理及时序保真处理。
具体地,以单客户交易数据为一个整体,做到单客户请求响应保序,多客户间并发,以提升反演效率。
当存在一个客户的请求盘中从大于1个网关同时接入,从大于1个的报盘通道同时报出的复杂接入情况时,可以通过启动全局反演模式对该客户进行单客户反演,一定程度上牺牲反演效率,来确保全局唯一时序反演,保证最终反演结果的正确性。
通过上述预处理过程,按客户维度进行数据分割可以有效提升测试效率,而不影响测试结果,保证整个反演测试过程在单客户维度下有序执行。
并且,单客户维度下单的目的是为了使不同客户可以并行反演,以提升反演效率。
具体地,所述对所述历史日志数据进行保真处理包括:
对所述历史日志数据执行所述内容保真处理,包括:获取预先配置的API(Application Programming Interface,应用程序编程接口)协议,及从所述历史日志数据中获取每个API接口的实际入参,基于所述API协议对每个API接口的实际入参的字段差异进行兼容性默认值填充。具体地,对API版本进行兼容性设计,对于不同版本的API,只对历史数据中的相同字段进行填充,并对同类字段进行转化,其他以默认值进行处理。例如:为了能够尽量实现对生产客户交易行为的如实模拟,虽然只统一使用了单一协议API(如B协议),但仍然保持了生产客户所有接口的实际入参,并对入参字段差异做了兼容性默认值填充,分为以下几种情况:(1)当客户交易行为发起为A协议请求时:将A入参如实作为B协议同样接口入参,同时识别B协议接口其他字段必填项,若有必填项则填写默认值,若无必填项则不进行补充填充;(2)当客户交易行为发起为B协议请求时:将B协议入参直接作为反演API入参,不做任何额外处理;(3)当客户交易行为发起为C协议请求时:将C协议入参直接作为反演API入参,由于反演API入参为C协议,则若出现客户请求入参B协议未包含该字段时抛弃。
为了能够在最短时间内完成对生产客户交易行为的如实模拟,反演服务不会配置和生产一致的交易时间模板,同时为了能够在一天内反演多天的程序,反演服务接入系统配置的时间模板为全天交易模板,导致会失去非交易时间段、临时休市时间段、集合竞价时间段的内部处理反演,同时使得保序增加了难度,所以反演程序为了保序做了部分兼容策略处理。具体地,对所述历史日志数据执行所述时序保真处理,包括:
对于所述历史日志数据中的盘前委托数据,跳过非交易时间段提示的确认响应并缓存所述盘前委托数据;当检测到开市后将所述盘前委托数据发送至撮合服务,并向上游服务发送确认响应。例如:针对盘前委托,由于时间模板当前状态为开始前,所以会返回一笔exectype=1,ordstatus=9的ACK(Acknowledge character,确认字符)响应,提示非交易时段,但会缓存该笔订单,开市后发往报盘服务进行撮合,同时向前端响应一笔正常的确认响应,所以,针对盘前委托,反演程序跳过非交易时间段提示的响应校验,但不会过滤盘前客户委托。
对于所述历史日志数据中集合竞价期间的撤单委托数据,允许撤单,且针对撤单拒绝的第一订单,将所述第一订单的时序调整至对应客户委托序列末端执行反演;对于已撤销订单不进行时序调整;对于部分成交部分撤销的第二订单,将所述第二订单的订单状态字段添加至警告列表。例如:针对集合竞价期间的撤单委托,根据业务规则,集合竞价期间禁止撤单,所以当客户在交易时间模板进入集合竞价阶段时,会返回一笔撤单拒绝消息响应,订单无法被撤销,若重复撤单,会针对除第一次撤单以外的同笔委托撤单返回撤单次数超限的拒绝响应,但会缓存撤单,当进入连续竞价阶段,会继续将撤单委托报到交易所。针对此种情况,反演服务会调整撤单时序,且会跳过在集合竞价期间产生的订单无法被撤销校验,以及撤单次数超限的拒绝响应,而是正常发起撤单,只针对撤单的最终结果进行反演。如撤单结果会发生两融情况,已撤销、部成部撤或者全部成交撤单拒绝,针对撤单拒绝情况,会将该笔撤单时序调整到该客户委托序列末端进行反演,针对已撤销情况不做任何调整,针对部成部撤情况,由于生产实际日志体现时序,若如实反演会导致撤单变成待撤情况,需将订单状态字段order_status字段放入警告列表warn list,不做强制校验通过检查。
对于所述历史日志数据中连续竞价阶段委托和撤单同时发出,成交回报晚于撤单确认到达客户端的第三订单,将所述第三订单的订单状态字段添加至所述警告列表。例如:针对连续竞价阶段委托和撤单同时发出,成交回报晚于撤单确认到达客户端情况,生产日志中,委托早于撤单发出,由于是按主题保序,上下游时序无法确保准确,所以即使成交回报晚于撤单确认到达,成交状态仍然为exectype=F,ordstatus=1,部分成交状态,此时如果按照该时序反演会导致成交状态变成exectype=F,ordstatus=12,部成待撤,需将订单状态字段order_status字段放入警告列表warn list,不做强制校验通过检查。
其中,所述警告列表中的订单不强制执行反演。
在本实施例中,解析历史日志数据以整理信息格式加载到内存,方便反演下单执行时在内存中进行比对,以达成实时生成比对结果。由于数据解析完毕后的所有内容均一次性加载到内存中,所以针对部署服务器的要求主要体现在内存容量的要求上,当请求量过大,这里请求包含了委托和查询,若一共有100万笔请求则需要至少10G物理内存来进行数据加载,同时由于客户端与服务端需严格控制单客户乒乓时序,则需分别保存一份备份,所以,所述反演服务与所述撮合服务部署于不同的服务端,从而降低对服务器的配置要求。
在本实施例中,所述各个客户端与所述撮合服务具有时序一致性,即交易客户端和撮合客户端联动,以确保时序唯一性,避免发生上下行时序错乱。
在本实施例中,按照流水线模型分批次执行所述旧版本交易系统对所述历史日志数据的处理及执行所述反演服务的生产反演检测,以对所述历史日志数据的处理及与所述反演服务的生产反演检测进行解耦,其目的是在反演下单执行T日历史数据时,可以同时解析T+1的历史日志文件,来提升连续多日反演执行的执行效率,缩短总时长。
S12,启动至少一个撮合服务,并建立与各个客户端的连接以加载各个客户端的交易数据。
其中,可以由报盘服务提供所述撮合服务。
在本实施例中,通过建立与各个客户端的连接以加载各个客户端的交易数据,便于后续进行反演。
S13,并行轮询各个客户端的交易数据,并从各个客户端中选择任意客户端发送撮合请求。
在本实施例中,从各个客户端中随机选择客户端发送所述撮合请求,发送的请求可能被任意撮合服务接收。
S14,将所述撮合请求广播至所述至少一个撮合服务中的每个撮合服务。
在本实施例中,将所述撮合请求广播至所述至少一个撮合服务中的每个撮合服务后,任意撮合服务匹配到对应的订单时,即进行撮合处理。
S15,当接收到任意撮合服务的响应时,获取撮合结果数据作为当前结果。
在本实施例中,当接收到任意撮合服务的响应时,所述方法还包括:
广播发布撮合处理完成的通知,并删除所有撮合服务上的所述撮合请求。
通过上述实施例,能够保证内存不会被堆满,也保证了撮合人的查找速度。
S16,从所述历史日志数据中获取与所述当前结果对应的历史结果。
在本实施例中,从所述历史日志数据中获取与所述当前结果对应的历史结果后,即可执行二者的一致性校验,以确定新版本交易系统与对应的旧版本交易系统的处理结果是否一致。
S17,对比所述当前结果与所述历史结果以生成检测结果。
在本实施例中,所述方法还包括:
对于所述反演服务,当有两笔委托中响应丢失时的超时等待时长达到预设时长时,确定所述反演服务异常,不继续执行全量反演;
当所述反演服务异常的次数达到预设次数阈值时,获取当前客户,结束对所述当前客户的反演。
其中,所述预设时长及所述预设次数阈值可以进行自定义配置,例如:所述预设时长可以为3秒,所述预设次数阈值可以为20次。
在上述实施例中,不同客户间的反演不会相互影响,因此,当结束对所述当前客户的反演时,其他客户可以继续完成反演。
在本实施例中,所述对比所述当前结果与所述历史结果以生成检测结果包括:
检测所述当前结果与所述历史结果中客户维度资金日终结果的一致性,得到资金校验结果;
检测所述当前结果与所述历史结果中所述客户维度下逐个标的日终持仓数量的一致性,得到持仓校验结果;
检测所述当前结果与所述历史结果中逐笔委托、成交回报数据内容的一致性,得到委托成交校验结果;
整合所述资金校验结果、所述持仓校验结果及所述委托成交校验结果,得到日终数据比对一致性检验报告;
基于所述日终数据比对一致性检验报告进行统计,得到每日消息反演结果的统计报告;
输出并展示所述日终数据比对一致性检验报告及所述每日消息反演结果的统计报告。
具体地,所述基于所述日终数据比对一致性检验报告进行统计,得到每日消息反演结果的统计报告可以包括:
(1)汇总校验结果报告:
a) 统计校验总字段,包含成功与失败总数。
b) 按接口结合协议维度进行统计展示,包含接口成功和失败总数,失败案例展示字段失败统计次数。
c) 按客户维度进行统计展示,包含分市场、查询笔数、查询成功数量、查询失败数量、委托笔数、撤单笔数、一键撤单笔数、委托确认成功笔数、交易所确认笔数、成交回报数量、划拨笔数、划拨成功笔数、划拨失败笔数,校验结果统计展示包含接口以及成功和失败字段数量统计。
(2)客户级别校验结果报告:成功与失败案例集合,失败案例集合中明确校验失败字段,成功集合中明确已校验成功字段,其中校验失败字段需人工排查明确失败原因。
a) 展示生产原始日志和反演后原始日志。
b) 展示对比结果一致的字段,作为success list展示具体成功对比字段内容。
c) 展示存在已知差异点且为生产版本问题的字段,作为warning list展示具体差异点,生产原始日志和反演后日志具体字段值,但warning list不会导致该条对比结果失败。
d) 展示存在问题差异点,即为当发生该情况必须明确定位问题原因的字段,作为fail list展示具体差异点,生产原始日志和反演后日志具体字段值,当fail list不为空时,即为该条案例对比失败。
(3)图形化指标统计结果:
整体反演完毕后会进行数据指标统计,便于查看当日生产数据反演整体效果图像化展示结果,具体分为:
a) 生产原始数据统计:通过市场维度和通用接口维度进行统计,其中市场维度包括:当日委托笔数、查询笔数、撤单笔数、一键撤单笔数、委托确认成功笔数、委托未成交笔数、交易所确认笔数、查询失败笔数、查询成功笔数、成交回报数量。其中,通用接口维度包括:划拨成功笔数、划拨笔数、划拨失败笔数。
b) 校验结果数据统计:通过校验字段结果数量统计和校验接口类型统计两个维度进行统计,其中,校验字段结果数量统计包括:反演中每个接口分布的校验成功字段数量统计和失败数量统计;校验接口类型统计包括:当日委托笔数、查询笔数、撤单笔数、一键撤单笔数、委托确认成功笔数、委托未成交笔数、交易所确认笔数、查询成功笔数、实时指令笔数。
在上述比对过程中,可以进行强一致性校验,错一个字段则确定一条消息比对失败。
在上述比对过程中,对于系统随机字段、系统级别自增长字段等,可以作为豁免字段不进行校验。
通过本实施例,所有由标准网关、交易系统的数据交换服务组件接入的委托、查询、资金划转,由交易所返回的确认及成交,均进行1:1真实模拟,客户接入侧通过如实入参生产客户入参,获取回调接口字段,并做逐笔校验,给出新版本与旧版本所有差异点,同时通过反演完毕后的落库资金流水和持仓流水,生产客户盘后资金和持仓汇总数据对比结果,给出新版本与旧版本的日间交易处理及资产计算的差异点,实现对交易系统的生产反演检测。
其中,可以分文件保存每个客户维度的成功比对结果和失败比对结果,以便快速对焦失败的比对结果,提升对于失败对比结果的响应效率。
其中,还可以记录各个业务指标,如接口调用次数,不同接口调用返回成功次数和失败次数,查询数量和委托数量(目的是收集系统中每个客户的交易委查比模型),同时可以统计成交金额及成交版块的业务指标。
在本实施例中,所述方法还包括:
响应于所述生产反演检测指令,获取预先配置的透传字段;
检测所述新版本交易系统对应的所述透传字段与所述旧版本交易系统对应的所述透传字段是否一致;
当检测到所述新版本交易系统对应的所述透传字段与所述旧版本交易系统对应的所述透传字段一致时,确定所述新版本交易系统与所述旧版本交易系统通过兼容性校验;或者
当检测到所述新版本交易系统对应的所述透传字段与所述旧版本交易系统对应的所述透传字段不一致时,确定所述新版本交易系统与所述旧版本交易系统未通过兼容性校验。
其中,所述透传字段可以进行自定义配置。
通过上述实施例,针对不同版本系统进行关键字匹配校验,同时可以自定义透传字段进行匹配校验,以实现系统间的兼容性校验。
在本实施例中,所述方法还包括:
当发生异地报盘或报盘轮询时,确定有一个资金账户对应的多个股东账户从不同的客户端报入至对应交易系统并从不同的报盘通道上报到交易所;
获取该资金账户对应的多个股东账户所对应的各个客户端的交易数据;
基于获取到的交易数据执行全局时序反演,并启动所有撮合服务及对应的多分区报单服务进行交易委托,得到所述当前结果。
通过上述实施例,当发生异地报盘或报盘轮询情况时,即在一个资金账户对应的多个股东账户从不同的客户端报入系统并从不同的报盘通道报到交易所的场景下,可以针对该资金账户关联的多个股东账户的交易信息开展全局时序排序进行反演,此时所有交易撮合和多分区报单工具均会启动进行委托。
在本实施例中,一日生产数据反演执行时长可以由请求响应消息数最大的客户反演一次的时间决定,如T日请求响应数量最多的客户B为1万条数据,则整体反演可在10分钟数量级完成执行。
由以上技术方案可以看出,本发明能够启动反演服务以获取与新版本交易系统对应的旧版本交易系统的历史日志数据,并对历史日志数据进行预处理,得到单客户维度下各个客户端的交易数据,按客户进行数据分割可以有效提升测试效率而不影响测试结果,保证整个反演测试过程在单客户维度有序执行,并行轮询各个客户端的交易数据,并从各个客户端中选择任意客户端发送撮合请求,将撮合请求广播至每个撮合服务,解决了交叉路由问题,当接收到任意撮合服务的响应时,获取撮合结果数据作为当前结果,对比当前结果与历史日志数据中的历史结果以生成检测结果,实现对交易系统的生产反演检测。
如图2所示,是本发明交易系统生产反演检测装置的较佳实施例的功能模块图。所述交易系统生产反演检测装置11包括获取单元110、预处理单元111、加载单元112、发送单元113、广播单元114、生成单元115。本发明所称的模块/单元是指一种能够被处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块/单元的功能将在后续的实施例中详述。
所述获取单元110,用于响应于对新版本交易系统的生产反演检测指令,启动反演服务以获取与所述新版本交易系统对应的旧版本交易系统的历史日志数据。
所述预处理单元111,用于对所述历史日志数据进行预处理,得到单客户维度下各个客户端的交易数据。
所述加载单元112,用于启动至少一个撮合服务,并建立与各个客户端的连接以加载各个客户端的交易数据。
所述发送单元113,用于并行轮询各个客户端的交易数据,并从各个客户端中选择任意客户端发送撮合请求。
所述广播单元114,用于将所述撮合请求广播至所述至少一个撮合服务中的每个撮合服务。
所述获取单元110,还用于当接收到任意撮合服务的响应时,获取撮合结果数据作为当前结果。
所述获取单元110,还用于从所述历史日志数据中获取与所述当前结果对应的历史结果。
所述生成单元115,用于对比所述当前结果与所述历史结果以生成检测结果。
由以上技术方案可以看出,本发明能够启动反演服务以获取与新版本交易系统对应的旧版本交易系统的历史日志数据,并对历史日志数据进行预处理,得到单客户维度下各个客户端的交易数据,按客户进行数据分割可以有效提升测试效率而不影响测试结果,保证整个反演测试过程在单客户维度有序执行,并行轮询各个客户端的交易数据,并从各个客户端中选择任意客户端发送撮合请求,将撮合请求广播至每个撮合服务,解决了交叉路由问题,当接收到任意撮合服务的响应时,获取撮合结果数据作为当前结果,对比当前结果与历史日志数据中的历史结果以生成检测结果,实现对交易系统的生产反演检测。
如图3所示,是本发明实现交易系统生产反演检测方法的较佳实施例的计算机设备的结构示意图。
所述计算机设备1可以包括存储器12、处理器13和总线,还可以包括存储在所述存储器12中并可在所述处理器13上运行的计算机程序,例如交易系统生产反演检测程序。
本领域技术人员可以理解,所述示意图仅仅是计算机设备1的示例,并不构成对计算机设备1的限定,所述计算机设备1既可以是总线型结构,也可以是星形结构,所述计算机设备1还可以包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置,例如所述计算机设备1还可以包括输入输出设备、网络接入设备等。
需要说明的是,所述计算机设备1仅为举例,其他现有的或今后可能出现的电子产品如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。
其中,存储器12至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器12在一些实施例中可以是计算机设备1的内部存储单元,例如该计算机设备1的移动硬盘。存储器12在另一些实施例中也可以是计算机设备1的外部存储设备,例如计算机设备1上配备的插接式移动硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(SecureDigital,SD)卡、闪存卡(Flash Card)等。进一步地,存储器12还可以既包括计算机设备1的内部存储单元也包括外部存储设备。存储器12不仅可以用于存储安装于计算机设备1的应用软件及各类数据,例如交易系统生产反演检测程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器13在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。处理器13是所述计算机设备1的控制核心(Control Unit),利用各种接口和线路连接整个计算机设备1的各个部件,通过运行或执行存储在所述存储器12内的程序或者模块(例如执行交易系统生产反演检测程序等),以及调用存储在所述存储器12内的数据,以执行计算机设备1的各种功能和处理数据。
所述处理器13执行所述计算机设备1的操作系统以及安装的各类应用程序。所述处理器13执行所述应用程序以实现上述各个交易系统生产反演检测方法实施例中的步骤,例如图1所示的步骤。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器12中,并由所述处理器13执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,该指令段用于描述所述计算机程序在所述计算机设备1中的执行过程。例如,所述计算机程序可以被分割成获取单元110、预处理单元111、加载单元112、发送单元113、广播单元114、生成单元115。
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、计算机设备,或者网络设备等)或处理器(processor)执行本发明各个实施例所述交易系统生产反演检测方法的部分。
所述计算机设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指示相关的硬件设备来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。
其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器等。
进一步地,计算机可读存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
总线可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,在图3中仅用一根直线表示,但并不表示仅有一根总线或一种类型的总线。所述总线被设置为实现所述存储器12以及至少一个处理器13等之间的连接通信。
尽管未示出,所述计算机设备1还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理装置与所述至少一个处理器13逻辑相连,从而通过电源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述计算机设备1还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
进一步地,所述计算机设备1还可以包括网络接口,可选地,所述网络接口可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该计算机设备1与其他计算机设备之间建立通信连接。
可选地,该计算机设备1还可以包括用户接口,用户接口可以是显示器(Display)、输入单元(比如键盘(Keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在计算机设备1中处理的信息以及用于显示可视化的用户界面。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
图3仅示出了具有组件12-13的计算机设备1,本领域技术人员可以理解的是,图3示出的结构并不构成对所述计算机设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
结合图1,所述计算机设备1中的所述存储器12存储多个指令以实现一种交易系统生产反演检测方法,所述处理器13可执行所述多个指令从而实现:
响应于对新版本交易系统的生产反演检测指令,启动反演服务以获取与所述新版本交易系统对应的旧版本交易系统的历史日志数据;
对所述历史日志数据进行预处理,得到单客户维度下各个客户端的交易数据;
启动至少一个撮合服务,并建立与各个客户端的连接以加载各个客户端的交易数据;
并行轮询各个客户端的交易数据,并从各个客户端中选择任意客户端发送撮合请求;
将所述撮合请求广播至所述至少一个撮合服务中的每个撮合服务;
当接收到任意撮合服务的响应时,获取撮合结果数据作为当前结果;
从所述历史日志数据中获取与所述当前结果对应的历史结果;
对比所述当前结果与所述历史结果以生成检测结果。
具体地,所述处理器13对上述指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
需要说明的是,本案中所涉及到的数据均为合法取得。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
本发明可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。本发明中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一、第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (10)
1.一种交易系统生产反演检测方法,其特征在于,所述交易系统生产反演检测方法包括:
响应于对新版本交易系统的生产反演检测指令,启动反演服务以获取与所述新版本交易系统对应的旧版本交易系统的历史日志数据;
对所述历史日志数据进行预处理,得到单客户维度下各个客户端的交易数据;
启动至少一个撮合服务,并建立与各个客户端的连接以加载各个客户端的交易数据;
并行轮询各个客户端的交易数据,并从各个客户端中选择任意客户端发送撮合请求;
将所述撮合请求广播至所述至少一个撮合服务中的每个撮合服务;
当接收到任意撮合服务的响应时,获取撮合结果数据作为当前结果;
从所述历史日志数据中获取与所述当前结果对应的历史结果;
对比所述当前结果与所述历史结果以生成检测结果。
2.如权利要求1所述的交易系统生产反演检测方法,其特征在于,所述对所述历史日志数据进行预处理,得到单客户维度下各个客户端的交易数据包括:
对所述历史日志数据中属于同一逻辑节点的数据进行合并处理,按照客户维度对所述历史日志数据进行数据分割处理,及对所述历史日志数据进行保真处理;
整合处理后的数据,得到所述单客户维度下各个客户端的交易数据;
其中,所述逻辑节点包括标准网关节点、交易系统的数据交换服务节点;
其中,所述单客户维度下各个客户端的交易数据与所述历史日志数据具有相同的客户权限、费用配置、交易单元及分区;
其中,所述保真处理包括内容保真处理及时序保真处理。
3.如权利要求2所述的交易系统生产反演检测方法,其特征在于,所述对所述历史日志数据进行保真处理包括:
对所述历史日志数据执行所述内容保真处理,包括:获取预先配置的API协议,及从所述历史日志数据中获取每个API接口的实际入参,基于所述API协议对每个API接口的实际入参的字段差异进行兼容性默认值填充;
对所述历史日志数据执行所述时序保真处理,包括:
对于所述历史日志数据中的盘前委托数据,跳过非交易时间段提示的确认响应并缓存所述盘前委托数据;当检测到开市后将所述盘前委托数据发送至撮合服务,并向上游服务发送确认响应;或者
对于所述历史日志数据中集合竞价期间的撤单委托数据,允许撤单,且针对撤单拒绝的第一订单,将所述第一订单的时序调整至对应客户委托序列末端执行反演;对于已撤销订单不进行时序调整;对于部分成交部分撤销的第二订单,将所述第二订单的订单状态字段添加至警告列表;或者
对于所述历史日志数据中连续竞价阶段委托和撤单同时发出,成交回报晚于撤单确认到达客户端的第三订单,将所述第三订单的订单状态字段添加至所述警告列表;
其中,所述警告列表中的订单不强制执行反演。
4.如权利要求1所述的交易系统生产反演检测方法,其特征在于,当接收到任意撮合服务的响应时,所述方法还包括:
广播发布撮合处理完成的通知,并删除所有撮合服务上的所述撮合请求。
5.如权利要求1所述的交易系统生产反演检测方法,其特征在于,所述方法还包括:
对于所述反演服务,当有两笔委托中响应丢失时的超时等待时长达到预设时长时,确定所述反演服务异常,不继续执行全量反演;
当所述反演服务异常的次数达到预设次数阈值时,获取当前客户,结束对所述当前客户的反演。
6.如权利要求1所述的交易系统生产反演检测方法,其特征在于,所述对比所述当前结果与所述历史结果以生成检测结果包括:
检测所述当前结果与所述历史结果中客户维度资金日终结果的一致性,得到资金校验结果;
检测所述当前结果与所述历史结果中所述客户维度下逐个标的日终持仓数量的一致性,得到持仓校验结果;
检测所述当前结果与所述历史结果中逐笔委托、成交回报数据内容的一致性,得到委托成交校验结果;
整合所述资金校验结果、所述持仓校验结果及所述委托成交校验结果,得到日终数据比对一致性检验报告;
基于所述日终数据比对一致性检验报告进行统计,得到每日消息反演结果的统计报告;
输出并展示所述日终数据比对一致性检验报告及所述每日消息反演结果的统计报告。
7.如权利要求1所述的交易系统生产反演检测方法,其特征在于:
所述反演服务与所述撮合服务部署于不同的服务端;
所述各个客户端与所述撮合服务具有时序一致性;
按照流水线模型分批次执行所述旧版本交易系统对所述历史日志数据的处理及执行所述反演服务的生产反演检测,以对所述历史日志数据的处理及与所述反演服务的生产反演检测进行解耦。
8.如权利要求1所述的交易系统生产反演检测方法,其特征在于,所述方法还包括:
响应于所述生产反演检测指令,获取预先配置的透传字段;
检测所述新版本交易系统对应的所述透传字段与所述旧版本交易系统对应的所述透传字段是否一致;
当检测到所述新版本交易系统对应的所述透传字段与所述旧版本交易系统对应的所述透传字段一致时,确定所述新版本交易系统与所述旧版本交易系统通过兼容性校验;或者
当检测到所述新版本交易系统对应的所述透传字段与所述旧版本交易系统对应的所述透传字段不一致时,确定所述新版本交易系统与所述旧版本交易系统未通过兼容性校验。
9.如权利要求1所述的交易系统生产反演检测方法,其特征在于,所述方法还包括:
当发生异地报盘或报盘轮询时,确定有一个资金账户对应的多个股东账户从不同的客户端报入至对应交易系统并从不同的报盘通道上报到交易所;
获取该资金账户对应的多个股东账户所对应的各个客户端的交易数据;
基于获取到的交易数据执行全局时序反演,并启动所有撮合服务及对应的多分区报单服务进行交易委托,得到所述当前结果。
10.一种计算机设备,其特征在于,所述计算机设备包括:
存储器,存储至少一个指令;及
处理器,执行所述存储器中存储的指令以实现如权利要求1至9中任意一项所述的交易系统生产反演检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310765554.XA CN116506333B (zh) | 2023-06-27 | 2023-06-27 | 交易系统生产反演检测方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310765554.XA CN116506333B (zh) | 2023-06-27 | 2023-06-27 | 交易系统生产反演检测方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116506333A CN116506333A (zh) | 2023-07-28 |
CN116506333B true CN116506333B (zh) | 2023-09-01 |
Family
ID=87318748
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310765554.XA Active CN116506333B (zh) | 2023-06-27 | 2023-06-27 | 交易系统生产反演检测方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116506333B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108304443A (zh) * | 2017-11-29 | 2018-07-20 | 上海金融期货信息技术有限公司 | 基于流数据反演的数据委托回放监测系统 |
CN110852879A (zh) * | 2019-07-26 | 2020-02-28 | 上海量锐信息科技有限公司 | 一种高频量化交易策略回测验证方法及系统 |
CN115757150A (zh) * | 2022-11-23 | 2023-03-07 | 重庆银行股份有限公司 | 一种生产环境测试方法、装置、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2018256664A1 (en) * | 2018-11-02 | 2020-05-21 | Australian Bond Exchange Holdings Limited | System and Computer Implemented Method for Facilitating the Transaction and Settlement of a Financial Instrument |
-
2023
- 2023-06-27 CN CN202310765554.XA patent/CN116506333B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108304443A (zh) * | 2017-11-29 | 2018-07-20 | 上海金融期货信息技术有限公司 | 基于流数据反演的数据委托回放监测系统 |
CN110852879A (zh) * | 2019-07-26 | 2020-02-28 | 上海量锐信息科技有限公司 | 一种高频量化交易策略回测验证方法及系统 |
CN115757150A (zh) * | 2022-11-23 | 2023-03-07 | 重庆银行股份有限公司 | 一种生产环境测试方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
联机交易回归测试条件与交易链分析及实践;詹清河;郭超年;王燕梅;;中国金融电脑(09);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116506333A (zh) | 2023-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108985772A (zh) | 一种区块链的验证方法、装置、设备及存储介质 | |
CN112163412B (zh) | 数据校验方法、装置、电子设备及存储介质 | |
CN112686717B (zh) | 一种广告召回的数据处理方法及系统 | |
CN115237802A (zh) | 基于人工智能的模拟测试方法及相关设备 | |
CN111414589B (zh) | 基于区块链的作品原创审核方法、装置及设备 | |
CN114049077A (zh) | 仲裁工单处理方法、装置、设备及存储介质 | |
CN112085611A (zh) | 数据异步核验方法、装置、电子设备及存储介质 | |
CN116506333B (zh) | 交易系统生产反演检测方法及设备 | |
CN111651452A (zh) | 数据存储方法、装置、计算机设备及存储介质 | |
CN112817742B (zh) | 数据迁移方法、装置、设备及存储介质 | |
CN116739611B (zh) | 客户信息跟踪管理方法、装置、设备及介质 | |
CN109471790A (zh) | 送核参数比对方法及装置、计算机装置及可读存储介质 | |
CN116225789B (zh) | 交易系统备份能力检测方法、装置、设备及介质 | |
CN115731047B (zh) | 批量订单处理方法、设备及介质 | |
CN116701233B (zh) | 基于高并发报单模拟的交易系统测试方法、设备及介质 | |
CN115587392B (zh) | 一种防掉存力方法、装置、设备及介质 | |
CN113076331B (zh) | 中台数据处理方法、装置、设备、存储介质及程序产品 | |
CN116662208B (zh) | 基于分布式挡板的交易测试方法、设备及介质 | |
CN116541309B (zh) | 基于交易系统转换的测试方法、装置、设备及介质 | |
CN115964307B (zh) | 交易数据自动化测试方法、装置、设备及介质 | |
CN116610465A (zh) | 基于事件通知的消息发送方法、装置、电子设备及介质 | |
CN114240459A (zh) | 基于服务速度的供应商选择方法、装置、设备及存储介质 | |
CN117519938A (zh) | 基于表单数据的收单任务处理方法、装置、设备及介质 | |
CN116582827A (zh) | 基于人工智能的短信分发管理方法、装置、设备及介质 | |
CN117406930A (zh) | 基于区块链的业务处理方法、装置、设备、介质及产品 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |