一 ?根據(jù)官方的文檔坞生,學(xué)習(xí)swoole需要掌握的基礎(chǔ)知識(shí),這些基礎(chǔ)知識(shí)會(huì)在學(xué)習(xí)的過(guò)程中邊用邊寫,不然直接寫也就忘記了色查!
1 多進(jìn)程/多線程
1)了解Linux操作系統(tǒng)進(jìn)程和線程的概念
2)了解Linux進(jìn)程/線程切換調(diào)度的基本知識(shí)
3)了解進(jìn)程間通信的基本知識(shí),如管道撞芍、UnixSocket秧了、消息隊(duì)列、共享內(nèi)存
2 SOCKET
1)了解SOCKET的基本操作如accept/connect序无、send/recv验毡、close、listen帝嗡、bind
2)了解SOCKET的接收緩存區(qū)晶通、發(fā)送緩存區(qū)、阻塞/非阻塞哟玷、超時(shí)等概念
3 IO復(fù)用
1)了解select/poll/epoll
2)了解基于select/epoll實(shí)現(xiàn)的事件循環(huán)狮辽,Reactor模型
3)解可讀事件一也、可寫事件
4 TCP/IP網(wǎng)絡(luò)協(xié)議
1)了解TCP/IP協(xié)議
2)了解TCP、UDP傳輸協(xié)議
5 調(diào)試工具
1)使用gdb調(diào)試Linux程序
2)使用strace跟蹤進(jìn)程的系統(tǒng)調(diào)用
3)使用tcpdump跟蹤網(wǎng)絡(luò)通信過(guò)程
4)其他Linux系統(tǒng)工具喉脖,如ps椰苟、lsof、top树叽、vmstat舆蝴、netstat、sar题诵、ss等
二 編譯安裝
我是mac上安裝swoole洁仗。根據(jù)官方文檔要求,安裝swoole前必須保證系統(tǒng)已經(jīng)安裝了下列軟件:
php-5.3.10 或更高版本
gcc-4.4 或更高版本
make
autoconf