通达信网上交易V6架构体系090430.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第 PAGE 2 页 共 NUMPAGES 49 页 PAGE 前言 目前通达信网上交易V5.X客户端存在5大缺陷: 序号 问题 说明 解决方法 1 紧耦合 客户端程序模块化程度不足,内部逻辑复杂,代码可读性差。在响应业务快速变化的定制开发需求时导致工作量大,开发周期长等问题 按照Observer(观察者)设计模式重新编写客户端程序 适当增加代码注释 2 底层抽象不够 大量采用全局变量控制业务逻辑,导致程序维护与版本管理均较难于把握和控制。 3 不支持双工 增加异步双工特性 4 安全性弱 虽然已经采用了用户登陆对话框防病毒、防木马、防后门钩子等技术处理,但是客户端程序整体仍然能够通过“脱壳”程序编写欺骗代码,在行情登陆时候可绕过用户验证直接登陆; 通过同样的技术,能够跳过用户登陆验证,输入非法代码登陆交易客户端,获取交易客户端功能界面,但是由于未进行后台验证,无法进行正常委托交易; 交易中心检查客户端的逻辑顺序,例如必须存在正确登陆才能进行其他业务类请求,否则记录地址备查,对于特定版本首先违背业务流程的一定是破解者本身,对于这些用户我们将进行封锁和警告,警告无效则请求警方介入处理。 接口实施用户输入信息合法性检查,以避免冲击后台 客户端加强破解的防范措施,这个任务相对而言比较长远,目前已经完成基本措施 建立更加及时的集中跟踪报警机制及破解跟踪响应机制 Level 2行情服务和交易中心进行用户联合验证 5 版本管理混乱 程序通用框架代码与客户的个性化代码重叠,导致客户端版本混乱,在长期的版本升级与维护过程中,框架代码与业务代码纠结不清,版本升级已成为系统风险最大的环节。 严格划分框架代码与业务功能代码的版本号,使用TFS系统进行版本规范化管理 V6技术总介 设计思想 财富趋势网上交易V6(内部版本标识V6)是深圳财富趋势科技有限公司基于原有网上交易5.X系列产品(内部版本V5,外部发布版本6.X-8.X等)重新设计后形成的全新产品。 财富趋势网上交易V6的主要改进方向在于客户端的模块化和高度抽象化,主要设计思想在于: 网上交易V6 主要设计思想 强化客户端体系结构的层次性 直达代码维护混乱和管理缺乏的根源,实现模块化和组件化,从体系上提高代码的可靠性,例如:分离出基础类、抽象出通讯底层等等。 弱化各模块之间的关联 解决模块之间相互牵扯和影响的问题,模块之间通过接口抽象和接口标准化,减少或规范化相互之间耦合,最大限度的减少模块之间的关联性(这些关联包括界面模块和界面模块之间、界面模块和全局状态之间、界面模块和通讯底层之间的关联),规范后每个模块意识不到其他模块的存在和,更谈不上相互牵扯和影响。 提高个性化能力 一方面大幅度提高客户端定制的弹性,一方面大幅度减少定制时相互关联引发的升级风险。 简化业务逻辑 通过大幅度的抽象,使得复杂的业务逻辑标准化、透明化,减少业务和实际通讯的勾连,从而简化业务代码和界面代码的编写。 提高透明度和开放性 基于有限的封装,向部分合作客户提高业务代码的开放性和透明度,和针对交易接口的抽象一样,系统提供单独针对业务层的抽象,隔离复杂的系统逻辑,剥离出清晰简单的业务逻辑。 模块组织 财富趋势网上交易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提供接口查询和交互接口(仅在必要的情况下) 向下依赖于基础层,同时管理通讯层和业务界面层 为界面业务层提供对象查询

文档评论(0)

nuvem + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档