回複內容:
高並發、高流量、高效能?
這些問題不是一個php架構就可以解決的,lamp架構,越是接近底層的東西影響力越大,php只是四層架構最上面的一層,如果考慮最佳化效能先從底層硬體和軟體最佳化吧。可以瞭解下Swoole擴充和架構。
Swoole: PHP的非同步、並行、分布式擴充架構
高並發、高流量、高效能
聽起來像是架構的問題, 所謂的架構類似下面的:
- 資料庫叢集處理, 讀寫分離;
- 負載平衡, 流量大, 加機器唄, 沒錢? 沒聽過哪個流量大的項目沒錢的... ;
- CDN, 把靜態內容擱置到 CDN 上, 加快下載速度, 也減少資料服務器上頻寬的佔用;
- 緩衝, 一些不經常變化, 或者可以控制變化, 但是頻繁讀取的資料, 擱緩衝裡面, 下次讀取的時候直接讀取, 比起每一次都要去計算, 去資料庫讀取, 快上幾百倍;
- 隊列系統, 把一些耗時的任務放到幕後處理, 來實現快速響應的目的.
當然, 一個好的架構, 如 Laravel
能提供很多方便的工具, 讓你實現架構設計的需要.
- 資料庫讀寫分離 -> 資料庫使用基礎
- CDN 支援, Web 開發中, 靜態檔案加版本號碼, 如: `all.css` 產生的時候為 `all-16d570a7.css` , 詳見 Elixir 文檔 -> Laravel Elixir
- 統一緩衝介面, 支援各種流行的緩衝, 如 Memcached 和 Redis , 詳見文檔: 緩衝 - Laravel 中文文檔
- 隊列系統支援, 方便的介面, 讓一切看起來這麼簡單 隊列 - Laravel 中文文檔
PHP 架構, 本來解決的問題就是開發效率, 相比 JAVA, C/C++ 來說, PHP 的執行效率夠慢的, 架構還是一堆代碼構建於 PHP 之上, 所以追求極致效能的話, 不建議用 PHP 來做. 必須phalcon啊,用c-extension實現的全棧架構想滿足你的需求,並且實現高效能的,一般不用別的架構,都是自己寫架構~所有的架構無非都是在拖慢系統速度罷了。如果只是追求架構的效能,可以試下使用c語言以php拓展的方式寫的架構yaf。
但是選擇開發架構更應該從Team Dev出發吧?上手是否容易、文檔是否豐富、社區支援如何、拓展機制如何、架構本身引起的問題團隊裡是否有大拿能及時解決,在一開始沒解決好這些問題,後期開發出現問題解決不了那就麻煩大了。隨意+Facebook 的php 轉c 架構要求那麼多,不會就做個本科畢業設計吧,要根據項目需求和資金來決定吧,別攤太大的事自己收不了場,我建議20萬以下的項目都用CI 架構或者 thinkphp就行了,簡單快捷,寫程式的主要目的是完成任務後兌換成money,那為什麼要給自己挖坑呢?
需要 高並發、高流量、高效能的,java .net 大把的架構等著你呢就常見的php開發架構就行了,有人真測試過各個架構的代碼執行時間。
高並發、高流量跟多的要求是伺服器架構了
高效能的話,前後端都要做最佳化。可以看看 CmlPHP ,在orm就整合了緩衝。根據需要配置mysql一主多從,多個緩衝執行個體。架構自動做了分散式處理。有需要直接用mongodb也是可以的 http://cmlphp.51beautylife.com