类似推荐
编辑推荐
帮你理解Socket编程的必备知识,迅速掌握编写服务器、客户端库以及开发网络程序技能。
内容简介
本书通过循序渐进的方式,从最基础的概念到高级别的Ruby封装器,再到更复杂的应用,提供了开发成熟且功能强大的应用程序所必备的知识和技巧,帮助读者掌握在Ruby语言环境下,用套接字实现项目开发的任务和技术。
作者简介
作者Jesse Storimer,高级软件工程师与自出版作家,服务于美国电子商务方案提供商Shopify。痴迷于编程,编程之余喜欢阅读、园艺以及徒步旅行等户外运动。除了经常写技术博客文章外,他还著有Working with TCP Sockets, Working with Ruby Threads两本颇有影响力的电子书。
章节目录
版权信息
前言
我的故事
本书的读者对象
本书的内容
Berkeley套接字API
本书没有讲述的内容
netcat
致谢
第1章 建立套接字
1.1 Ruby的套接字库
1.2 创建首个套接字
1.3 什么是端点
1.4 环回地址
1.5 IPv6
1.6 端口
1.7 创建第二个套接字
1.8 文档
1.9 本章涉及的系统调用
第2章 建立连接
第3章 服务器生命周期
3.1 服务器绑定
3.1.1 该绑定到哪个端口
3.1.2 该绑定到哪个地址
3.2 服务器侦听
3.2.1 侦听队列
3.2.2 侦听队列的长度
3.3 接受连接
3.3.1 以阻塞方式接受连接
3.3.2 accept调用返回一个数组
3.3.3 连接类
3.3.4 文件描述符
3.3.5 连接地址
3.3.6 accept循环
3.4 关闭服务器
3.4.1 退出时关闭
3.4.2 不同的关闭方式
3.5 Ruby包装器
3.5.1 服务器创建
3.5.2 连接处理
3.5.3 合而为一
3.6 本章涉及的系统调用
第4章 客户端生命周期
4.1 客户端绑定
4.2 客户端连接
连接故障
4.3 Ruby包装器
客户端创建
4.4 本章涉及的系统调用
第5章 交换数据
流
第6章 套接字读操作
6.1 简单的读操作
6.2 没那么简单
6.3 读取长度
6.4 阻塞的本质
6.5 EOF事件
6.6 部分读取
6.7 本章涉及的系统调用
第7章 套接字写操作
本章涉及的系统调用
第8章 缓冲
8.1 写缓冲
8.2 该写入多少数据
8.3 读缓冲
8.4 该读取多少数据
第9章 第一个客户端/服务器
9.1 服务器
9.2 客户端
9.3 投入运行
9.4 分析
第10章 套接字选项
10.1 SO_TYPE
10.2 SO_REUSE_ADDR
10.3 本章涉及的系统调用
第11章 非阻塞式IO
11.1 非阻塞式读操作
11.2 非阻塞式写操作
11.3 非拥塞式接收
11.4 非拥塞式连接
第12章 连接复用
12.1 select(2)
12.2 读/写之外的事件
12.2.1 EOF
12.2.2 accept
12.2.3 connect
12.3 高性能复用
第13章 Nagle算法
第14章 消息划分
14.1 使用新行
14.2 使用内容长度
第15章 超时
15.1 不可用的选项
15.2 IO.select
15.3 接受超时
15.4 连接超时
第16章 DNS查询
MRI和GIL
resolv
第17章 SSL套接字
第18章 紧急数据
18.1 发送紧急数据
18.2 接受紧急数据
18.3 局限
18.4 紧急数据和IO.select
18.5 SO_OOBINLINE选项
第19章 网络架构模式
实现思路
第20章 串行化
20.1 讲解
20.2 实现
20.3 思考
第21章 单连接进程
21.1 讲解
21.2 实现
21.3 思考
21.4 案例
第22章 单连接线程
22.1 讲解
22.2 实现
22.3 思考
22.4 案例
第23章 Preforking
23.1 讲解
23.2 实现
23.3 思考
23.4 案例
第24章 线程池
24.1 讲解
24.2 实现
24.3 思考
24.4 案例
第25章 事件驱动
25.1 讲解
25.2 实现
25.3 思考
25.4 案例
第26章 混合模式
26.1 nginx
26.2 Puma
26.3 EventMachine
第27章 结语
TCPSockets编程是2013年由人民邮电出版社·图灵出品出版,作者[加] Jesse Storimer。
得书感谢您对《TCPSockets编程》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。