[英]How good is PHP performance?
這是我最近看到的一篇文章的后續文章,該文章表明 PHP 性能很差:
“PHP。是。總是。瓶頸。我的服務器群,讓我向你展示它們! PHP 整體性能”
其次是:
“PHP 性能太糟糕了。我基於我在 OpenX(在 Linux 上)和 WordPress(在 win64 上)的經驗。”
我們能否獲得一些關於 PHP 性能好壞的客觀社區意見...
“PHP 性能有多好?”的答案是“足夠好”。
我的意思是,網站的大多數性能問題都與其他問題有關,例如糟糕的數據庫設計、幾乎沒有緩存、CSS/JavaScript/圖像緩存等等。
互聯網上的一些最大的站點使用 PHP,因此它通過了該測試。 Jeff Atwood 認為PHP 很爛,但沒關系。 有一些事情可以正確地批評 PHP(例如,不一致的參數順序、不一致的函數命名、魔術引號等),但我認為他誇大了負面影響。
因此,不要根據假設的性能選擇 PHP(或不選擇),因為這無關緊要(與其他所有內容相比)。
PHP 的性能很好。 當然,除非您正在設計 3d 游戲。
差異是可以忽略不計和火焰誘餌。 因為,真的,Rubyism 是“如果它可擴展,誰在乎它是否快?” 都錯了嗎? 請參閱 #2 以了解讓您慢下來的示例。
什么都需要時間。 (具有諷刺意味,我知道。)但實際上,這始終取決於您如何做需要花費時間的事情。 例如,我可以編寫兩個輸出幾乎相同的查詢,但使用更好的語法/選擇可將速度提高 2.5 倍。 總的來說,PHP 腳本中最浪費時間的是文件訪問……多虧了硬件。 因此,您包含/需要的文件數量比其內容更能減慢腳本的速度——尤其是在碎片化時。
通過這個簡單的系統,我操縱了自己的 MVC 框架,使其速度幾乎是裸機 CodeIgniter 應用程序的 10 倍; 它更簡單,更簡約,是的,但它應該表明包含 1 個文件,而不是每個類 1 個,可以在速度上產生巨大差異。
只要它的 *AMP 是好的,Linux 服務器當然會更快。 我對我的 WAMP 和 LAMP 系統都很滿意,盡管硬件和軟件差異很大。 (但 LAMP 系統通常是最快的,但硬件較少。)
目前,PHP 開發人員正在進行一個項目,旨在為 PHP 構建更好的 Benchmark 工具。
項目負責人最近在 Google Techtalks 上做了一個名為Compiling and Optimizing Scripting Languages的演講,這是一個非常有趣的演講。
前幾天我也做了一個 PHP 應用程序大小檢查。
那是加載到內存中的數據。
使用正確的算法和數據結構比使用某種編程語言(只要可以用所選語言表達它們)與性能更相關。
所以如果 PHP 程序員知道他在做什么,PHP 甚至可以比 C++ 更快。
通過使用像The Alternative PHP Cache這樣的操作碼緩存,性能得到了極大的提高,它是免費的,並通過將您的腳本“編譯”成可以由 Zend 引擎直接使用的操作碼而顯着提高性能,而無需額外開銷(過度使用術語 IMO)解析每個請求的代碼。 您可以在此處查看基准測試以及我博客中有關使用 APC 緩存加速 Zend_Loader的帖子
雅虎! 使用 PHP。 http://public.yahoo.com/bfrance/radwin/talks/yahoo-phpcon2002.htm
我不同意 PHP 始終是瓶頸。 PHP 與 Java 或 ASP 一樣具有可擴展性和高效性。 在這條道路的盡頭,它歸結為您的數據庫,瓶頸總是從那里開始。
PHP 可能不如編譯的服務器端語言快,但它仍然非常快並且可以完成工作。
php 的“速度”方面更多地與用戶體驗有關,而不是與性能本身有關。
基於 PHP 的 AJAX 應用程序不會被歸類為“緩慢”或“無響應”:當一個請求完成時,用戶有很多事情要做! 此外,對於用戶來說,所有操作都“一致緩慢”比表現出不穩定的性能速度要少得多。
之前的評論之一非常恰當地總結了它:語言不影響速度! 應用程序doez。
干杯,jrh
您可能會發現 Rasmus 的演講幻燈片有些相關和有趣:talks.php.net/show/drupal08/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.