万本电子书0元读

万本电子书0元读

顶部广告

C++服务器开发精髓电子书

暂无

售       价:¥

纸质售价:¥126.00购买纸书

325人正在读 | 0人评论 6.2

作       者:张远龙

出  版  社:电子工业出版社

出版时间:2021-06-01

字       数:27.1万

所属分类: 科技 > 计算机/网络 > 程序设计

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
本书从操作系统原理角度讲解行C 服务器发所需掌握的技术栈。全书总计9章,第1~2章讲解C 11/14/17新标准中的常用特性、新增类库,以及C 发者必须熟练掌握的发调试工具;第3~6章详细讲解C 服务器发中的多线程编程技术、网络编程重难知识、网络故障调试与排查常用工具,以及通信协议的设计思路、技巧;第7~8章详细讲解一个带网络通信组件的高性能服务的基本设计思路和注意事项;第9章一步补充服务相关的常用模块设计思路和方法。本书秉承的思想是,通过掌握技术原理,可以轻松制造“轮子”,灵活设计出优雅、鲁棒的服务,并快速学习新技术。无论是对于C/C 发者、计算机专业的学生,还是对于想了解操作系统原理的读者,本书都极具参考价值。<br/>【作者】<br/>本人有一个千人的技术QQ群,群成员为C 服务器发相关学习者及同行;另外是技术公众号【高性能服务器发】的维护者,目前粉丝8000左右。另有CSDN博客、个人站也可用于宣传。<br/>
目录展开

内容简介

前言

第1章 C++必知必会

1.1 C++RAII惯用法

1.2 pimpl惯用法

1.3 C++11/14/17新增的实用特性

1.4 统一的类成员初始化语法与std::initializer_list<T>

1.5 C++17注解标签(attributes)

1.6 final、override关键字和=default、=delete语法

1.7 auto关键字的用法

1.8 Range-based循环语法

1.9 C++17结构化绑定

1.10 stl容器新增的实用方法

1.11 stl中的智能指针类详解

第2章 C++后端开发必备的工具和调试知识

2.1 SSH工具与FTP工具

2.2 makefile与CMake

2.3 使用Visual Studio管理和阅读开源项目代码

2.4 gdb调试

2.5 gdb常用命令详解——利用gdb调试Redis

2.6 使用gdb调试多线程程序

2.7 使用gdb调试多进程程序——以调试Nginx为例

2.8 gdb实用调试技巧

2.9 gdb tui——gdb图形化界面

2.10 gdb的升级版——cgdb

2.11 使用VisualGDB调试

第3章 多线程编程与资源同步

3.1 线程的基本概念及常见问题

3.2 线程的基本操作

3.3 惯用法:将C++类对象实例指针作为线程函数的参数

3.4 整型变量的原子操作

3.5 Linux线程同步对象

3.6 Windows线程同步对象

3.7 C++11/14/17线程同步对象

3.8 如何确保创建的线程一定能运行

3.9 多线程使用锁经验总结

3.10 线程局部存储

3.11 C库的非线程安全函数

3.12 线程池与队列系统的设计

3.13 纤程(Fiber)与协程(Routine)

第4章 网络编程重难点解析

4.1 学习网络编程时应该掌握的socket函数

4.2 TCP网络通信的基本流程

4.3 设计跨平台网络通信库时的一些socket函数用法

4.4 bind函数重难点分析

4.5 select函数的用法和原理

4.6 socket的阻塞模式和非阻塞模式

4.7 发送0字节数据的效果

4.8 connect函数在阻塞和非阻塞模式下的行为

4.9 连接时顺便接收第1组数据

4.10 如何获取当前socket对应的接收缓冲区中的可读数据量

4.11 Linux EINTR错误码

4.12 Linux SIGPIPE信号

4.13 Linux poll函数的用法

4.14 Linux epoll模型

4.15 高效的readv和writev函数

4.16 主机字节序和网络字节序

4.17 域名解析API介绍

第5章 网络通信故障排查常用命令

5.1 ifconfig命令

5.2 ping命令

5.3 telnet命令

5.4 netstat命令

5.5 lsof命令

5.6 nc命令

5.7 curl命令

5.8 tcpdump命令

第6章 网络通信协议设计

6.1 理解TCP

6.2 如何解决粘包问题

6.3 解包与处理

6.4 从struct到TLV

6.5 整型数值的压缩

6.6 设计通信协议时的注意事项

6.7 包分片

6.8 XML与JSON格式的协议

6.9 一个自定义协议示例

6.10 理解HTTP

6.11 SMTP、POP3与邮件客户端

6.12 WebSocket协议

第7章 单个服务的基本结构

7.1 网络通信组件的效率问题

7.2 原始的服务器结构

7.3 一个连接对应一个线程模型

7.4 Reactor模式

7.5 one thread one loop思想

7.6 收发数据的正确做法

7.7 发送、接收缓冲区的设计要点

7.8 网络库的分层设计

7.9 后端服务中的定时器设计

7.10 处理业务数据时是否一定要单独开线程

7.11 非侵入式结构与侵入式结构

7.12 带有网络通信模块的服务器的经典结构

第8章 Redis网络通信模块源码分析

8.1 调试Redis环境与准备

8.2 探究redis-server端的网络通信模块

8.3 探究redis-cli端的网络通信模型

8.4 Redis的通信协议格式

第9章 服务器开发中的常用模块设计

9.1 断线自动重连的应用场景和逻辑设计

9.2 保活机制与心跳包

9.3 日志模块的设计

9.4 错误码系统的设计

9.5 监控端口

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部