高性能并发网络服务器设计与实现.ppt
《高性能并发网络服务器设计与实现.ppt》由会员分享,可在线阅读,更多相关《高性能并发网络服务器设计与实现.ppt(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、高性能并发网络服务器设计与实现网络服务器开发p协议设计(网络协议和应用协议)n语法(报文格式)n语义(指令的处理,交互时序等)n只要涉及到交互(即使不是网络交互),就需要协议p网络实现(IO)n网络开发的基础是socketn任何对网络的封装,在三度关系之内必然是socket(最多三层封装)第一节 网络IOTalk is cheap,show me the codeserv=new TcpSocket();serv.listen();sock=serv.accept();sock.read(buf);sock.write(buf);sock.close()p 一次服务p 没有并发p 短连接p 有
2、没有协议?p最简单的TCP服务器重复服务socket IOpread/write是可阻塞的p阻塞是并发和高性能的死敌p实现并发和高性能的途径就是解阻塞p太简单了!p后面继续讲解read/write.并发服务优缺点p优点:n简单易用,一般工作得很好n多线程,可以利用CPU多核p缺点:n启动线程也有成本,很可能占大头n线程的数量不受控制,危险!p问题在于IO.IO多路复用p专业地解决一个问题pselect/poll/epoll/kqueue的API几乎一样,实现不同,性能不同pIO多路复用接口的作用,就是测试accept/read/write等IO调用会不会阻塞IO多路复用示例serv=new T
3、cpSocket();serv.listen();select.add(serv,READ);/READ 表示只测试可读(读不阻塞)while(1)readable,writable=select.wait();foreach(readable as sock)if(sock=serv)sock=serv.accept();select.add(sock,READ);else sock.read(buf);sock.write(buf);sock.close();/writable 为空,因为我们不测试可写还不完善第二节 报文解析报文设计p最重要的TCP协议是流式协议,但几乎所有的应用协议都是
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 性能 并发 网络 服务器 设计 实现
限制150内