重新看了《linux多线程服务端编程》这本书的附录部分,对自己还是相当有启发。
我自己重新整理一下在C++这一块要往服务端和多线程发展的一个目标以及学习路线图。
要谨记,以及不断的自我提升,查漏补缺,自己还有很多要学的。
c++部分:
看一本就够了,精读《C++ Primer》第五版以及其中的习题。
值得做的练习:(详细参考这本书的附录B)
1.一个复数类或者大整数类
2.一个字符串类
3.简化的vector类模板
4.表达式计算器值得进一步学习的C++的库:Protobuf,leveldb,PCRE
进一步:《Effective C++》《C++编程规范》《泛型编程与STL》
网络编程部分:
必看的书:TCPv1,UNP,APUE,Effective TCP/IP Programming 进阶:HTTP权威指南
值得实现的三个例子:(详细参考A.1.11) echo,chat,proxy
1.回声服务器的实践(长连接)
echo server echo client的各种版本
一个客户端的 能处理多个客户端的
pthread多线程处理多个客户端的
select
epoll
锁
2.web服务器的实践(短连接)
web服务器多进程
web服务器epoll
基础部分:
https://www.zhihu.com/question/22608820 操作系统和计算机体系结构
《计算机体系结构:量化研究方法》《计算机组成与设计:硬件/软件接口》《深入理解计算机系统》实现的项目: 多机数据处理,N-皇后问题的多机并行求解
进一步研究:
算法导论,各种设计模式