一 ?根據官方的文檔,學習swoole需要掌握的基礎知識,這些基礎知識會在學習的過程中邊用邊寫,不然直接寫也就忘記了!
1 多進程/多線程
1)了解Linux操作系統進程和線程的概念
2)了解Linux進程/線程切換調度的基本知識
3)了解進程間通信的基本知識,如管道、UnixSocket、消息隊列、共享內存
2 SOCKET
1)了解SOCKET的基本操作如accept/connect、send/recv、close、listen、bind
2)了解SOCKET的接收緩存區、發送緩存區、阻塞/非阻塞、超時等概念
3 IO復用
1)了解select/poll/epoll
2)了解基于select/epoll實現的事件循環,Reactor模型
3)解可讀事件、可寫事件
4 TCP/IP網絡協議
1)了解TCP/IP協議
2)了解TCP、UDP傳輸協議
5 調試工具
1)使用gdb調試Linux程序
2)使用strace跟蹤進程的系統調用
3)使用tcpdump跟蹤網絡通信過程
4)其他Linux系統工具,如ps、lsof、top、vmstat、netstat、sar、ss等
二 編譯安裝
我是mac上安裝swoole。根據官方文檔要求,安裝swoole前必須保證系統已經安裝了下列軟件:
php-5.3.10 或更高版本
gcc-4.4 或更高版本
make
autoconf