網站極限優化之php優化

  這段時間忙死了,早上一大清早就要起來學計算機英語,聽商務英語,前些日子搞數據庫優化研究已經有了結果,現在就剩下php優化了,當然了,人各有志,只是發表下個人的看法,大家可以踊躍發表自己的意見,一下內容僅供參考,生產部署出了問題,與本人無關

  說到網站的建設那是相當的麻煩,不過現在有很多大師提出了很多有建設性的方法,我這裏主要是針對mvc 模板引擎來講,而他們兩個東東都是和php有着緊密的聯繫的,當然了你非要玩jsp,c/c++fast-cgi我就沒辦法了,本人不懂呵呵,好了廢話不說了:

  首先我們知道php是解釋性語言,和perl,python一樣都要一個程序運行的虛擬機來運行,和c c++等編譯性的不同他們可以直接系統運行,而且產生的二進制代碼更精簡高效,可是由於php強大的網絡接口,有很多現成的網頁操作類,函數可以使用,而且開發速度快,學習也很簡單相對其他語言,所以打敗了perl,c/c++在網站設計的地位,導致了現在的網頁設計三國鼎立 php jsp ruby (asp不考慮windows下的東東不感冒)呵呵。按照簡單的程序執行效率來說我們可以大概的總結如下:

   無框架直接純語言搞速度:jsp > php > ruby

  使用框架設計後 速度:  jsp > ruby on rails > php+thinkphp

  所以如果有錢,還是整jsp吧,不過咱們不整就用php那麼怎麼優化呢。。一般來說php優化主要是靠各種緩存來加速了,像什麼apc,zend optimial,xcache等等,可是我看來對於php的加速分爲以下幾類:

 1,直接使用php的ob_start函數等函數進行php程序網頁的真靜態加速,提高速度的同時還有利於經行SEO,是最快的完整網頁緩存加速

 2,使用facebook hiphop把php編譯成c++程序進行加速。這個嘛哥沒有詳細整過不過性能算是很好了,比下面的餓apc xcache快,不過部署難度大,建議使用

3,就是使用apc,xcache,來進行php程序的編譯opcode緩存,效果很好,是我們常用的加速方法,apc還可以把緩存的文件保存爲文件,需要用的時候直接載入,加速又加密了源碼呵呵,

 4,就是框架,模板引擎的局部緩存了代表是smarty的編譯緩存,個人感覺是雞肋,因爲在前面還是需要php文件來載入緩存文件,不過可以實現局部緩存,大家可以借鑑。比如把時間動態顯示不緩存呵呵,除此之外還不如直接php整頁緩存

  最後還有一個優化就是,mvc框架選擇問題,還有模板引擎的選擇問題,其實以我個人的想法,這些東東最好還是掌握他們的社會分工思路,採用mvc,模板界面設計,邏輯程序設計分離的思想就可以了.

  php在框架複雜大規模程序運行效率上面確實不是強項,這個可以查看網上很多關於ruby,php框架的相關文章看到,一起去學一個框架還不如自己學習mvc思想自己純php設計,或者自己定製一個簡單的框架來使用,高效的同時,還能學習好php!

  由於社會分工的深入,爲了配合方便一個網站的發展,二次開發要求,誕生了視圖,界面與php編程分離的狀況,是一個好事,研究了幾天剛開始考慮smarty這個模板引擎,結果看到很多人抱怨速度不行,就他官方的zend frame框架一樣,沒有極高的電腦配置,是玩不轉的。考慮了很久還是選擇Blitz templates 這個模板引擎了,看測試比php純echo include還要快,,,當然了php自身的include還是很快的,可以參考評測結果。
 

   一下就被吸引了,還是相信c語言的能力了,linux世界的老大。拯救發展linux,bsd就還得靠他。什麼java,面向對象都是浮雲。。。

   當然,php優化除了性能之外還要用戶數據的過濾,安全等問題,這裏就不講了,咱們下回分解呵呵

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章