socket接口编程在期货交易系统中的应用

socket接口编程在期货交易系统中的应用

ID:27608900

大小:52.00 KB

页数:4页

时间:2018-12-05

socket接口编程在期货交易系统中的应用  _第1页
socket接口编程在期货交易系统中的应用  _第2页
socket接口编程在期货交易系统中的应用  _第3页
socket接口编程在期货交易系统中的应用  _第4页
资源描述:

《socket接口编程在期货交易系统中的应用 》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、socket接口编程在期货交易系统中的应用摘要:本文讲述用socket接口编程的原理及使用它实现交易系统的具体方法。关键词:socket通信交易1.交易系统介绍交易就是用户对商品的买与卖。交易系统是通过计算机系统来进行交易,也就是说,商品的买与卖都是通过计算机的网络及后台进程配对完成,交易核心采用基于内存的方式设计开发以达到最大的交易及查询响应速度。它的设计思路是:交易系统的所有数据存放在关系数据库中,但交易核心在启动后与硬盘数据不直接通信,而只是在启动时将交易所需数据一次性读入共享内存。这之后的所有交易撮合、生成委托单、交易结果都是在内存中

2、实现的。当交易结束后,再将交易结果从内存装回硬盘数据库中,在数据库中实现交易结算、整理,产生各种帐目及统计报表,同时,再一次完成各种信息的录入与修改。交易核心与外界的通信经由消息队列(messagequeue),交易核心用于交易所使用的数据存放共享内存(sharedmemory)中,利用socket接口编程来实现.2.socket的设计原理及进行通信连接的过程框图socket设计在操作系统的核心中,提供一些系统调用以支持多种通信协议(如tcp,udp等等)。当要支持一种新的通信协议时,则需要把核心做一些改变。为了免除改变核心太多而造成不便,可

3、以采用流的模块方式来添加新的功能,但这种方式并无法完全免除更动核心的操作。实际上,核心的设计把网络系统分成三个不同的层,如下图。socket支持3种访问传输系统的接口:其中一种就是同步阻塞方式:使用同步阻塞方式时,socket库函数暂停程序的运行,等待传输系统完成请求的操作,操作一旦完成,应用程序重新获得控制权。如下右图。3.重要的socket系统调用(1)创建socket-sockets()系统调用应用程序在使用sockets之前,首先必须拥有一个sockets,系统调用sockets()向应用程序提供创建sockets的手段,其调用格式如

4、下:sockid=socket(intaf,inttype,intprotocol);(2)指定本地地址-bind()系统调用在创建了一个新的socket号后,还要用bind()将本地socket地址(包括主机地址和本地端口号)与所创建的socket号联系起来,其调用格式如下:bind(socketsockid,conststructsockaddrfar*name,intnamelen);(3)listen()系统调用该调用用于面向连接的流socket,表明它愿意接收连接请求。当服务器可能同时收到几个连接请求时,便将连接请求放入请求队列。l

5、isten()在accept()之前调用,其格式为:listen(socketsockid,intbacklog);(4)建立socket连接connect()与accept()系统调用用于完成整个关联的建立。connect()的调用格式如下:connect(socketsockid,conststructsickaddrfar*name,intnamelen);(5)发送数据send()和sendto()系统调用建立了socket连接后,便可利用上述函数通过该socket发送数据。其中send()用于面向连接的传输,sendto()用于无连

6、接传输,调用格式如下:send(socketsockid,charfaar*buf,intbuflen,intflags);sendto(socketsockid,constcharfar*buf,intlen,intflags,conststructsockaddrfar*to,inttolen);(6)接收数据—recv()和recvfrom()系统调用接收数据系统调用与发送数据系统调用是一对应的,其调用格式也是一一对应。(7)关闭socket—closesocket()系统调用在完成数据传输任务后,需要调用closesocket()来关

7、闭连接和释放socket,其调用格式如下:closesocket(socketsockid);

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。