一文了解什么是swoole

一文了解什么是swoole

一、什么是swoole

swoolephp異步、并行、高性能網絡通信引擎,使用純c語言編寫,提供了PHP語言的異步線程服務器,異步TCP/udp網絡客戶端,異步mysql,異步redis數據庫連接池,AsyncTask,消息隊列,毫秒定時器,異步文件讀寫,異步DNS查詢。 swoole內置了http/websocket服務器端/客戶端、Http2.0服務器端。

swoole是php的一個擴展,主打高性能的網絡編程擴展,由于擴展使用c語言編寫,性能上會比php實現的框架快很多。而且因為swoole的內部實現給php提供了比apache+php更多的靈活性。

swoole不是一個像Zend Framework、CakePHP、YIIsymfonythinkphp等一樣的框架,也不是一個像WordPress、Drupal、Discuz、UChome等開源產品看齊的項目。 Swoole的目標是向Java框架、ruby On Rails、python DjangoPylons等一流框架發起挑戰。

運行環境:linux windows Mac FreeBSD Unix

PHP版本支持:PHP5.3+

支持的數據庫:MS SQL Server、MySQL、IBM DB2、oracle、Interbase 、sqlitepostgresql、ODBC

支持的運行方式:Web、Cli命令行腳本、PHP-GTK GUI。

二、官網介紹是:

swoole是PHP的異步、并行、高性能網絡通信引擎,使用純C語言編寫,提供了PHP語言的異步多線程服務器,異步TCP/UDP網絡客戶端,異步MySQL,異步Redis,數據庫連接池,AsyncTask,消息隊列,毫秒定時器,異步文件讀寫,異步DNS查詢。 Swoole內置了Http/WebSocket服務器端/客戶端、Http2.0服務器端。

友情鏈接:http://www.swoole.com/

三、swoole運行機制:

在進行系統的學習swoole之前,先來說下swoole的原理和機制,我覺得知道了會對它有一個大致的了解。

swoole雖然是標準的PHP擴展,實際上與普通的擴展不同。普通的擴展只是提供一個庫函數。而swoole擴展在運行后會接管PHP的控制權,進入事件循環。當IO事件發生后,swoole會自動回調指定的PHP函數。

也就是說,swoole就是個披了php外衣的nginx,大量的功能都是用c來實現。一些功能的調用其實并沒php什么事,它只是個純粹的膠水,有什么功能全用c在實現,然后執行完成再回調給php。

所以,你相當于在用php語法來寫底層的c服務,你并不需要了解底層的實現邏輯,你會用php就足夠了,nice;

一文了解什么是swoole

四、swoole提供的功能庫:

在說下swoole提供了哪些功能給我們用,以為我們用到哪些服務時,可以用swoole來幫我們實現。

[X] http服務 ,編寫一個簡單的web server。

[X] TCP/UDP服務 ,編寫一個消息接受處理系統。

[X] 異步,可以異步的處理請求。

[X] 并發 ,可以并發的處理同一個業務邏輯。

[X] socket,socket通訊處理技術。

[X] 毫秒級別定時器,可以在php中使用定時器了。

[X] 協程,相比線程更穩定和好用。

如果你的業務中,有用到以上等特性,你又在用使用php,那么完全可以用swoole來完成了。

五、swoole應用:

Swoole可以廣泛應用于互聯網、移動通信、企業軟件、云計算、網絡游戲、物聯網iot)、車聯網、智能家居等領域。 使用PHP+Swoole作為網絡通信框架,可以使企業IT研發團隊的效率大大提升,更加專注于開發創新產品。

PHP中文網,大量的免費swoole入門教程,歡迎在線學習!

以上就是一文了解什么是

? 版權聲明
THE END
喜歡就支持一下吧
點贊15 分享