Swoole入门介绍
Swoole雖然是標準的PHP擴展,實際上與普通的擴展不同。普通的擴展只是提供一個庫函數。而swoole擴展在運行后會接管PHP的控制權,進入事件循環。當IO事件發生后,swoole會自動回調指定的PHP函數。
新手入門教程:https://github.com/LinkedDestiny/swoole-doc
Swoole要求使用者必須具備一定的Linux/Unix環境編程基礎,學習Swoole需要掌握哪些基礎知識?本文列出了基礎知識清單。
swoole_server
強大的TCP/UDP Server框架,多線程,EventLoop,事件驅動,異步,Worker進程組,Task異步任務,毫秒定時器,SSL/TLS隧道加密。
swoole_http_server是swoole_server的子類,內置了Http的支持swoole_websocket_server是swoole_http_server的子類,內置了WebSocket的支持swoole_redis_server是swoole_server的子類,內置了Redis服務器端協議的支持
子類可以調用父類的所有方法和屬性
swoole_client
TCP/UDP/UnixSocket客戶端,支持IPv4/IPv6,支持SSL/TLS隧道加密,支持SSL雙向證書,支持同步并發調用,支持異步事件驅動編程。
swoole_event
EventLoop API,讓用戶可以直接操作底層的事件循環,將socket,stream,管道等Linux文件加入到事件循環中。
eventloop接口僅可用于socket類型的文件描述符,不能用于磁盤文件讀寫
swoole_async
異步IO接口,提供了 異步文件系統IO,定時器,異步DNS查詢,異步MySQL等API,異步Http客戶端,異步Redis客戶端。
- swoole_timer 異步毫秒定時器,可以實現間隔時間或一次性的定時任務
- swoole_async_read/swoole_async_write 文件系統操作的異步接口
swoole_process
進程管理模塊,可以方便的創建子進程,進程間通信,進程管理。
swoole_buffer
強大的內存區管理工具,像C一樣進行指針計算,又無需關心內存的申請和釋放,而且不用擔心內存越界,底層全部做好了。
swoole_table
基于共享內存和自旋鎖實現的超高性能內存表。徹底解決線程,進程間數據共享,加鎖同步等問題。
swoole_table的性能可以達到單線程每秒讀寫100W次
總結
以上是生活随笔為你收集整理的Swoole入门介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿里云实例配置
- 下一篇: 阿里云https认证