原創|行業資訊|編輯:龔雪|2014-12-26 10:03:41.000|閱讀 291 次
概述:剛剛不經意間查看關于php加速方面的消息,看到了一句話“lamp結構的瓶頸在于M”,感覺是真知灼見,當然這是在理想狀態下的情況。對于實際情況下的生產環境來說,需要解決的問題是多種多樣的,l-a-m-p在不同階段需要優化的點是不同的,雖然通過努力最終的瓶頸在于M,但是期間的各種努力也是不容忽視的。下面我就意識流的總結一下,在網站生產環境遇到的各種問題。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
【年終大促 巔峰盛慧】FusionCharts XT及套包<8折> 截 止日期2014/12/31
文檔管理控件Edraw Office Viewer Component <6.5折>優惠 截止日期2014/12/24
在線文檔查看器GroupDocs.Viewer <6.5折>優惠!截止日期2014/12/24
剛剛不經意間查看關于php加速方面的消息,看到了一句話“lamp結構的瓶頸在于M”,感覺是真知灼見,當然這是在理想狀態下的情況。對于實際情況下的生產環境來說,需要解決的問題是多種多樣的,l-a-m-p在不同階段需要優化的點是不同的,雖然通過努力最終的瓶頸在于M,但是期間的各種努力也是不容忽視的。下面我就意識流的總結一下,在網站生產環境遇到的各種問題。
以下是之前遇到問題的各種匯總:
1、php內的sql代碼性能存在問題
這個存在于兩方面,一個是sql本身優化不夠,另外一個方面是隨著數據量的增加,某些性能問題會逐漸暴露。
2、apache處理模式造成的內存消耗
由于apache是以進程的形式,同步阻塞式的處理http請求,so,當網頁本身加載元素過多的話,會造成大量的http進程并發,消耗服務器大量的內存,導致訪問緩慢或者異常。解決辦法很是簡單,主要有以下幾個方面:
a、動態頁面轉成靜態頁面。
b、轉成lnamp的模式,圖片等靜態資源由nginx進行處理,減少http進程數量
3、CDN服務的使用
這個并不是性能問題,而是為了解決用戶訪問的頁面加載速度問題,以及不同網絡之間的延遲問題。具體使用效果是非常不錯的,會大大的改善各地用戶的訪問速度,土豪公司可以自建CDN,中小公司選擇第三方服務也是不錯的選擇。
4、緩存的使用
這個有兩個方面的緩存,其中主要的緩存是數據也就是動態方面的緩存。使用的軟件主要有redis以及memcache(兩個軟件都是針對php與mysql之間的請求進行緩存,減少與mysql的直接交互,提高訪問速度。
5、apache的負載均衡,mysql的讀寫分離
即便增加了CDN、緩存,優化了apache的頁面,但是高并發的問題依然會隨著用戶量的增加而慢慢出現,那么這個時候就要發大招了,擴!容!硬!件!。永遠都好使的大招,用完即生效。我們現在主要使用的是nginx+apache的負載均衡方式。而mysql的讀寫分離也so easy,使用主從復制即可。對于及時性要就不是太高的網頁訪問,問題不大。
6、奇葩問題粗現了!!!
Then,該優化的俺們都優化了,前輩的經驗也是各種借鑒,最后俺們發現頁面訪問還是慢得想讓用戶注銷。問題到底在哪?又經過了艱苦卓絕的調查與研究,最后發現,上一個離職的哥們開放的一個權限系統(所有網頁加載都會用),沒有關閉debug,我去!我一口老血噴在了顯示器上啊!蒼天啊,我曾經一度懷疑自己是不是在做無用功啊!
這里不是挑起運維與研發的階級矛盾,而是總結經驗教訓,以后不在走彎路!
先到這吧!以后有了經驗再補充!
原文鏈接:h//blog.chinaunix.net/uid-27654723-id-4711609.html
狂歡繼續!【年終大促 巔峰盛"慧" 】促銷火熱進行中 iPhone 6 Plus、 iPhone 6、iPad Air滿就送,還不趕快買買買!
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn