店铺推荐
【推荐语】
" 本书从五大服务器编程基础技术开始,逐步深入到四大项目案例进行融合开发,融合网络编程和一些数据库、跨平台界面编程知识,使得案例讲解系统完整,甚至稍微修改一下就可以上升为商用软件,比如最后一章的并发游戏服务器。

本书涵盖Linux网络编程从基础到高级开发的知识点,重点讲解了技术性较强的TCP编程、UDP编程和I/O模型编程,同时对每个知识点都从原始概念和基本原理进行详细和透彻的分析,对比较复杂和难度较高的内容绘制了几百幅原理图进行示意。书中的示例代码大多是从实际项目总结而来,具有很强的实用性。

通常网络编程书中,只会分析一个综合案例,而本书干货颇多,提供了HTTP服务器、FTP服务器、并发聊天服务器与并发游戏服务器四大综合案例,可以作为课程设计以及毕业设计的素材。"
【作者】
朱文伟,名校计算机专业统招硕士,20年C\C++、Java开发经验。主导开发过密码、图形、人工智能等产品。精通Linux、Windows系统开发及数据库开发技术。著有图书《Windows C/C++加密解密实战》《密码学原理与Java实现》《Linux C与C++ 一线开发实践》《Visual C++2017从入门到精通》。
【内容】
本书较为全面地介绍了基于Linux网络编程的基础知识和编程技术,章节安排贴近企业项目需求,对基于Linux C/C++语言的多线程编程和Linux操作系统支持的网络库函数等进行讲解,由易到难,逐层递进。
本书共分12章,内容包括网络概述、网络基础概念、套接字、TCP编程、UDP编程、原始套接字编程、网络I/O模型、服务器设计,以及四大综合实践项目(HTTP服务器、FTP服务器、并发聊天服务器与C/S和P2P联合架构的并发游戏服务器),通过项目练习帮助读者巩固所学的编程技术。
本书适合具有Linux C/C++编程基础、需要掌握Linux服务器编程的开发人员阅读,也适合高等院校和培训学校计算机软件开发相关专业的师生作为参考用书。
【目录】
第1章 TCP/IP基础
1.1 TCP/IP协议的分层结构
1.2 应用层
1.2.1 DNS
1.2.2 端口
1.3 传输层
1.3.1 TCP协议
1.3.2 UDP协议
1.4 网络层
1.4.1 IP协议
1.4.2 ARP协议
1.4.3 RARP协议
1.4.4 ICMP协议
1.5 数据链路层
1.5.1 数据链路层的基本概念
1.5.2 数据链路层主要功能
第2章 搭建Linux开发环境
2.1 准备虚拟机环境
2.1.1 在VMware下安装Linux
2.1.2 开启root账户
2.1.3 关闭防火墙
2.1.4 安装网络工具包
2.1.5 启用SSH
2.1.6 拍摄快照
2.1.7 连接虚拟机Linux
2.1.8 和虚拟机互传文件
2.2 搭建Linux下C/C++开发环境
2.3 搭建Windows下Linux C/C++开发环境
2.3.1 Windows下非集成式的Linux C/C++开发环境
2.3.2 Windows下集成式的Linux C/C++开发环境
第3章 多线程基本编程
3.1 使用多线程的好处
3.2 多线程编程的基本概念
3.2.1 操作系统和多线程
3.2.2 线程的基本概念
3.2.3 线程的状态
3.2.4 线程函数
3.2.5 线程标识
3.2.6 C++多线程开发的两种方式
3.3 利用POSIX多线程API函数进行多线程开发
3.3.1 线程的创建
3.3.2 线程的属性
3.3.3 线程的结束
3.3.4 线程退出时的清理机会
3.4 C++11中的线程类
3.4.1 线程的创建
3.4.2 线程的标识符
3.4.3 当前线程this_thread
3.5 线程同步
3.5.1 同步的基本概念
3.5.2 临界资源和临界区
3.6 基于POSIX进行线程同步
3.6.1 互斥锁
3.6.2 读写锁
3.6.3 条件变量
3.7 C++11/14中的线程同步
3.7.1 基本互斥锁std::mutex
3.7.2 定时互斥锁std::time_mutex
3.8 线程池
3.8.1 线程池的定义
3.8.2 使用线程池的原因
3.8.3 基于POSIX实现线程池
3.8.4 基于C++11实现线程池
……
第4章 TCP服务器编程
第5章 UDP服务器编程
第6章 原始套接字编程
第7章 服务器模型设计
第8章 同络性能工具lperf
第9章 HTTP服务器编程
第10章 基于Libevent的FTP服务器
第11章 并发聊天服务器
第12章 C/S和P2P联合架构的游戏服务器
返回顶部