現在使用的是kohana。
回複內容:
現在使用的是kohana。
yaf phalcon 都不錯,c寫的架構,效能上不錯
三種方案
1、大而全的架構
Yii laravel
2、輕路由架構
Lumen Slim
3、非同步架構
ReactPHP
https://github.com/reactphp/react
考慮你的業務情境,業務情境複雜就用1,需要快速實現靈活度高可以嘗試2、如果有大量IO操作的情境可以用3
沒有看到swoole的身影。實在忍不住出手。
要高並發,yaf實在是不合適。yar還稍微說的過去。
個人的建議是:
swoole + apache thrift
Yaf的其實本質上講,是個基礎架構,僅提供了一個簡單粗暴的基礎URI路由功能,完事了。
最關鍵是並發和多線程以及定時器等等,Yaf本身不能實現。
所以swoole這個時候,優勢突顯。swoole可以以deamon形式長期穩定的運行在server上,直接走socket,提供並發服務。
而整合了thrift後,就可以為各種其他端提供資料。比如app,web網頁(這個時候,可以用yaf當作前端讀取資料提供高效能),甚至為C,c++等端進行資料互動,非常方便。
可以考慮我寫的 Blink Framework https://github.com/bixuehujin/blink,其設計意圖便是用於構建高效能 API 服務。
Blink 是一個為構建 “long running” 服務而生的 Web 微型高效能架構,底層基於 Swoole 的 http server,效能有保障。
Blink 為構建 Web 應用程式提供簡潔優雅的API,可擴充性好,允許開發人員更加靈活自如的使用,提供了常見諸如路由、登陸認證、依賴注入、Tlog 等組件。
高並發本質和架構是無關的。。。架構只是封裝了一些組件,高並發還得看架構設計,非同步訊息佇列怎麼搞,緩衝怎麼搞,不能單單寄希望於架構,不然的話,最後你會發現加架構和不加架構會是一個效果。。
這和架構有多大關係?
用你最熟悉的架構就好
高並發主要關注兩點:
1,系統架構
2,商務邏輯 這個跟架構還算有點關係,不過關注點不在用什麼架構
系統架構
主要是考慮的負載, 網路請求支援,營運輕鬆搞定,商量好方案,慢慢加機器就好
商務邏輯
這塊做為開發人員,要知道業務本身壓力是在資料庫讀寫,檔案讀寫
可以根據情況做緩衝方案 和 非同步處理方案
在真正的高並發下,程式邏輯本身和單點都會是瓶頸,做好負載平衡解決方案,才是支援無限增長高並發的終極解決方案
高並發和架構無關吧
高並發的API效能取決於架構和緩衝以及資料庫!!!和架構沒任何關係!!!
PHP 架構, 本來解決的問題就是開發效率, 相比 JAVA, C/C++ 來說, PHP 的執行效率夠慢的, 架構還是一堆代碼構建於 PHP 之上, 所以追求極致效能的話, 不建議用 PHP 來做
一般瓶頸不在PHP,在IO。所以選什麼不重要。重要的是熟悉。出現問題,能快速修複
必須是鳥哥的yar
Yaf是鳥哥的成名作,要用架構又要追求高效能就用Yaf吧,據說百度內部用的也是Yaf的修改版.
Yaf最新版本是2015-09-06發布的2.3.5:
http://pecl.php.net/package/yaf
http://php.net/manual/zh/book.yaf.php
lumen.
Swoole
php7...
為什麼逗談架構
可以用yaf,推薦搭建hhvm或者php7 。
io密集型的高並發應該用epoll模型將並發調度到io層,然後就是進行db的設計了,理論上跟cgi關係不大了。如果你說的是CPU密集型的高並發請忽略我的回答
我要是說YII2
會不會被打?
yaf 或者 lumen
公司目前用yaf
BulletPHP
一般高並發php充當的是中介層的角色,java做一些基礎架構會包掉大部分邏輯,所以其實php也就是從後端拿資料做這些資料的定製化給前端,並做一些鑒權處理,所以其實做的是介面封裝的事情所以可以選擇一些輕量高效的,如果考慮學習成本可以試著用類似於slim這種簡單的架構,如果團隊夠強直接上鳥哥的yaf,還有一種情境就是php即是子應用也是服務,也就是soa的服務部分不是java了而是用了世界上最好的程式設計語言php那麼他們之間的通訊就是一個大問題,好在鳥哥還有一款yar的好東西,所以據瞭解微博用的就是yaf,yar,我不是微博的所以多了也不知道了,不過選什麼根據自己的情境做個分析吧,不能拷貝其他公司的模式的