通达信网上交易V6架构体系090430Word文件下载.docx

上传人:b****2 文档编号:3069963 上传时间:2023-05-01 格式:DOCX 页数:48 大小:1.35MB
下载 相关 举报
通达信网上交易V6架构体系090430Word文件下载.docx_第1页
第1页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第2页
第2页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第3页
第3页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第4页
第4页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第5页
第5页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第6页
第6页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第7页
第7页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第8页
第8页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第9页
第9页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第10页
第10页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第11页
第11页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第12页
第12页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第13页
第13页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第14页
第14页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第15页
第15页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第16页
第16页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第17页
第17页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第18页
第18页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第19页
第19页 / 共48页
通达信网上交易V6架构体系090430Word文件下载.docx_第20页
第20页 / 共48页
亲,该文档总共48页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

通达信网上交易V6架构体系090430Word文件下载.docx

《通达信网上交易V6架构体系090430Word文件下载.docx》由会员分享,可在线阅读,更多相关《通达信网上交易V6架构体系090430Word文件下载.docx(48页珍藏版)》请在冰点文库上搜索。

通达信网上交易V6架构体系090430Word文件下载.docx

网上交易V6

主要设计思想

强化客户端体系结构的层次性

直达代码维护混乱和管理缺乏的根源,实现模块化和组件化,从体系上提高代码的可靠性,例如:

分离出基础类、抽象出通讯底层等等。

弱化各模块之间的关联

解决模块之间相互牵扯和影响的问题,模块之间通过接口抽象和接口标准化,减少或规范化相互之间耦合,最大限度的减少模块之间的关联性(这些关联包括界面模块和界面模块之间、界面模块和全局状态之间、界面模块和通讯底层之间的关联),规范后每个模块意识不到其他模块的存在和,更谈不上相互牵扯和影响。

提高个性化能力

一方面大幅度提高客户端定制的弹性,一方面大幅度减少定制时相互关联引发的升级风险。

简化业务逻辑

通过大幅度的抽象,使得复杂的业务逻辑标准化、透明化,减少业务和实际通讯的勾连,从而简化业务代码和界面代码的编写。

提高透明度和开放性

基于有限的封装,向部分合作客户提高业务代码的开放性和透明度,和针对交易接口的抽象一样,系统提供单独针对业务层的抽象,隔离复杂的系统逻辑,剥离出清晰简单的业务逻辑。

2.2模块组织

财富趋势网上交易V6(后简称V6)设计中将系统划分为:

基础层、协议层(通讯层)、业务模块层,所有元素通过架构层进行控制和管理,如下图:

各层详细描述如下表所示:

V6模块组织

描述

外壳程序(SHELL.EXE)

外壳程序可以是行情主程序(TDXW.EXE),也可以是单独的主程序(ETRADE.EXE),主程序承担DLL的装载工作以及开辟工作区域,不承担主要的业务功能调用,也不承担任何细致的管理工作。

若外壳程序需要调用业务,可以采用两种途径,分别为RAW模式和ADVANCE模式:

可直接通过架构层(ETRADE.DLL)查询到TCAPI.DLL的工作实例,直接发起调用,不需要通过架构层处理,这种方式被称为RAW模式,例如闪电下单功能和盘面下单功能即可通过当前途径实现,RAW模式下,调用者需要和TCAPI发生交互,需要理解业务本身,但具有更强的界面控制能力。

若外壳程序需要调用界面,可直接通过ETRADE.DLL调用到对应的业务界面层界面,通过统一的接口和业务界面层进行交互处理,这种方式被称为ADVANCE模式,闪电下单功能和闪电手功能可用过当前模式实现,这种模式下业务逻辑由实际的业务界面层来完成,界面形式由业务界面层规定,定制性相对不如RAW模式,但调用者不需要理解业务,只需要了解界面的外部引用入参即可。

架构层(ETRADE.DLL)

系统架构层承担协调人的角色,承担如下工作:

向SHELL.EXE提供接口查询和交互接口(仅在必要的情况下)

向下依赖于基础层,同时管理通讯层和业务界面层

为界面业务层提供对象查询等等支持性工作

提供跨界面调用的指令通道。

业务层

业务层主要承担实际业务和界面的处理。

业务层可以向架构层查询各种接口信息,其中最重要的为客户实例句柄以及配置存储对象句柄。

业务层可以向架构层查询各种系统配置信息。

业务层可根据客户登录实例句柄调用通讯层向后台发起请求,这里存在两种调用模式:

异步双工模式和异步单工模式。

通讯层

通讯层主要承担实际通讯处理,通讯层除完成到交易中心异步全双工模式的封装外,还提供自动策略交易功能(本地数据缓存),并且提供委托单跟踪功能,支持数据订阅和推送等机构版功能。

业务层构建于通讯层上,对实际通讯过程,登录逻辑、实际业务通讯处理、数据分页、数据缓存等全透明。

基础层

基础层完成财富趋势基础库的建设,基础库包括四大主要部分:

SafeVCRT类库、ClibHlpr类库(含派生库簇)、GuiHlpr类库(老版本MFC扩展库)、MfcHlpr(新版本MFC扩展库)。

业务界面层组织

功能包

功能实现

功能重载

通讯交互

框架交互

功能交叉引用

 

2.3架构模块简介

2.3.1架构模块的基本作用

架构模块

基本作用

管理全部系统模块,其中包括通讯层模块(TCAPI.DLL)以及全部的业务功能模块。

组织系统的初始化,承担系统配置、缓存数据、本地配置、用户私有敏感数据和配置的统一加密存储。

负责管理客户账号列表以及全部客户连接实例。

组织界面布局,其中包括功能导航、工具条、主窗口区、选项对话框、托盘窗口区等等。

2.3.2架构模块的基本结构

管理模块的内部结构:

架构模块通过界面控制单元完成界面布局和处理,界面元素主要包括三大区域:

主功能区、设置功能区、浮动功能区。

主功能区主要包括导航栏、工具栏、功能窗口,其中功能窗口包括主功能视图和弹出功能视图。

如下图:

设置功能区主要由设置页构成。

浮动功能区为系统的第二功能区,用于显示各账号的最新状态。

2.4架构模块的子模块

2.5传统通讯模式

传统通讯模式的主要特点是在半双工,即在完成一个请求和应答前,通讯上不能再次发起请求,务必等待上一请求完毕后,服务器在处理上采用半双工方式,即每路连接仅仅保持一个缓冲区,且不保障客户端发送的时序。

半双工方式在通讯上可以采用同步和异步模式,采用同步模式时,通讯全过程和等待应答数据全过程会阻塞发起线程,采用异步模式时,通讯和数据应答的等待在单独的线程中完成,通讯全过程和等待应答数据全过程不会阻塞发起线程。

半双工同步模式的时序如下图所示:

半双工异步模式的时序如下图所示:

2.6V6全新的通讯模式

V6采用全新的通讯模式,主要改进点包括:

V6通讯模式

使用全双工方式

允许收发并行,即将发送请求后,不必等待该应答返回,即可在同一套接字上发送下一请求。

采用全异步方式

脱离界面线程存在,不受界面线程干扰。

使用IOCP技术

可在有限工作线程上挂载大量连接,可最大限度并行。

封装通讯事务,隔离通讯逻辑

使上层应用可摆脱复杂的通讯操作以及冗余的错误判断。

支持共性操作

内含翻页逻辑等,避开应用层复杂处理。

V6通讯模式如下图所示:

V6的基础通讯模型经过高度的抽象,对外封装后分别提供连接管理器、虚拟连接对象、作业对象、参数集对象、结果集对象五种标准对象。

2.6.1连接管理器

连接管理器用于管理全部的站点配置数据、虚拟连接对象、作业对象、参数集对象和结果集对象。

如下图所示:

连接管理器除管理上述数据外还承担基础通讯操作,例如自动控制存活包发送、自动控制断线重连等等。

2.6.2虚拟连接对象

虚拟连接对象是外部和站点沟通的通道,作业对象是位于通道内传递的请求和应答对,参数集是作业对象的输入参数,结果集对象是作业对象的输出参数。

虚拟连接抽象了以往在通讯过程中繁复的错误和状态判断,例如网络状态、网络发送和接收错误,甚至对服务器端的错误类型也纳入其中。

虚拟连接对外提供作业的封装,当上层需要调用业务时,只需要生成参数集,提交后即生成对应的作业,当作业发生错误或者作业顺利完成时候通知调用者,调用者可以通过通知的编号从完成队列中提取已经完成的作业,如果作业在异步通讯过程中或者处理过程中发生错误,可以从作业中提取到错误来源、错误号以及错误描述信息,若作业成功完成,可从作业中提取到一个有效的结果集,从结果集中可提取到返回的全部行列描述,包括字段名、字段属性以及各行数据。

2.6.3作业对象

作业对象是基本调用行为的封装,作业可以是一个登录或者登出行为,也可以是一个业务调用,作业在发起请求的时候产生,其生命周期将持续到作业完成或者发生错误,完成的作业调用者若不主动清除,连接管理器将在退出的时候自动清除。

对于业务调用,作业产生的要件是功能ID,参数集不是作业产生的必要条件,若参数是可选的,发起作业并不需要生成参数集。

待完成的作业处于内部锁定状态,外部可清除掉对应的作业,并不影响系统运行,系统仅仅会释放外部的引用,并不会彻底删除作业,直到两个条件(成功完成或者发生错误)满足为止。

处于完成状态的作业,包含有错误类别(错误源),错误号以及错误信息,若作业被成功完成,作业还带有一个结果集对象,调用者可以通过结果集获取返回的数据。

2.6.4数据字典

V6的业务基础和V5是一样的,都是以数据字典为基础,在通讯层上完全兼容,这种规范约定:

每个业务字段都具有唯一的ID

请求由一系列参数构成,参数的字段ID不可重复,且含义不可具有二义性。

请求的参数包括可选参数和必填参数,对于必填参数,调用者必须按约定填写,服务器不承担空值检查责任。

对于可选参数,调用者可以选择是否填写,若不填写,系统将按照其默认含义理解。

请求参数不一定为全部后台系统所必需,但按照适用率最大化的原则,要求应用层必须按照约定送入,以避免兼容性问题。

应答由应答状态和数据行列构成,但数据行列不是构成应答的必要条件,允许应答只包含应答状态。

应答字段序列由后台系统规定,后台可对返回各字段提供自身的解释(关键性字段除外,如账号类别、股东代码等等标识或者标志字段具有绝对的统一性)。

2.6.5参数集对象

参数集对象是产生业务调用作业的可选条件,对于具有要求有必填参数的业务调用,其参数集对象是必须的,参数集规定了一系列的入参,例如买入操作,入参最少应该包括:

委托方式、委托价格、委托数量等等。

2.6.6结果集对象

结果集主要包括两个部分:

应答状态和行列数据。

应答状态主要是用于携带服务器状态通知消息。

2.7系统构架图

2.8V6网上交易系统模块组成表

系统名称

模块

类型

通达信用户分级平台

用户管理接入服务器

接入服务器

通达信数据库分布式存储系统

数据库管理

用户积分管理系统

后台管理平台

用户分级管理平台

用户分级信息同步接口

后台接口

客户端分级资讯浏览器

客户端模块

通达信安全中心平台

通达信安全认证中心

标准SSL加密体系

后台模块

数字证书效验模块

U-KEY效验接口

硬件动态口令卡(OTP)校验接口

手机短信OTP校验接口

第三方RA校验模块

客户端异常登陆监控中心

客户端异常登陆短信接口

数字证书前端功能应用开发

客户端定制模块

U-KEY前端功能应用开发

第三方证书前端功能应用开发

硬件动态口令卡(OTP)前端功能应用开发

绑定机器特征码模块

异常交易行为预警器

安全平台管理子系统

通达信消息服务平台

通达信消息服务接入服务器

用户信息推送接口

信息推送集中发布平台

主动服务消息播报器

信息推送平台管理子系统

后台程序

通达信成交回报推送平台

成交回报推送服务器

后台服务器

主动成交回报版客户端定制

2.9V6架构特性

2.9.1采用更灵活可扩展的结构

功能模块化

客户端按照模块化方式进行组织,新增功能可以通过插件方式进行实现

系统具有良好的开放性,使得新开发出的插件完全可以实现和原有模块紧密结合,包括交叉调用

可以单独针对功能进行升级

接口可扩展化

系统提供丰富的开发接口,可实现对包括登录/视图/设置等诸多功能在内的快速开发和扩展

框架提供宽泛的开发接口,使得应用层对于网络通讯和数据安全透明

代码松耦合性

系统各组件之间通过高度抽象的接口进行调用,降低了模块和模块之间,模块和框架之间的耦合性

这将一定程度上减少模块之间的相互的影响

皮肤可更换性

支持皮肤更换,语言更换,字体大小颜色更换等

2.9.2系统通讯层上采用异步双工方式设计

早期模式的弊端

新模式的主要特点

应用层直接和通讯层耦合,需要了解通讯层的全部逻辑

应用层和通讯层仅仅依靠通讯接口进行连接,不需要理解通讯层的状态

应用层在处理数据发送接收时,必须顾及底层状态,甚至干预断线重连等通讯过程

应用层的业务调用被封装为事务的方式,相比较而言判定错误和识别错误都变得简单,他也不需要干预通讯过程

应用层在处理数据收发时,虽然采用了异步模式,但在同一时间,连接上仅允许一条请求,必须对应的请求完整接收到后才能做下笔请求的发送

一方面会给应用层较多的限制一方面会给性能方面带来损耗另外一方面也给应用层逻辑控制带来一定的复杂度

事务和连接独立,同时可在一路连接上投递多个请求,不必等待请求完成即可进行数据收发

2.9.3消息系统

消息系统为各组件模块提供统一的消息揭示(包括公告)方式

消息系统支持宏和客户端功能互动

例如支持客户姓名替换,支持在通告内容中提供交互的URL(或按钮)转向相应的功能

支持和消息系统接驳

2.10客户端模块划分

基础部分:

AddinCommonControl

公用控件

AddinMiniQuote

盘口控件

AddinSafeControl

安全控件

AddinTList

列表控件

V6ClientSet

设置模块

基础业务部分

AddinUtility

基础模块(登录,附加帐号等)

AddinYzzz

银证模块(注:

本处将扩展为单独的资金功能)

AddinCA

安全模块

AddinStock

股票模块

AddinCredit

信用交易模块

AddinFund

基金模块

AddinFinancing

理财模块

AddinFuture

期货模块

AddinHKStock

港股模块

AddinService

服务模块(含链接,网上营业厅的整合,分级的支持,消息部分)

企业版部分

AddinPmxd

盘面下单模块

AddinSds

闪电手模块

AddinVip

机构版模块

第3节用户管理子系统

3.1统一认证系统

3.1.1设计思路

为将网上交易服务的“行情、资讯、交易、交流”四大服务体系有机融合在一起,我们提出如下图所示的统一用户登陆思想:

3.1.2系统逻辑层次

由于统一用户认证是一个整合资源,利用资源的服务;

从某种角度上说,是一种新的通道解决方案,即在前端打通客户端的使用限制;

在接入层打通接入服务器的通道限制;

在后台打通C/S模式架构与B/S模式架构的信息互通问题。

整个系统的逻辑层次如下所示:

我们在接入层将应用访问提升至独立的一个逻辑子层,所有的应用访问均通过用户认证服务器进行动态的业务路由分配至后台的逻辑接入子层。

正如我们设计的,这个过程对用户是完全透明的。

在商务逻辑层通过商业智能的开发设计,向底层的数据处理中心要求数据服务,同时对逻辑接入子层提供业务支撑服务。

在数据处理层,核心问题是如何解决传统的委托交易、CRM、网站与应用平台的信息交互和应用互通问题。

这一点通过定制用户认证转换引擎即可与通达信系统的统一用户数据库进行同步。

3.1.3设计要点

统一用户认证中心设计着眼点:

统一控制交易系统用户和安全,安全管理全部交易帐户(包括注册用户和未注册用户),集中验证,账号冻结。

认证中心记录用户登录全部信息(包括客户端IP和MAC地址),并对冻结和解冻做完整的记录,安全级别的交易口令级别自动收入安全中心数据库(登记为最低安全级别),在认证中心系统通讯正常的前提下,全部验证通过认证中心完成,认证中心对交易口令、认证口令、数字证书的冻结状态进行记录,并对试探密码等行为进行日志记录。

认证中心支持分布方式部署,支持路由设置(根据柜台号路由,主要用于支持半集中或通买通卖的集中柜台),作为验证的前置机,防护于柜台外侧,单服务器支持30万用户,认证中心以站点为单位部署,分布方式存储数据,每个分布部署的安全服务器支持自身数据的数据快照备份和动态热备份(可进行灾难状态切换)。

TC50业务调度引擎本身可支持交易口令冻结(原有功能),在开启认证中心时,该功能自动关闭,转由认证中心执行该职能,业务调度引擎本身(无论哪种工作方式)均能直接以TCP/IP方式连接认证中心。

3.1.4业务实现流程

结合证券公司现有情况,统一用户认证可按照如下两种方式实现认证流程:

业务实现说明

优点

缺点

柜台验证方式

用户登陆时候输入资金帐号,由委托交易系统直接通过柜台系统进行验证。

系统架构简单,用户资料不需要同步,整体改动工作量小。

由于用户认证增加了业务处理逻辑,会给柜台系统带来一定的压力。

CRM/网站/第三方认证

用户登陆时输入资金帐号,由委托交易系统的用户认证中心完成与CRM/网站/第三方认证系统的用户资料同步,在用户认证中心完成用户认证。

用户认证业务处理由网上交易系统直接完成,对后台系统性能影响小。

系统需要完成与其他第三方认证系统的用户权限同步工作,整体复杂度提高,管理和维护会带来一定的压力。

3.2用户分级系统

3.2.1设计说明

在精细化服务的环境下,用户分级服务成为整个在线服务平台的业务基础。

与统一用户认证系统紧密相关的,用户分级系统更多的属于一个后台管理平台。

通过用户分级系统能够规划不同的用户权限,并通过统一用户认证系统完成用户权限的辨识。

通达信用户分级系统的设计逻辑如下图所示。

3.2.2用户分级默认规则

用户分级服务属于后台管理系统,在CRM系统中定义了用户权限与级别后,网上交易前端可按照如下默认规则进行服务:

默认规则

规则说明

最新权限覆盖规则

不同用户使用同一台机器登陆网上交易系统,客户端永远保留最后一次登陆的用户权限,以最后一次的用户权限作为系统默认权限。

后登陆者使用规则

某用户登录后,如果在另一个地方再次登录(相同的用户名),则为重复登录。

重复登录采用后来者使用的原则。

即原先的连接收到“您的用户名和股东代码已在其它地方被人登录”的提示,然后原先的连接被断开,后来的连接成功。

3.2.3用户分级定制规则

用户分级服务可按照证券公司的业务需求,完成不同的业务规则定义,包括:

功能使用规则

证券公司可定义用户级别与用户功能的对应关系表,由我们完成系统更精细化的业务功能定制

通道使用规则

证券公司可自定义用户级别与指定服务站点的使用规则,完成VIP站点只对VIP用户开放的业务需求,从而有效保障VIP用户在行情火爆、系统繁忙时候享受独有的通道服务

产品服务规则

证券公司可自定义用户级别与服务产品的对应关系,从而保障指定级别的用户能够访问指定级别的资讯咨询服务产品,实现服务产品的差异化

3.2.4用户分级系统管理

我们提供开放式的用户分级管理工具,供证券公司完成用户分级的管理工作。

包括:

用户登陆方式的管理

可以指定用户使用何种方式进行登陆

用户级别的调整

在我们的用户分级数据库中,可以通过用户分级管理工具完成用户级别的临时调整,如冻结、临时升级/降级等

3.3统一资讯系统

3.3.1设计目标

通过券商总部统一信息平台的建设,可以整合和改善券商内部对信息和数据的管理,建立一个集收集、整理、研究、上载、审核、发布、转换、交流、维护于一体的统一信息管理平台,通过系统提供灵活的信息发布展示方式,服务于不同的客户对象。

3.3.2系统逻辑架构

通达信统一资讯平台的系统架构如下:

以基础网上交易资讯主站为支持,建立新的统一资讯数据中心,实现资讯体系的集中化、一体化管理

信息源支持广泛,全面支持各种基本信息、动态信息、DOC/PDF/HTML文档扩展信息的统一管理,统一分发;

支持中央采编审核,有效管理信息资源,增强系统安全性、扩展性;

前端表现形式多元化,既能满足传统的营业部需求,也能轻松的实现网上资讯服务平台的架设,更可根据客户需求提供定制化的扩展资讯服务。

3.3.3主要技术特色

统一资讯系统的技术实现主要是通过三大归一化引擎、六大自定义引擎的技术结合实现,同时通过通达信的运算引擎与高效推送引擎实现了后台与前端的有机整合。

其技术特色主要有:

数据采集后台:

精确、灵活

数据应用平台:

高效、实时、稳定

客户使用平台:

直观明了、操作方便、易用灵活、紧密联动

3.3.3.1三大归一化引擎

后台数据采集通过数据归一化采集引擎、数据归一化清洗引擎与数据归一化挖掘引擎协同完成。

统一资讯平台元数据库数据的来源渠道支持DOC/PDF/HTML文件及国家统计局、国家海关总署、现货数据、外购数据以及第三方机构的各种异构数据库等。

由于数据来源较广泛,而相互作用的研究对象较集中,不可避免的会出现数据重复、冗余、不一致现象。

这就必须定义一个统一的数据规一化应用方法,从而实现在整个体系架构中不出现重复、冗余的数据。

系统模块

功能描述

特点

归一化采集引擎

将来自与不同渠道的宏观数据、区域经济数据、行业数据、产品进出口数据、公司和企业数据、财经数据进行非判断性的转入存储工作,即按照通达信元数据库的格式,将所有数据统一采集入库。

该模块能够支持对多种其他数据库产品的数据源(SQL库、EXCEL源、格式化TXT等)的连接和访问,能够对已经结构化的数据进行一次性高效大量的转储,能够定时、隔时或实时地完成从来源数据到目标数据的增量转入工作,同

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2