返回首页
苏宁会员
购物车 0
易付宝
手机苏宁

服务体验

店铺评分与同行业相比

用户评价:----

物流时效:----

售后服务:----

  • 服务承诺: 正品保障
  • 公司名称:
  • 所 在 地:

  • 正版新书]C++新经典 Linux C++通信架构实战王健伟9787302555292
  • 全店均为全新正版书籍,欢迎选购!新疆西藏青海(可包挂刷).港澳台及海外地区bu bao快递
    • 作者: 王健伟著 | 王健伟编 | 王健伟译 | 王健伟绘
    • 出版社: 清华大学出版社
    • 出版时间:2020-11-01
    送至
  • 由""直接销售和发货,并提供售后服务
  • 加入购物车 购买电子书
    服务

    看了又看

    商品预定流程:

    查看大图
    /
    ×

    苏宁商家

    商家:
    君凤文轩图书专营店
    联系:
    • 商品

    • 服务

    • 物流

    搜索店内商品

    商品分类

    商品参数
    • 作者: 王健伟著| 王健伟编| 王健伟译| 王健伟绘
    • 出版社:清华大学出版社
    • 出版时间:2020-11-01
    • 版次:1
    • 印次:1
    • 印刷时间:2020-11-01
    • 字数:621000
    • 页数:408
    • 开本:16开
    • ISBN:9787302555292
    • 版权提供:清华大学出版社
    • 作者:王健伟
    • 著:王健伟
    • 装帧:平装
    • 印次:1
    • 定价:99
    • ISBN:9787302555292
    • 出版社:清华大学出版社
    • 开本:16开
    • 印刷时间:2020-11-01
    • 语种:中文
    • 出版时间:2020-11-01
    • 页数:408
    • 外部编号:党庄B184320
    • 版次:1
    • 成品尺寸:暂无

    章课程介绍

    1.1本书内容详细介绍

    1.1.1内容总述

    1.1.2为什么选择Linux操作系统平台

    1.1.3讲解规划和学习建议

    1.1.4书籍推荐和读书须知

    1.2环境搭建详细介绍

    1.2.1Windows下的Visual Studio 2019安装

    1.2.2准备一个Word文档

    1.2.3Windows下的虚拟机安装

    1.2.4在虚拟机中安装Linux操作系统

    1.2.5配置固定IP地址

    1.2.6配置远程连接

    1.2.7安装编译工具gcc、g++等

    1.2.8共享一个操作目录

    第2章进入Nginx之门

    2.1Nginx简介、选择理由、安装和使用

    2.1.1Nginx简介

    2.1.2为什么选择Nginx

    2.1.3安装Nginx,搭建Web服务器

    2.1.4Nginx的启动和简单使用

    2.2Nginx整体结构、进程模型

    2.2.1Nginx的整体结构

    2.2.2Nginx进程模型细说

    第3章Nginx开发初步

    3.1学习Nginx源码前的准备工作

    3.1.1Nginx源码总述

    3.1.2Nginx源码查看工具

    3.1.3Nginx源码入口函数定位

    3.1.4创建一个自己的Linux下的C语言程序

    3.2Nginx源码学法,终端和进程的关系

    3.2.1Nginx源码学习方法

    3.2.2终端和进程的关系

    3.3信号的概念、认识、处理动作

    3.3.1信号的基本概念

    3.3.2通过kill命令认识一些信号

    3.3.3进程的状态

    3.3.4常用信号列举

    3.3.5信号处理的相关动作

    3.4UNIX/Linux体系结构、信号编程初步

    3.4.1UNIX/Linux操作系统体系结构

    3.4.2signal函数范例

    3.5信号编程进阶、sigprocmask范例

    3.5.1信号集(信号屏蔽字)

    3.5.2信号相关函数

    3.5.3sigprocmask等信号函数范例演示

    3.6fork函数详解、范例演示

    3.6.1简单认识fork函数

    3.6.2进一步认识fork函数

    3.6.3完善fork代码

    3.6.4一个和fork执行有关的逻辑判断

    3.6.5fork失败的可能原因

    3.7守护进程详解、范例演示

    3.7.1普通进程运行观察

    3.7.2守护进程基本概念

    3.7.3守护进程编写规则

    3.7.4守护进程不会收到的信号

    3.7.5守护进程和后台进程的区别

    第4章服务器程序框架初步

    4.1服务器程序目录规划、makefile编写

    4.1.1信号不错认识范例

    4.1.2服务器架构初步

    4.2读配置文件、查泄漏、设置标题实战

    4.2.1基础设施之配置文件读取

    4.2.2内存泄漏的检查工具

    4.2.3设置进程名称(标题)

    4.3日志打印实战,优化main函数调用顺序

    4.3.1基础设施之日志打印实战代码一

    4.3.2设置时区

    4.3.3基础设施之日志打印实战代码二

    4.3.4理顺main函数中代码执行顺序

    4.4信号、子进程实战,文件I/O详谈

    4.4.1信号功能实战

    4.4.2Nginx中创建worker子进程

    4.4.3日志输出重要信息讲解

    4.4.4write函数思考

    4.4.5掉电导致write写入的数据丢失破解法

    4.4.6标准I/O库

    4.5守护进程及信号处理实战

    4.5.1守护进程功能的实现

    4.5.2信号处理函数的进一步完善(避免僵尸子进程)

    第5章网络通信实战

    5.1C/S、TCP/IP妙趣横生、惟妙惟肖谈

    5.1.1客户端与服务器端

    5.1.2网络模型

    5.1.3最简单的客户端和服务器程序实现代码

    5.1.4TCP和UDP的区别

    5.2TCP三次握手详析,telnet、Wireshark示范

    5.2.1TCP连接的三次握手

    5.2.2telnet工具使用介绍

    5.2.3Wireshark监视数据包

    5.2.4TCP断开的四次挥手

    5.3TCP状态转换,TIME_WAIT详解,SO_REUSEADDR

    5.3.1TCP状态转换

    5.3.2TIME_WAIT状态

    5.3.3SO_REUSEADDR选项

    5.4listen队列剖析、阻塞与非阻塞、同步与异步

    5.4.1listen队列剖析

    5.4.2阻塞与非阻塞I/O

    5.4.3异步与同步I/O

    5.5监听端口实战、epoll介绍及原理详析

    5.5.1监听端口

    5.5.2epoll技术简介

    5.5.3epoll原理与函数介绍

    5.6通信代码精粹之epoll函数实战1

    5.6.1提醒注意

    5.6.2配置文件的修改

    5.6.3epoll函数实战

    5.7通信代码精粹之epoll函数实战2

    5.7.1ngx_epoll_process_events函数调用位置

    5.7.2ngx_epoll_process_events函数内容

    5.7.3ngx_event_accept函数内容

    5.7.4总结和测试

    5.7.5事件驱动总结

    5.7.6一道腾讯后台开发的面试题

    5.8ET、LT深释,服务器设计、粘包解决

    5.8.1ET、LT模式深入分析及测试

    5.8.2本项目的服务器设计

    5.9通信代码精粹之收包、解包实战

    5.9.1收包分析及包头结构定义

    5.9.2收包状态宏定义

    5.9.3收包实战代码

    5.9.4测试服务器收包避免推诿扯皮

    第6章服务器业务逻辑处理框架

    6.1业务逻辑之多线程、线程池实战

    6.1.1学习方法

    6.1.2多线程的提出

    6.1.3线程池实战代码

    6.1.4线程池的使用

    6.2业务逻辑之打通业务处理脉搏实战

    6.2.1线程池代码调整及补充说明

    6.2.2线程池实现具体业务之准备代码

    6.2.3threadRecvProcFunc成员函数讲解

    6.2.4整体测试工作的开展

    6.3预发包,多线程资源回收深度思考

    6.3.1业务逻辑细节写法说明

    6.3.2连接池中连接回收的深度思考

    6.3.3程序(进程)退出时线程的安全终止

    6.3.4epoll事件处理的改造

    6.3.5连接延迟回收的具体应用

    6.4LT发数据机制深释、gdb调试浅谈

    6.4.1水平触发模式(LT)下发送数据深度解释

    6.4.2gdb调试浅谈

    6.5发数据、信号量、并发、多线程综合实战

    6.5.1发送数据指导思想

    6.5.2发送数据代码实战

    6.5.3发送数据后续处理代码

    第7章画龙点睛之服务器安全与完善

    7.1过往总结、心跳包代码实战

    7.1.1前面学习的总结

    7.1.2心跳包概念

    7.1.3心跳包代码实战

    7.2控制连入数,黑客攻击防范及畸形包应对

    7.2.1控制并发连入数量

    7.2.2黑客攻击的防范

    7.2.3超时直接踢出服务器的需求

    7.3超负荷安全处理、综合压力测试

    7.3.1输出一些观察信息

    7.3.2遗漏的安全问题思考

    7.3.3压力测试前的准备工作

    7.3.4压力测试

    7.4惊群、性能优化大局观

    7.4.1CPU占比与惊群

    7.4.2性能优化大局观

    7.4.3性能优化的实施

    7.4.4配置优选允许打开的文件句柄数

    7.4.5内存池补充说明

    第8章总结与展望

    8.1遗留问题探讨增补之消息跳跃发送

    8.1.1调整ngx_write_request_handler函数的代码顺序

    8.1.2消息的跳跃发送

    8.2结束语、课程总结

    8.2.1本书概要总结

    8.2.2技术总结

    8.2.3项目的用途总结

    8.2.4学习方法总结

    8.2.5架构师之路

    8.2.6代码统计与再见

    王健伟,1995年毕业于哈尔滨工程大学计算机及应用专业,20多年软件开发经验,经历过数十个软件项目开发包括网络通信、网络安全、网络游戏等领域,多年的摸爬滚打使自身具备了极其深厚的开发实力和实战经验。中国首套网络安全在线扫描评估系统项目负责人,电子工业出版社2003年《Crystal Reports水晶报表设计与开发实务》书籍作者,优选同服独立游戏《冒险之路》制作人。

    第3章Nginx开发初步本章将讲解Linux中许多基本的概念,如信号、创建进程、创建守护进程等,以及与这些话题相关的实现代码。这些基本概念和代码片段都与后面章节的实战项目息息相关,都在为后面的实战项目打基础,所以本章内容非常重要,读者一定要学通学透。
    本章题目定为“Nginx开发初步”,是因为本书的主要目的是借鉴Nginx精华代码,搭建自己的服务器程序通信框架,所以笔者主要讲解Nginx的一些核心内容,不会全面讲解Nginx。
    3.1学习Nginx源码前的准备工作3.1.1Nginx源码总述前面已经下载了Nginx源码
    (nginx1.16.1.tar.gz文件),笔者也在Windows计算机下载了一份。这是压缩文件,笔者的Windows计算机上安装了winrar,可以解压这个.tar.gz文件(右击该文件选择“解压到nginx1.16.1\”即可),解压后可以看到nginx1.16.1文件夹(目录),所有Nginx源码文件都在这个文件夹中。
    nginx1.16.1.tar.gz文件也随配套学习资料一
    起提供给读者。
    nginx1.16.1文件夹中的内容,在2.1.3节的第2个问题中详细介绍过了,其中应重点关注src子目录,因为该目录是真正的源码目录。
    src目录:Nginx源码目录①core目录:核心代码
    ②event目录:event(事件)模块相关代码
    ③http目录:http(Web服务)模块相关代码
    ④mail目录:邮件模块相关代码
    ⑤os目录:操作系统相关代码
    ⑥stream目录:流处理相关代码
    在Windows中右击src文件夹,查看属性,如图3.1所示。
    图3.1查看src文件夹的属性图3.1中可以看到,src子文件夹中一共包含311个文件、12个文件夹,只要掌握其中的一小部分,都将受益匪浅。
    3.1.2Nginx源码查看工具为了方便查看这些源码,每位读者都可以选择自己熟悉或顺手的查看工具。VisualStudio、SourceInsight、VisualStudioCode,喜欢或者熟悉哪个可以自由选择,笔者因为以往用过VisualStudioCode,印象较好,所以决定使用VisualStudioCode来阅读Nginx源码。
    VisualStudioCode是微软开发的一个跨平台的轻量级编辑器(不要跟VisualStudio弄混,VisualStudio是集成开发环境,而VisualStudioCode是编辑器)。可以在VisualStudioCode中安装扩展模块来支持很多特性,如语法高亮、跳跃到某个函数定义中

    这是一本Linux下C++通信架构实战书籍,针对于C/C++语言已经掌握的很熟并希望进一步深造以将来用C++在Linux下从事网络通信领域/网络服务器的开发和架构工作。包括如下内容:(1)项目本身是一个极完整的多线程高并发的服务器程序;(2)按照包头包体格式正确的接收客户端发送过来的数据包, 完美解决收包时的数据粘包问题;(3)根据收到的包的不同来执行不同的业务处理逻辑;(4)把业务处理产生的结果数据包正确返回给客户端。

    售后保障

    最近浏览

    猜你喜欢

    该商品在当前城市正在进行 促销

    注:参加抢购将不再享受其他优惠活动

    x
    您已成功将商品加入收藏夹

    查看我的收藏夹

    确定

    非常抱歉,您前期未参加预订活动,
    无法支付尾款哦!

    关闭

    抱歉,您暂无任性付资格

    此时为正式期SUPER会员专享抢购期,普通会员暂不可抢购