Swoole入門介紹
Swoole雖然是標(biāo)準(zhǔn)的PHP擴(kuò)展,實際上與普通的擴(kuò)展不同。普通的擴(kuò)展只是提供一個庫函數(shù)。而swoole擴(kuò)展在運行后會接管PHP的控制權(quán),進(jìn)入事件循環(huán)。當(dāng)IO事件發(fā)生后,swoole會自動回調(diào)指定的PHP函數(shù)。
新手入門教程:https://github.com/LinkedDestiny/swoole-doc
Swoole要求使用者必須具備一定的Linux/Unix環(huán)境編程基礎(chǔ),學(xué)習(xí)Swoole需要掌握哪些基礎(chǔ)知識?本文列出了基礎(chǔ)知識清單。
swoole_server
強大的TCP/UDP Server框架,多線程,EventLoop,事件驅(qū)動,異步,Worker進(jìn)程組,Task異步任務(wù),毫秒定時器,SSL/TLS隧道加密。
swoole_http_server是swoole_server的子類,內(nèi)置了Http的支持
swoole_websocket_server是swoole_http_server的子類,內(nèi)置了WebSocket的支持
swoole_redis_server是swoole_server的子類,內(nèi)置了Redis服務(wù)器端協(xié)議的支持
子類可以調(diào)用父類的所有方法和屬性
swoole_client
TCP/UDP/UnixSocket客戶端,支持IPv4/IPv6,支持SSL/TLS隧道加密,支持SSL雙向證書,支持同步并發(fā)調(diào)用,支持異步事件驅(qū)動編程。
swoole_event
EventLoop API,讓用戶可以直接操作底層的事件循環(huán),將socket,stream,管道等Linux文件加入到事件循環(huán)中。
eventloop接口僅可用于socket類型的文件描述符,不能用于磁盤文件讀寫
swoole_async
異步IO接口,提供了 異步文件系統(tǒng)IO,定時器,異步DNS查詢,異步MySQL等API,異步Http客戶端,異步Redis客戶端。
swoole_timer 異步毫秒定時器,可以實現(xiàn)間隔時間或一次性的定時任務(wù)
swoole_async_read/swoole_async_write 文件系統(tǒng)操作的異步接口
swoole_process
進(jìn)程管理模塊,可以方便的創(chuàng)建子進(jìn)程,進(jìn)程間通信,進(jìn)程管理。
swoole_buffer
強大的內(nèi)存區(qū)管理工具,像C一樣進(jìn)行指針計算,又無需關(guān)心內(nèi)存的申請和釋放,而且不用擔(dān)心內(nèi)存越界,底層全部做好了。
swoole_table
基于共享內(nèi)存和自旋鎖實現(xiàn)的超高性能內(nèi)存表。徹底解決線程,進(jìn)程間數(shù)據(jù)共享,加鎖同步等問題。
swoole_table的性能可以達(dá)到單線程每秒讀寫100W次
Go PHP Swoole
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。