今天的我,曾經是一個ASP.NET信徒,後來經過大流量網站的應用,經驗告訴我,微軟面向的人群是中低端大部人群,因為他的一系列產品程序臃腫,但智能,例如SQLServer、iis、還有哪些捆綁的服務,就ASP.NET的運行庫,頁面要執行太多的初始化操作,使得頁面他必須慢和占用太多記憶體。
今天的我計劃考察下PHP的性能底線和運行機理,希望有一個好的結果!
PHP底核是用的Zend Engine組件運行的Opcode中間執行的,就像.NET的Framework runtime。但有很大不同,Zend Engine是一台虛擬機,他對Opcode是解釋執行,也就是說,讀一句執行一句,類似ASP。但是因為OpCode是二進制,語法標準和位元組化,使讀取效能非常快,比ASP要快的多。而.NET據說是轉成機算機語言,然後直接呼叫運行的。按說.net更會快,但事實上,.NET加上哪些臃腫的類別庫,不未知的編譯過程,速度目前牙根跟不上php的解釋執行。
從企業需求角度去想,要太高的性能也不是需求的第一要求,還要程序簡單,使開發成本降低,再有性能可以提供需求的需要才行。 PHP對於大型網站的解決方案可以滿足他們的這些需要,因為他做到了簡單,精巧,性能雖然不說最好,他這些性能耗費,一般商家都是可以支持的起的,最主要,他耗費的只是一點點,可以忽略不技,而asp.net就不一樣了,再大還可以使用叢集方案解決。
PHP支援FPM進程管理模式,這使得在對應大流量,大記憶體需要時,還是有很好的處理效能的。
支援fastcgi,這可以更好的兼容高性各種伺服器的接口,甚至linux運行效果也非常好!
整體評價,PHP還是比較適合門戶網站,大流量站的應用的。
原文連結:http://www.cnblogs.com/a-xu/archive/2012/11/23/2783861.html
【編輯推薦】