首 页       用户登录  |  用户注册
设为首页
加入收藏
联系我们
按字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
按声母检索 A B C D E F G H J K L M N O P Q R S T W X Y Z 数字 符号
您的位置: 5VAR论文频道论文中心计算机论文计算机应用
   socket接口编程在期货交易系统中的应用      ★★★ 【字体: 】  
socket接口编程在期货交易系统中的应用
收集整理:佚名    来源:本站整理  时间:2009-01-10 11:54:22   点击数:[]    

[本篇论文由上帝论文网为您收集整理,上帝论文网http://paper.5var.com将为您整理更多优秀的免费论文,谢谢您的支持]

摘要: 本文讲述用socket接口编程的原理及使用它实现交易系统的具体方法。

关键词:socket 通信 交易

1.交易系统介绍

交易就是用户对商品的买与卖。交易系统是通过计算机系统来进行交易,也就是说,商品的买与卖都是通过计算机的网络及后台进程配对完成,交易核心采用基于内存的方式设计开发以达到最大的交易及查询响应速度。它的设计思路是:交易系统的所有数据存放在关系数据库中,但交易核心在启动后与硬盘数据不直接通信,而只是在启动时将交易所需数据一次性读入共享内存。这之后的所有交易撮合、生成委托单、交易结果都是在内存中实现的。当交易结束后,再将交易结果从内存装回硬盘数据库中,在数据库中实现交易结算、整理,产生各种帐目及统计报表,同时,再一次完成各种信息的录入与修改。

交易核心与外界的通信经由消息队列(message queue),交易核心用于交易所使用的数据存放共享内存(shared memory)中,利用socket接口编程来实现.

2.socket的设计原理及进行通信连接的过程框图

socket设计在操作系统的核心中,提供一些系统调用以支持多种通信协议(如tcp,udp等等)。当要支持一种新的通信协议时,则需要把核心做一些改变。为了免除改变核心太多而造成不便,可以采用流的模块方式来添加新的功能,但这种方式并无法完全免除更动核心的操作。实际上,核心的设计把网络系统分成三个不同的层,如下图。


socket支持3种访问传输系统的接口:其中一种就是同步阻塞方式:使用同步阻塞方式时,socket库函数暂停程序的运行,等待传输系统完成请求的操作,操作一旦完成,应用程序重新获得控制权。如下右图。

3.重要的socket系统调用

(1)创建socket- sockets()系统调用

应用程序在使用sockets之前,首先必须拥有一个sockets,系统调用sockets()向应用程序提供创建sockets的手段,其调用格式如下:

sockid = socket (int af, int type, int protocol);

(2)指定本地地址-bind()系统调用

在创建了一个新的socket号后,还要用bind()将本地socket地址(包括主机地址和本地端口号)与所创建的socket号联系起来,其调用格式如下:

bind (socket sockid, const struct sockaddr far* name, int namelen);

(3)listen()系统调用

该调用用于面向连接的流socket,表明它愿意接收连接请求。当服务器可能同时收到几个连接请求时,便将连接请求放入请求队列。listen()在accept()之前调用,其格式为:

listen(socket sockid, int backlog);

(4)建立socket 连接connect()与accept()系统调用

用于完成整个关联的建立。connect()的调用格式如下:

connect (socket sockid, const struct sickaddr far*name, int namelen);

(5)发送数据send()和sendto()系统调用

建立了socket连接后,便可利用上述函数通过该socket发送数据。其中send()用于面向连接的传输,sendto()用于无连接传输,调用格式如下:

send (socket sockid, char faar* buf, intbuflen, int flags);

sendto(socket sockid, const char far* buf, int len, int flags, const struct sockaddr far* to, int tolen);

(6)接收数据—recv()和recvfrom()系统调用接收数据系统调用与发送数据系统调用是一对应的,其调用格式也是一一对应。

(7)关闭socket—closesocket()系统调用

在完成数据传输任务后,需要调用closesocket()来关闭连接和释放socket,其调用格式如下:

closesocket(socket sockid);


Tags:


文章转载请注明来源于:5VAR论文频道 http://paper.5var.com。本站内容整理自互联网,如有问题或合作请Email至:support@5var.com
或联系QQ37750965
提供人:佚名
  • 上一篇文章:Windows NT中的登记项及其完整性

  • 下一篇文章:图形化开发平台在虚拟仪器中的应用
  • 返回上一页】【打 印】【关闭窗口
    中查找“socket接口编程在期货交易系统中的应用”更多相关内容 5VAR论文频道
    中查找“socket接口编程在期货交易系统中的应用”更多相关内容 5VAR论文频道
    最新热点 最新推荐 相关新闻
  • ››Delphi 5 数据库应用中ODBC数据源的...
  • ››用Visual Basic 6.0实现自动化测试...
  • ››用JAVA制作ICQ
  • ››在IIS 4.0上配置虚拟主机实现虚拟I...
  • ››利用VB开发CAI课件
  • ››基于GP算法的知识发现系统
  • ››基于Client/Server 的课件系统的设...
  • ››WWW对大量数据查询的一种实现
  • ››基于PHP的Web数据库访问
  • ››Developer/2000中的Forms参数及应用...
  • ››socket接口编程在期货交易系统中的...
  •   文章-网友评论:(评论内容只代表网友观点,与本站立场无关!)
    关于本站 - 网站帮助 - 广告合作 - 下载声明 - 网站地图
    Copyright © 2006-2033 5Var.Com. All Rights Reserved .