(计算机科学与技术专业论文)分布式期货交易平台的研究和实现.pdf_第1页
(计算机科学与技术专业论文)分布式期货交易平台的研究和实现.pdf_第2页
(计算机科学与技术专业论文)分布式期货交易平台的研究和实现.pdf_第3页
(计算机科学与技术专业论文)分布式期货交易平台的研究和实现.pdf_第4页
(计算机科学与技术专业论文)分布式期货交易平台的研究和实现.pdf_第5页
已阅读5页,还剩54页未读 继续免费阅读

(计算机科学与技术专业论文)分布式期货交易平台的研究和实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

浙江大学硕士研究生毕业论文 r 8 7 7 7 3 b 摘要 随着计算机网络技术的发展,国际和国内的期货、证券、股票等交易所的交 易模式发生了根本性的改变,电子化交易成为主要交易模式。在电子化交易系统 中,高性能高可用性是两个重要特性。 本文基于多层分布式体系,提出了s w p f 2 5 代期货交易平台的设计和实现。 内部使用多台应用服务器( a p s e r v e f ) 来分摊用户的交易请求,达到负载均衡和 扩充的需求。对用户提供了一个访问服务器( a c c e s e r v c f ) ,负责负载均衡和 系统监控。当客户端登陆时,先连接到a o c c s ss c e r 得到可用的a ps e r v e f ,然 后直接和a ps e r v e r 交互进行交易。这样的结构使得交易平台有很高的性能,并 且可以透明地增加a p s e c r 以扩充平台性能。 在具体的实现中,又引入了自主开发的消息中间件( m o m ) 和内存数据库 ( m m d b ) ,将a p s e r v e r 、a c c e s e r v e r 分成不同的进程,具有良好的伸缩性和 高性能。为了提高系统的可用性,不同的a p s e f v e r 相互备份,a c c e s e r v e r 采 用双机热各份,使系统能提供不问断的服务。 本文第一章介绍了分布式系统的体系结构和构建分布式系统的主要技术,第 二章对现有期货交易平台进行了分析,最后提出了具有高性能高可靠性的 s w 口f 2 5 代期货交易平台架构。第三章对交易系统平台的几个重要组件如a c c e s s s e r v e r 、消息中间件( m o m ) 和内存数据库( m o m ) 详细介绍,第四章介绍了 交易平台的高可用性,主要是数据同步和备份以及故障时切换的机制。 【关键词】交易平台多层分布式高性能高可用性负载均衡消息中间件内 存数据库数据同步备份 浙江大学硕士研究生毕业论文 a b s t r a c t w i t 量ld e v e l o p m e mo f l cc o m p u t e rn e t w o r kt e c h n o l o g y ,t h e r ei sag r c a tc h 柚g cj i l t h e 廿a d em o d e lo ft h ef u t l i r e s ,s e 刚n e sa n ds t o d ke x c h 卸g ei n1 0 c a la n do v e r s e a m a r k e t , m a ti s ,l h ee l e c 岫i c t f a d eh a sb e c 咖el h em a i nt r a d em o d e l i n e l e d 啪i c - t r a d e s y s t e m ,l l i g hp c r f o 瑚a n c ea n dh i g ha v a i l a b i l j t y a r cn l cm o s t i m p o r t 卸tc h a f a c t 盯i s i i c b a s c do nt h em u 坩坩e rd i s 倒b u t e ds ”t 锄,t h ep 印e rd i s c l l 锚e s 血ed e s i 印锄d i m p l c m e n t a t i o no ft h es w p f 2 5f i l t i l r e s - 劬d ep l 胁h n w ew i u 鹏em a l l ya p s e r v e r st o d e a l 州t ht h et r a d e 础e s tr c s p c c i v e l y w h i c hm a k e sal o a db a l a n c c 柚de x t e n s i o n d e m a i l d ,w h i l e 距a o c 髂ss e 盯w j l l b e p r a v i d e d t o t h e u s c r t o t a k e c h 缸g e o f m e l d b a l 卸c ea i l ds y s t c ms u p e r v i s i 加w h e nad i 饥t i o g i n ,h e 皿e c t st 0 沁s ss e r v e f 丘斌t og c t 如a v a i l a b l ea ps e r v e t h e nc o m m u n j c a t e sd 沁d l yw 妯lt l l ea ps e r v e l t h i sm a k e sah i g hp e d b 衄a n c ct f a d cp l a t f o m ,卸di ti se 鹤yt 0a d da ps e r v e rt o i m p f o v et l l ep 曲r m a i l c e t o 曲p i e m c n tt h e 仃a d ep l a t f o 】n ,w cd c v c l 叩e d o u rm e s s 3 9 co d e n t c d m i d d l e w a 叫m o m ) 蛐dm a i nm e m o r yd a l a b a s “m m d b ) w i m9 0 0 ds c a l a b i l i t ya 玎d h i g hp e r f o m 柚c ct od i v i d ct h ca ps e e r 、a c c e 鹞s e r v c fi i i t 0d i 岱e f e n tp m c e s 驼s i n o r d e ft oi m p r o v et h ea v a i l 曲埘t y ,a ps e r v e ru s e sm 船t e f _ s i a v eb a c k u p ,柚da c c e s s s e r v e r i h eh o ts t 柚d b yr e d u n d 柚c y ,s ot h es e r v i c e 虹c o n t i l l u o u s 1 1 l e 咖d yw i l i 胁t l yi n t r o d u c et h ea r c h i t c c n l f e 0 fd i s t f i b u t e ds y s t e ma d 眦 m a i nt c c h n o l o g yt 0b u i l dad i s t d b u t e ds y s t c m n 朋,血es e c o n dc h a p t e f 州l l 柚a l y z e f e c 锄tf l l t u r 鹤t r a d ep l 酬f 0 加,b a s c do nw h i c h ,t h eg w p f 2 5f i l t u r c s 劬d ep i a t f o r mw i t h h i g l lp e 咖皿卸柚dh i g ha v a i l a b n i t yw i ub ep r o p o s e d a f t e rt l l ep r o p o s i n go fn e w p l a h b 咖,w em a k ead e t a j l e d 姐a l y s i so fs o m ei m p o r t a n t 姗p o n e n t si nt h ep l a t f o r m 叫c ha sa c c e s ss e r v e r 、m o m 锄dm m d b f i n a l l yi n t r o d u c et l l eh i 曲a v a i l a b i l i t yo f t h ep l a t f 0 珊,m a i l i l yt h ed a t ar c p l i c a t j o n 蛐d 删1 0 v c r 【h yw o r d s 】 t f a d ep l a 曲m ,m u n i - 廿e rd i s m b u t e ds y s t e m ,蛐;hp e 怕瑚柚c e ,i l i g l i a v a i l a b i t y ,l o a db a l 柚c e ,m o m ,m m d b ,d a t ar 印i i c 撕o n ,b a c k u p 2 浙江大学硕士研究生毕业论文 1 绪论 1 。1 课题背景和来源 随着计算机网络技术的发展,国际和国内的期货、证券、股票等交易所的交 易模式发生了根本性的改变,其传统的手工喊价模式已经被电子化交易的手段所 取代。电子化交易具有交易速度快、交易空间广、交易成本低、交易透明度高等 优势,对交易量的增长有着巨大的贡献,使人们摆脱了交易场地的局限,使得交 易可以在全球任何地方展开。 越来越多的证据开始证明,电子交易已经成为市场的主流。完全采用电子交 易形式的欧洲期货交易所一直保持领头羊的地位,2 0 0 5 年合同交易量比2 0 0 4 年上 升1 7 ,达到1 2 5 亿张,这是电子交易手段应用越来越广泛的结果。芝加哥商业 交易所的统计结果显示,2 0 0 5 年该交易所7 0 的交易量都是通过电子交易形式完 成的,而2 0 0 4 年的电子交易在整个成交量中所占的份额仅为5 7 。期货期权交易 量位居全球第三的芝加哥期货交易所( c b o n 2 0 0 5 年共成交6 7 5 亿手,较2 0 0 4 年增 长1 2 ,其电子平台的交易量占总交易量的6 5 。 电子交易量的大幅度增长很大一部分得益于网上交易系统的发展与完善。交 易系统是交易所典型的关键业务系统,其运行稳定可靠与否关系到交易体系的安 全。交易系统必须保证交易业务的高连续性,即保证每一个指令的按序准确到达, 同时防止当点出现的硬件或软件故障对业务的连续性带来的影响。因此,高可用 性是交易系统设计和实现的一个重点。 同时,交易系统还有一个很大的特点,就是系统的用户数量多,并发数也较 大,市场行情瞬息万变,交易下单后每个交易者都希望能够在尽可能短的时间内 看到委托的回报和成交的回报。因为时间的延迟可能意味着价格的变动可能对 投资者带来损失,所以交易系统是否具备高性能是用户关注的一个重点。 基于以上讨论,本文致力于构建一个高性能高可用性的期货交易平台本课 题来源于台湾精诚资讯有限公司,该公司的期货交易系统平台是提供专业期货商 及相关金融机构从事期货交易的支撑平台,其主要目的是向上层的期货交易业务 提供高可用、高性能的数据库存取服务。为了继续保持在市场中的领先地位,精 诚公司力图推出2 5 代期货交易平台,以期在性能、可靠性、可用性方面得到更 进一步的提升。 5 浙江大学硕士研究生毕业论文 1 。2 国内外研究现状 1 2 1 交易平台研究现状 对于期货交易系统来说,业界公认交易平台有四个:德国的e u r e ) 叩砸t r a , 瑞典的0 m 平台、法国的壬h l r o n e x t h s c 平台和伦敦的u 帕f e c o n n c c t 。 自1 9 9 8 年以来,欧洲期货交易所( e 1 j r e x ) 在短暂的几年时问内,就发展 成为国际知名的期货交易所,交易量居世界前列,正是拜整台管理、完备的电子 设施、高效的运营方式所赐。e u r e x 改变了传统的人工交易模式,完全采用电 子交易模式,构成了一个自动化的交易处理系统,再加上极高的可靠性,e u r e x 在短时间内迅速发展壮大。 n 啦c o n n o n 系统是一个具有高执行速度和灵活性的电子交易平台,它由伦 敦国际金融期货期权交易所( u f f e ) 设计和开发,用来处理大批量复杂的交易 数据。此系统具有多种交易匹配算法,五十多种不同的交易规则。此系统的使用 者包括芝加哥期货交易所( a ,a t ) ,美国堪萨斯城期货交易所( k c b t ) 、美国 明尼阿波利斯谷物交易所( m g e ) 【) 、加拿大温尼伯商品交易所( w c e ) 和东京 国际金融期货交易所( 1 1 f f e ) 。 在国内,我国期货市场从一开始就推行电子化交易,儿p 年来三大交易所 的交易系统已经更换了好几次,例如郑州商品交易所,已经使用了其第四代交易 系统。由于竞争和业务发展的需要,我国期货市场充分利用后发优势,在1 9 9 5 年左右开始建设远程交易网络,大力发展远程交易。开始的模式为在异地城市设 置远程交易大厅,通过租用卫星和地面专线接到交易主机完成撮合。之后又将接 入点匮冒在会员场所,会员在其办公室内就能使用计算机实现报单功能,接收成 交回报和交易行情。目前各期货交易所的远程交易笈展迅速,经纪会员基本都开 通了远程交易,以上海期货交易所为例,远程交易的成交量在2 0 0 4 年达到9 0 以上。远程交易和其接入网络已经成为交易所的生命线。 由于这样的发展趋势,在设计时交易系统,要充分考虑可能面临的客户和通 讯压力。系统的高性能和高可用性是晟关键的。 1 2 2 分布式技术研究现状 分布式系统,是组件分布在网络计算机上并且通过消息传递进行通信和动作 协调的系统。分布式系统具有以下特征:资源共享、开放性、并发性、可伸缩性、 容错性、透明性。分布式系统的缺点是:复杂性、保密性、小易管理、不可预见 性。 6 浙江大学硕1 研究生毕业论文 目前分布式技术领域的研究和应用比较广泛。分布式技术的研究方向有:异 构分布式系统,分布式的软件体系结构,分布式对象【j l ,分布式数据库“( 包括 分布式数据库的容错技术、安全技术、安全设计与安全管理等) ,分布式系统的 动态负载均衡以及容错技术,分布式系统可靠性,分布式系统的组件技术及其应 用,分布式系统中面向对象编程、安全防范措施等,分布式应用系统的开发方法、 开发技术等。 基于分布式技术的应用研究也很广泛,目前分布式技术被应用于很多领域, 如入侵检测哪,访问控制,证书系统,信息管理系统( 土地资源、档案管理、医 疗、e r p 等) ,电子商务,计算机仿真领域( 如分布式交互仿真技术的研究) ,多 媒体技术领域( 如分布式多媒体技术的研究) ,人工智能领域等等。并且在实际 应用中出现了不少基于i n t e r t ,i l l t r 姐e t 的分布式w 曲应用系统,符合m i c r o s o f t 的w i n d o w sd n a ( d i m i b u i e di n t e f n e ta p p l j 诒t i o ,分布式网问应用程序) 模型 的分布式应用系统,基于客户服务器、浏览器,w 曲服务器应用程序服务器数 据库服务器模型的分布式多层应用系统,分布式数据库系统,分布式多媒体信息 点播系统,分布式专家系统等应用系统的模型和产品。除此以外,根据实际应用 的特殊性,还提出了许多现实有效的分布式软件结构。 随着分布式处理技术和c h e n “s c r f 体系结构已经日益成熟,分布式多层体 系结构成为构造交易系统地最好选择。 1 3 分布式体系结构 分布式应用就是把应用部署在不同的机器和平台,通过网络连接在一起, 共同执行相关的功能。系统的各个组成部分在物理上是分离的,在逻辑上是紧密 关联的。分布式应用系统建立在网络和通信的基础上,但位于比网络更高更抽象 的层次上。用户不必关心机器的物理分布和通信细节。 根据应用系统中层次的划分和组织结构,分布式系统的结构可分为:两层 c 届结构和多层结构。前者是传统的已经成熟的c s 应用技术,后者正日益流行 并不断发展。 1 2 1 两层客户机,服务器结构 客户机,月务器( c e n “s e m r ) 模式是讨论分布式系统时最常引用的体系结 构,现在仍被广泛地使用。d s 模式把大型地计算机应用系统变为多个相互独立 的子系统,而服务器便是整个应用系统资源存储与管理的中心,多台客户机则各 自处理相应的功能,完成应用系统的功能f 】【5 l 。 从软件系统来讲,把整个系统分为三层:表示层、数据处理层和数据存储 7 浙江大学硕士研究生毕业论文 层。但在两层d s 结构中,数据处理层是与表示层或数据存储层一体的,根据其 在物理上的客户机和服务器上分布,又有两种不同的结构形式h m ,如图1 1 ,其 区别是数据处理层在客户机还是在服务器。 图1 1 两层结构的两种形式 ( b ) 两层c 幅结构存在以下的缺点: 客户机与服务器直接连接,安全性低。非法用户很容易通过客户机直接 闯入中心数据库。造成数据损失。 客户机程序肥大,随着业务规则的发展,需要随时更新客户机端程序, 加大系统的维护量。 每个客户机都要直接连到数据库服务器。使服务器为每个客户建立连接, 消耗大量原本紧张的服务器资源。 大量的数据通过客户机端和服务器端直接传送,在业务高峰时容易造成 网络流量爆增,出现网络堵塞。 c 倍模式的这些先天不足,随着业务的变化,将出现越来越多的问题。所以 有必要对这种两层体系结构进行改进,将业务处理与客户交互分开,以实现瘦客 户,业务服务数据服务的多层分布式应用体系结构。 1 2 2 多层客户机棚l 务器结构 多层应用体系结构就是在传统的两层结构的客户端与数据库服务器之间加 入一个中间层,我们称之为应用层。如图1 2 所示,各层实现明确分工口l l q : 瘦客户端:提供简洁的人机交互界面,完成数据的输入输出。 中间层:应用程序服务器就放在该层,它为各种应用提供了商业逻辑。服 务器可以是分布式网络的一个组成部分。服务器程序为客户机上的程序提供了各 种服务。完成业务逻辑,实现客户与数据库对话的桥梁。同时,在这一层中,还 8 浙江大学硕士研究生毕业论文 应实现分布式管理、负载均衡、失败恢复( 硒l r e c o v e r ) ,安全隔离等功能。 数据服务:提供数据的存储服务,一般就是数据库系统。 面 图1 _ 2 三层c 幅结构 多层结构较传统的两层应用模式有多方面的技术优势,表现在以下几个方 易维护:分布式应用采用了多层体系结构,将应用的逻辑结构进行合 理的分布,业务逻辑在中间服务器,当用户需要改变应用软件的商业逻 辑规则时,只需改变应用服务器的程序即可。客户端程序基本不用改动。 瘦客户机:减轻了客户机端的工作负荷。 高性能:通过负载均衡以及中间层的数据缓存能力,提高了应用的执行 速度。 安全性高:中间层隔离了客户直接对数据库服务器的访问,保护了数据 库的安全。 稳定性:中间层缓冲客户端与数据库的实际连接,使数据库的连接数量 苑小于客户端的数量,数据库服务器更加稳定。f a i l 瓜e c o v e f 机制能在 一台服务器故障的情况下,透明地把客户端工作转移到其他服务器上。 伸缩扩展性;基于多层分布体系,当业务增大时,可以在中间层部署更 多的应用服务器,提高对客户端的响应,而所有变化对客户端透明。 1 4 构建分布式系统的主要技术 目前构建分布式体统的技术主要有四种:远程过程调用、分布式对象技术、 网络应用程序接口和中问件技术。 1 4 1 远程过程调用 远程过程调用r p c ( r c m o t ep f o c e d u r ec a l i ) 是分布计算中的最传统的通信方 9 浙江大学硕士研究生毕业论文 式,一个应用程序使用r p c 来“远程”执行一个位于不同地址空间里的过程, 并且从效果上看和执行本地调用相同【1 0 】。 在r p c 模型中,a i c t 和s e r v c l 只要具备了相应的r p c 接口,并且具有r p c 运 行支持,就可以完成相应的操作,而不必限制于特定的s e e r 。因此,r p c 为 c l i e n v s e r v e r 分布式计算提供了有力的支持。事实上,一个r p c 分为两个部分: s e r v e f 和c l i t 。s e e r 提供一个或多个远程过程,a i c n t 向s e r v e f 发出远程调用。 s e r v e r 和c l i c n t 可以位于同一台计算机,也可以位于不同的机器,甚至运行在不同 的操作系统上,通过网络进行通讯。相应的s t u b 和运行支持提供数据转化和通讯 服务,从而屏蔽不同的操作系统和网络协议。在这里的r p c 通讯是同步的。采用 线程可以进行异步调用。过程如图1 3 所示: i l i运行时网络支持环境i i 图1 - 3 r p c 调用过程 图中,x d r ( e x l e m a l d 砒a r e p r 髂c n 嘣i o n 外部数据表示标准) 负责将面向特定 机器的数据表示和网络标准数据表示作相互转换。s t u b 在其中起到联系客户方与 服务器的关键作用【1 。 远程过程调用r p c 所提供的是基于过程的服务访问,c h e n t 与s e r v e r 进行直接 连接,没有中间机构来处理请求,因此也具有一定的局限性i l ”,比如,r p c 通常 需要一些网络细节以定位s e e e 在a i t 发出请求的同时。要求s e r v e r 必须是活动 的等等。虽然有些恢复机制可以在一个远程调用阻塞时转而去调用另一个服务器 上的过程,但这种路由方式会影响效率。也有的r p c 机制采用异步调用。客户方 非阻塞地调用远端的过程,但这种方式不标准而且很难采用。因此r p c 适合开发 小型简单的请求,应答模式的应用。 1 4 2 网络应用程序编程接口 网络应用程序编程接口是利用网络协议提供的功能进行应用程序开发, s o c 砌玎机制是最具有代表性的编程接口1 1 4 l 。网络a p l 最重要的特点是提供了通 用、灵活的开发工具,应用程序可以通过各种工具来开发,只要使用通用的网络 a p l ,就可以屏蔽不同的操作系统和网络协议。 虽然网络a p l 支持同步通信和异步通信,但它没有提供编码数据设备以使多 个平台上不同数据表示的应用程序可以理解这些数据这样用户还必须为打包和 1 0 浙江大学硕士研究生毕业论文 传送请求以及解包和把请求传递例程而编写代码,可能还需要大量的缓冲区操 作,而且必须注意不同平台的细小区别。所以网络a p i 的编程方式相对复杂,需 要程序开发人员对网络底层通信机制比较了解。 1 4 3 分布式对象技术 随着对象技术与分布式技术的发展,两者相互结合形成了分布式对象的概 念。分布式对象技术把分布环境中的计算实体以及所有应用程序都看成是对象及 其相关操作的集合,并用面向对象的技术对计算实体进行了封装。相对于传统的 面向过程的分布计算模型,分布式对象技术更加抽象,可以使开发人员工作在更 高层次上l ”“。 当前国际上分布对象技术最具有代表性的是: 1 ) 对象管理集o m o ( o b j e c t m a g 廿n e n t g m u p ) 提出的公共对象请求代理体 系结构c o r b 蜘m m o b i e c t r c q u e s t b l o k e r a r c h i t e c t 町e ) 旧 2 ) m i 甜o s 曲的分布式组件对象模型d c 岬i s 仃i l m t c dc o 咖o n0 b j e d m o d e n 【i 8 l 3 ) s 吼公司的j a v a 远程方法调用j a v a r m i o a v a r 锄o t e m c m o d h l v o c a t i o l l l 【1 9 1 下面选择c o l 喇行具体介绍。c o 船蚺标准主要分为3 个层次:对象请求代 理、公共对象服务和公共设施。c 0 r b a 的结构体系框架如图l - 4 : 南南新掣弛 i对象请求代理( o r b ) 辕心 l接口库实现库 图1 - 4c 0 r b a 结构体系框架 对象请求代理( o r b ) 是建立对象之间c l i e n 幅e r v c r 关系的中间件。o r b 使得对 象可以透明地向其它对象发出请求或接收其它对象的响应,这些对象可以位于本 地也可以位于远程机器。o r b 拦截请求调用。并负责找到可以实现请求的对象、 传送参数、调用相应的方法、返回结果等。c u e n t 对象并不知道同s e r r 对象通讯、 激活和存储s e r v 对象的机制,也不必知道s e f v c f 对象位于何处、它是用何种语 浙江大学硕士研究生毕业论文 言实现的、使用什么操作系统或其它不属于对象接口的系统成分【2 1 】【2 2 】。 现有的c o r b a 技术仍然存在下列缺陷: c 0 r b a 本质上仍然是传统的c l i e n 媚e r v e r 结构,它并没有提供一种机制 使得c l i c n t 可以同时调用多个服务器,启动多个服务。 现有的c o r b a 技术犯2 版本以前) 缺乏真正的异步调用模式,不完全支持 异步消息。标准的0 0 r b a 对象方法调用模型仅支持两种调用方式:同步 ( s y 玎c h i o n o u s ) 和延迟同步( d c f c r r c ds y n c 1 1 0 u s ) 。 c o r b a 技术缺乏实时机制,对大数据量的信息流式应用支持率低。o r b 代理的引入,客户机对服务器的每一次请求都要经由o r b 操作,所以 c 0 r 】执规范比r p c 的执行效率本质上更低。c o r b a 不适合需要持久连 接的实时通信环境,也不适合持久的信息传递。 1 4 4 消息中间件( m o m ) 技术 利用网络a p i 编程可能会使得上层应用程序过多的考虑网络通信,减弱对具 体的应用逻辑的关注。为了更好的构造分布计算应用,利用消息中问件( m o m ) 来实现网络通信对上层应用程序的透明性,该方法既可以满足实际应用中的性能 需求,也使得应用程序更关注于应用逻辑的实现瞄】f 2 4 】。 越来越多的分布式应用采用消息中间件来构建,基于消息的机制更多地适用 于事件驱动的应用,当一个事件发生时,消息中间件通知服务方应该进行何种操 作。使用消息中间件编程采用的是消息中间件的a p i ,可以很好地扩展到不同的 操作系统和硬件平台上。消息中间件的核心安装在需要进行消息传递的系统上, 在它们之间建立逻辑通道,由消息中间件实现消息发送。消息中间件可以既支持 同步方式,又支持异步方式,实际上它是一种点到点的机制,因而可以很好地适 用于面向对象的编程方式【峦l 。 分布式对象技术都采用了紧密耦合的同步模型机制。这些技术都基于二进制 通讯协议,并采用了跨逻辑层的紧密集成,从而带来可伸缩性问题。m o m ( 面 向消息的中间件) 则是基于松耦合的异步通信模型客户端无需知道应用程序的 接受方式或其他方法参数。m o m 使应用程序可以使用消息队列闯接进行通信。 客户应用程序将消息发送给消息队列,而接收应用程序则从消息队列中获取消 息。在这种模型中,向另一个应用程序发送消息不必等待目标应用程序返回响应 而继续运行。因此消息中间件通信可以实现多平台系统环境下分布式应用程序的 集成。 浙江大学硕士研究生毕业论文 1 5 论文组织 论文共分五章,内容安排如下: 第一章概略介绍了课题背景和来源,国内外期货交易系统平台,分布式系统 的体系结构和构建分布式系统的主要技术。 第二章先介绍了分布式系统在期货交易应用中的可行性,接着对现有期货交 易平台进行了分析,最后基于多层分布式体系,提出了具有高性能高可靠性的 s 、师f 2 5 代期货交易系统平台架构。 第三章对g w p f 2 5 代期货交易系统平台的几个重要组件详细介绍,消息中问 件( m o m ) 和内存数据库( m o m ) 组件的引入更加提高了g w 口f 2 5 代期货交易 系统平台的性能。 第四章介绍了s w 口f 2 5 代期货交易平台的高可用性,主要介绍其数据同步和 备份以及故障时切换的机制。 第五章是总结。 1 。6 小结 本章先介绍了课题背景和来源,并分析了国内外期货交易平台的现状,然后 分析了两层和多层分布式体系结构的优缺点,最后比较了构建分布式系统的主要 技术,在下章提出的s w p f 2 5 代期货交易平台中将用到其中的消息中间件( m o m ) 技术。 浙江大学硕士研究生毕业论文 2s w p 纪5 代期货交易平台的构建 2 1 分布式系统在期货交易中应用可行性 2 1 1 交易系统的设计原则 高可靠性 系统必须具有很高的可靠性:交易过程要求系统连续无故障,如果 在交易中出现单点故障应自动排除故障,不影响到交易系统的运行;系 统遭遇故障不得不异常停止运行后,应能恢复到最后状态;系统要具有 在线式备份和恢复能力,并有应急处理、故障恢复功能;在条件具备的 情况下,建立异地灾各系统,防止不可预见的大的灾难。 高性能 期货交易系统对报价的实时性要求很高,客观上要求系统具有在大 规模并发的会员报价下快速处理的能力。在交易达到峰值时,系统的响 应速度仍应当在一个合理的、会员能够接收的范围内。期贷交易系统在 处理效率、并发调度等发面都有其独特的要求。 在系统平台方面,要求系统有极高的吞吐量、强大的实时任务处理 能力和最短的反应时间以提高交易率,所以要求系统软件、数据库平台、 操作系统等提供相应的支持。 数据吞吐量大 由于交易系统中同时有数百个用户同时运行,而且有可能瞬时成交 十分密集,数据吞吐量大小直接影响到整个系统的性能,所以设计的系 统应考虑交易极端情况。 可伸缩可扩充性强 由于业务不断扩展,交易品种不断增多,交易量不断扩大,系统必 须具有良好的伸缩性。系统在软件体系结构不变的情况下,通过对硬件 配置的扩展达到提高系统性能的作用。系统设计应尽可能灵活,保证以 后的扩展。 发展的平滑性 1 4 浙江大学硕士研究生毕业论文 系统的设计要符合交易所的中、长期规划,同时要结合现有的设备 情况,保护原有投资,实现平稳过渡。 2 1 2 分布式系统的特性 分布式系统支持资源共享,开放性,并发性。可伸缩性,容错性和透明性。 分布式以一种很自然的方式开始存在,例如。在我们社会中,人群在地理上是分 布式的并且分布式地共享信息。分布式系统的以下特性很好满足了期货交易系统 的设计需求: 高性能 分布式系统的并行性减少了处理瓶颈,全方位提高了性能,分布式系统提供 了更好的性价比。 资源共享 分布式系统能有效地支持不同地方用户对信息和资源的共享。 灵活性和可扩展性 分布式系统可以增量扩展,弗能方便地修改或扩展系统以适应变化的环境而 无需中断其运行。 高可用性 系统的可用性是系统可用时间比例的尺度。当分布式系统中的一个组件出现 故障时,仅使用受损组件的那部分工作受到影响。如果用户正在使用的计算机出 现故障,用户可以移到另一台计算机上,服务器进程能在另一台计算机上启动。 可伸缩性 分布式系统容易扩大规模以包括更多的资源( 硬件和软件) 。 2 2 现有期货交易平台分析 第一章已经提到了业界公认的四个期货交易平台:德国的e u r e x ,) 疆t r , 瑞典的o m 平台、法国的e 啪n e x tn s c 平台和伦敦的u 睡c ( 岫e c t ,下面将对 这四个系统进行详细的介绍。 德国的e u r e 列) d r a 系统功能全面而庞大在设计系统的体系结构时采 用硬件( 包括主机、通讯服务器和会员服务器) 冗余、通讯线路冗余的方法来保 证系统的可靠性,整个系统的可靠性比其他系统高,但提高了成本,交易所和会 1 5 浙江大学硕士研究生毕业论文 员的投资也比较大。 e u r e x 系统是一个4 层的客户服务器体系,从上到下依次为: 交易主机( b a c k e n d ) 通讯服务器( c 0 l i l m u n i c a t i o ns e “) 会员服务器( m e m b e rh n e 擘a t e ds y s t e ms e r v e r ) 会员交易和管理终端( w b r l 【s t a t i o i 嘏a c e l l i t e ) 交易主机( b a c ke i l d ) 是e u r 系统最主要的部分,它选用d i g i t a la l p l i a s e r v e r 舳p e n v m s ,主机之问通过磁盘阵列来保证主机系统的可靠性。交易所在欧 洲、美洲和亚洲设置了几十个访问点( a c c e s sp 0 i n t ) ,每个访问点至少有两根 2 5 6 k b p s 数据专线和交易所联结。在交易所和访问点都安装了通讯服务器( c s ) , 通过c s 和交易b a c k e n d 进行通讯。c s 也是d 酒t a la l p hs e r v e r ,运行o p c n v m s 操作系统。会员服务器( m i s s ) 安装在会员的办公室,通过两条6 4 k b p s 数据专 线和交易所或访问点的c s 连接,其硬件平台有s u n s o l a i i s 、h i t c 胁d o w sn t 和i b mr s 6 0 0 0 恤。工作站可以是w j n d o w sn t 和s 明s o l a d s 工作站。 b a c ke n d 和c s 之间使用d 】3 铡e t 网络协议相互通讯,c s 与m i s s 、m i s s 与s 协i o n 之问使用t ,口通讯。c s 将网络协议隔断,起到一部分防火墙的功 能。 e u r e x 和煳r a 的原型来自l b l s 交易系统( 法兰克福的一个电予拍卖市 场使用的系统) ,特别是主机部分,所以也继承了使用o p e n “s 操作系统的传 统,主机系统中有大量涉及操作系统可靠性、通讯和安全的中间件都使用 o 口蚰s 提供的服务,因此e u r e ) 【系统不太可能移植到u n i x 平台上。 2 2 2 0 m o m 提供了功能基本一致的两个交易系统:a i 矗e x c h a n g es y s t e m 和 s a ) a 强s 。s a 强s 系统是o m 慨h n o l o g y 的最新产品,1 9 9 9 年3 月1 2 日首次 在o m s t o c k h o l me x c h g e 使用,替换e x 曲踯g c 系统。 s a s s 系统功能实用,具有高可靠性和高性能。s a ) a e s s 系统设计了一个 基于p o s ( p 0 f t a b i e0 p c m t i s y s t e mh l t e f f a c c ,可移植操作系统接口) 标准的 软件抽象层,如果需要移植到其他硬件平台,只要兼容该软件抽象层就可以很快 完成,否则,必须修改软件抽象层。有了软件抽象层,s a ( e s s 可以很容易地运 行在大部分u i x 平台上,对s a s s 的产品化有很大帮助。 s a = 匝s s 系统的结构如图2 1 所示: 1 6 浙江大学硕士研究生毕业论文 图2 1 s a 三s s 系统架构 它包括前端子系统( f m t c d ) 、中心数据发送子系统( s c c n t r a l d i s s e m i n a t i o ns e r v e f ) 和后端子系统( b a c k e n d ) 。f r o n t e d 负责转发会员的服务请 求给b a c k e n d ,回复b a c k e n d 的处理结果,为了保证系统的效率和可靠性,安装 了多台f m n t c d ,每个会员可以保持和两台f 1 0 l l t e d 的连接。c d s 负责向会员发 送市场数据和会员的成交数据,市场数据包括交易实时行情和交易系统目前的交 易状态。由于其他会员可能分布在斯德哥尔摩、伦敦和哥本哈根,因此这三个地 方都安装了f m n t e d 和c d s 以减少数据德传输量,方便会员的接入。f f o n t e d 和 c d s 相配合,相当于e i j r e x 的前置机( c o n 蛐蛐i c a d 衄s e f v e r 。c s ) 。为了保证 交易系统后端子系统( 主机部分) 的可靠性,采用了两套相同的系统和程序。一 套作为主控制器,另一套作为从控制器。主控制器发生故障后,会员服务器和 f 如l t e d 配合,在1 0 秒种内自动转到从控制器交易。 为了保证系统的运行速度所有数据均放在内存巾。s a 强s 系统使用了和 商用数据库系统类似的事务处理机制,会员的每笔报单请求在撮台前和撮合后都 写入交易日志文件,该主从控制器的交易日志分别位于磁盘陈列不同的地方。交 易日志一方面可以保存当天的交易情况,不会像内存数据随着系统的故障而丢 失;另一方面可队回放当天的交易情况,如发生软件故障,事后可以用专用软件 来跟踪定位。 1 7 浙江人学硕士研究生毕业论文 系统做了大量的优化工作来提高系统的响应速度和处理能力 将经常使用的部件做最大的优化。 尽量使用内存缓冲技术,减少磁盘帕操作。 使用多c p u 和多线程技术。 并行处理不关联的操作。 2 2 3e u m i 他x t e u m n e x tn s c 系统的会员端的结构和s a ) 匝s s 基本类似,但交易主机使用 c o m p a q ,r a n d e m 的容错计算机。 e u t 0 n e x tn s c 的系统架构如图2 2 所示: 图2 - 2 b u 帕艉x i n s c 系统架构 交易系统架构采用了4 层开放式架构,从底层的开放a p i 到交易中心,都 采用了开放式架构。特别是交易前端,根据会员的使用情况,提供了多种解决方 案。如上图所示,h u b 是a t o s e u f o n “t 开发的消息中间件,它的特性如下: 平台:t h 6 4 、a 、h p u x :具有可靠性和高性能特点。 高可靠性;基于集群;应用恢复时间约6 0 s ;可以实现灾难恢复。 高性能:平均每秒处理1 0 0 0 个消息,峰值每秒1 0 0 0 0 个消息。 1 8 浙江大学硕士研究生毕业论立 n s c 是交易核心系统,其特性如f : 数据完整性: 夺确保没有任何订单丢失和重复订单 夺容错,所有的事务通过n o n s t o d 内部的事务管理工具( 1 h n s a d j o n m n a g e m m tf a d l j t y ) 保证 夺通过影子进程( s h a d o wp m c e s s e s ) 保护上下文相关的订单处理进 程( 0 讧) 的可靠性。 可用性: n s c 将咀- s t o p 的高可用性( 9 9 9 9 9 ) 充分利用起来 夺远程复制工具( r c m o t cd u p l i c a t i o nf 缸i l i t y ) 将全部交易实时复制 到远程数据库 性能和扩展性: 夺通过将订单处理进程、消息管理进程以及相关的数据库更新进程 分离来实现并行处理 夺性能测试: 1 3 8 0 0 叫e 瞒e c o n d ( 所有合约) ,9 5 的时间内订单 响应时间小于1 秒 2 2 4l i kc 咖e c t 位c o e c l 系统是一个具有高执行速度和灵活性的电子交易系统,它由伦 敦国际金融期货期权交易所( u f f e ) 设计和开发。该系统具有以下八个特性 适用于大容量的复杂品种的交易 支持多种交易规则 支持多种价格算法 发布实时市场行情信息 开放的架构和前后端一体化的a p l 接口 使用了自动行情系统,可以用工业上的标准模式为选择的合约产生最新 指导价 订单流可人工动态干预 无需再设计,考虑到未来市场发展的可平滑升级的系统 1 9 浙江大学硕士研究生毕业论文 2 。3s w p 住5 代期货交易平台架构的提出 2 3 1 提出和目的 交易系统最主要的两个特性是高性能和高可用性。从2 2 节可以看出,现有 的期货交易系统都采用了多层的客户机朋务器结构,在硬件上尽量采用高端服 务器和服务器冗余来来保证其性能和可靠性,在一个发生服务器故障的时候交 易业务自动转到备份服务器上来。同时,尽量使用内存缓冲技术,提高交易性能。 同时也可以看出,现在的期货交易系统的后端服务大都集中在单一的交易主 机上,尽管采用了高性能的服务器,其存储和计算能力毕竟有限。改进的方法是 把后端服务分配到多台交易服务器上,并且在服务器之间实现一定的备份来保证 可靠性。 依据这一想法和精诚公司未来对交易系统的开发需求,将通讯、数据处理与 交易处理逻辑区分,架构一个兼具处理效能与开发弹性多层分布式交易系统平 台,使精诚未来能在此交易系统平台上开发出更快速、稳定、具竞争优势的交易 管理系统。 2 3 2 硬件架构 s w d f2 5 代期货交易系统平台的硬件架构如图厶3 所示,展示了典型的使用 分布式体系结构的应用架构。 本系统使用多台应用服务器( a p s e “c r ) 达到负载均衡以及成长扩充的需求。 在同一区域中心的a ps e e r 只处理自身资料存储设备内的资料,但s l a v ea p s e r v c r 需要将修改的资料同步到m a s t e ra ps e e h 而在不同区域中心的m a s t e f a ps e r v e r 进行实时同步以达到异地备份的功能。c u t 端与s e r v e r 端通过1 1 c p 评 协议连接。 访问服务器( a o c e s ss e r v c r ) 负责整个系统使用者的登陆控制管理。以及使 用者的a ps e r v e r 分配,同时监控整个系统的所有资源与进程的使用情况。 m n o r a i t 通过连接a e s e f v h 来对系统a p s e r v 目进行集中式的管理控制 和监控整个系统的运行。 当客户端登陆时,先连接到a 。c e s s s e r v a ,a c c e s e r v c r 通过一定的调度策 略将让客户转连到某一台实际a ps e r v “上进行交易处理,并由a ps

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论