PHP高級Web開發框架

編程語言 PHP 物聯網 Go語言 代碼之家 2017-04-03

PHP高級Web開發框架

前面文章講了純PHP開發的框架:純PHP開發的高性能PHPsocket服務器框架

Swoole是一種PHP高級Web開發框架,框架不是為了提升網站的性能,是為了提升網站的開發效率。最少的性能損耗,換取最大的開發效率。利用Swoole框架,開發一個複雜的Web功能,可以在很短的時間內完成。

簡介

Swoole不是一個像Zend Framework、CakePHP、Yii、symfony、ThinkPHP等一樣的框架,也不是一個像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 、SQLite、PostgreSQL、ODBC

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

功能

包含以下幾個特色功能:

1、 類似ORM的數據查詢,提供SQL封裝器,讓MySQL的SQL與PHP的Array,會話,Cache無縫結合。

2、App MVC分層結構,有效的程序結構分層,提高程序的可維護性和擴展性,實現低耦合,基於接口開發。

3、集成大量,實用的功能,比如方便的數據庫操作,模板操作,緩存操作,系統配置,表單處理,分頁,數據調用,字典操作,上傳處理,內容編輯,調試等。

4、模板-數據反射系統,可以直接在模板中調用數據,提供很多標籤,可是無需修改程序,只修改模板,即可實現網站各類更新維護工作。

另外的幾個功能

1、Swoole包含了大量類,提供眾多的功能擴展,基本上Web開發能夠用到的功能類,大部分都可以在Swoole框架中找到。

2、Swoole擁有插件系統,Fckeditor、Adodb、pscws中文分詞、中文全文索引系統、最新的Key-Value數據庫思想,TokyoTyrant,可以無限擴展框架的功能。

優勢

  • 純C編寫性能極強

  • 簡單易用開發效率高

  • 事件驅動異步非阻塞

  • 併發百萬TCP連接

  • TCP/UDP/UnixSock

  • 服務器端/客戶端

  • 支持異步/同步/協程

  • 支持多進程/多線程

  • CPU親和性/守護進程

  • 支持IPv4/IPv6網絡

特性

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

除了異步IO的支持之外,Swoole為PHP多進程的模式設計了多個併發數據結構和IPC通信機制,可以大大簡化多進程併發編程的工作。其中包括了併發原子計數器,併發HashTable,Channel,Lock,進程間通信IPC等豐富的功能特性。

Swoole2.0支持了類似Go語言的協程,可以使用完全同步的代碼實現異步程序。PHP代碼無需額外增加任何關鍵詞,底層自動進行協程調度,實現異步。

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

案例

swoole目前已被多家移動互聯網、物聯網、網絡遊戲、手機遊戲企業使用,替代了C++、Java等複雜編程語言來實現網絡服務器程序。 使用PHP+Swoole,開發效率可以大大提升。

官方提供了基於swoole擴展開發的PHP網絡框架, 支持Http,FastCGI,WebSocket,FTP,SMTP,RPC等網絡協議

swoole在美國,英國,法國,印度等國家都有用戶分佈,在國內的 騰訊、 百度、阿里巴巴、YY語音等多家知名互聯網公司均有使用。

相關推薦

推薦中...