学习Swoole需要掌握哪些基础知识]
多进程/多线程
- 了解Linux操作系统进程和线程的概念 http://www.ruanyifeng.com/blog/2013/04/processes_and_threads.html 阮一峰
- 了解Linux进程/线程切换调度的基本知识
- 了解进程间通信的基本知识,如管道、UnixSocket、消息队列、共享内存
- http://www.cnblogs.com/vamei/archive/2012/10/10/2715398.html 关注
SOCKET
- 了解SOCKET的基本操作如accept/connect、send/recv、close、listen、bind
- http://www.cnblogs.com/dolphinX/p/3460545.html简单理解Socket
- http://blog.csdn.net/hguisu/article/details/7444092 socket编程原理 关注
- http://www.cnblogs.com/hustskyking/archive/2013/12/25/websocket-with-php.html 细说WebSocket - php篇小胡子哥 关注
- 了解SOCKET的接收缓存区、发送缓存区、阻塞/非阻塞、超时等概念
IO复用
- 了解select/poll/epoll
- 了解基于select/epoll实现的事件循环,Reactor模型
- 了解可读事件、可写事件
TCP/IP网络协议
- 了解TCP/IP协议
- 了解TCP、UDP传输协议
- https://read.douban.com/column/1788114/ 协议森林
调试工具
- 使用gdb调试Linux程序
- 使用strace跟踪进程的系统调用
- 使用tcpdump跟踪网络通信过程
- 其他Linux系统工具,如ps、lsof、top、vmstat、netstat、sar、ss等