網(wǎng)站性能提高實戰(zhàn)經(jīng)驗點滴記錄
更新時間:2011年02月19日 16:43:05 作者:
網(wǎng)站性能提高實戰(zhàn)經(jīng)驗點滴記錄,需要的朋友可以參考下。
DB:
1.數(shù)據(jù)庫可以適當設計一些冗余字段來減少聯(lián)合查詢
2.經(jīng)常查詢的字段要建立索引
3.查詢內容盡量簡潔, 比如cakephp中的查詢盡量設置$this->recursive=-1,并指定fields.
4.數(shù)據(jù)庫用單獨的服務器,有條件的常用查詢數(shù)據(jù)單獨分庫
5.把session等數(shù)據(jù)放在Memcache而不是數(shù)據(jù)庫中既能滿足多服務器之間共享也能降低數(shù)據(jù)庫的負載。
參考如下文章: http://www.linuxjournal.com/article/7451?page=0,1
6.Bad Sql會摧毀系統(tǒng)的CPU,尤其在使用IN查詢時,一定要確保array里面數(shù)據(jù)是唯一的,且不能有大量數(shù)據(jù)。
HTTP Request:
1.調節(jié)apache增大服務器并發(fā)處理連接數(shù)
2.壓縮js/css減少客戶并發(fā)請求連接數(shù)(apache/nginx的gzip配置)
3.盡量使用離線數(shù)據(jù)庫,少調用遠程http service(geoip service, google map...).至少要設置合理的請求超時時間。
4.圖片、靜態(tài)資源用專用的服務器
WEB server:
1.apache+php->ningx+(php+fpm)
2.haproxy, 設置請求隊列queue, 比如50,這樣可以起到緩沖和保護web server的作用,效果明顯
3.添加web server, haproxy負載均衡
( 多服務器注意session/cache放在數(shù)據(jù)庫或者memcache中,代碼補丁注意同步, 動態(tài)生成或者管理員加載的資源注意同步)
Code:
1.避免無效循環(huán)
2.避免無效鏈接請求
3.設計上注意不要產生單個服務器的文件
4.設計上注意不要產生大量的小文件,否則可能會引起inode資源耗盡
5.設計上注意不要把大量營銷郵件的發(fā)送和單個業(yè)務郵件混淆在一起,另外批量郵件的產生和發(fā)送邏輯要分開
6.最好把營銷郵件的發(fā)送以調用第三方專業(yè)郵件服務的形式完成。這樣可以避免垃圾郵件和檢查無效郵件
to be continued.
1.數(shù)據(jù)庫可以適當設計一些冗余字段來減少聯(lián)合查詢
2.經(jīng)常查詢的字段要建立索引
3.查詢內容盡量簡潔, 比如cakephp中的查詢盡量設置$this->recursive=-1,并指定fields.
4.數(shù)據(jù)庫用單獨的服務器,有條件的常用查詢數(shù)據(jù)單獨分庫
5.把session等數(shù)據(jù)放在Memcache而不是數(shù)據(jù)庫中既能滿足多服務器之間共享也能降低數(shù)據(jù)庫的負載。
參考如下文章: http://www.linuxjournal.com/article/7451?page=0,1
6.Bad Sql會摧毀系統(tǒng)的CPU,尤其在使用IN查詢時,一定要確保array里面數(shù)據(jù)是唯一的,且不能有大量數(shù)據(jù)。
HTTP Request:
1.調節(jié)apache增大服務器并發(fā)處理連接數(shù)
2.壓縮js/css減少客戶并發(fā)請求連接數(shù)(apache/nginx的gzip配置)
3.盡量使用離線數(shù)據(jù)庫,少調用遠程http service(geoip service, google map...).至少要設置合理的請求超時時間。
4.圖片、靜態(tài)資源用專用的服務器
WEB server:
1.apache+php->ningx+(php+fpm)
2.haproxy, 設置請求隊列queue, 比如50,這樣可以起到緩沖和保護web server的作用,效果明顯
3.添加web server, haproxy負載均衡
( 多服務器注意session/cache放在數(shù)據(jù)庫或者memcache中,代碼補丁注意同步, 動態(tài)生成或者管理員加載的資源注意同步)
Code:
1.避免無效循環(huán)
2.避免無效鏈接請求
3.設計上注意不要產生單個服務器的文件
4.設計上注意不要產生大量的小文件,否則可能會引起inode資源耗盡
5.設計上注意不要把大量營銷郵件的發(fā)送和單個業(yè)務郵件混淆在一起,另外批量郵件的產生和發(fā)送邏輯要分開
6.最好把營銷郵件的發(fā)送以調用第三方專業(yè)郵件服務的形式完成。這樣可以避免垃圾郵件和檢查無效郵件
to be continued.
相關文章
關于使用mvn deploy命令將本地jar包上傳到maven私服的問題(收藏)
這篇文章主要介紹了使用mvn deploy命令將本地jar包上傳到maven私服,分享本篇教程可以幫助多數(shù)朋友少走彎路,本文具有很好的收藏價值,需要的朋友可以參考下2022-03-03
git push 本地項目推送到遠程分支的方法(git命令版)
這篇文章主要介紹了git push 本地項目推送到遠程分支的方法(git命令版),需要的朋友可以參考下2020-09-09

