高併發解決方案

前天遇到了一個高手,給我講了一下高併發的時候需要注意的一些問題,在此先列出來,後面再慢慢完善。


1.數據庫設計

1.1表結構

很重要的一個,將常用表和非常用表分開,因爲常用表的數據經常用於共享,如果全部共享那就造成數據冗餘,降低效率;另外一個,表結構好,查詢速度,數據的處理都會快很多;

1.2 善用索引,觸發器,存儲過程,事務,高效率sql語句等等


2.分佈式,服務器負載均衡

具體實現可以Google方案。


3.數據庫集羣

Oracle、Sybase等都有很好的方案,常用的MySQL提供的Master/Slave也是類似的方案,您使用了什麼樣的DB,就參考相應的解決方案


4.數據庫表散列

http://blog.csdn.net/xiechao240/article/details/5863691


5.session共享

以memcache爲內存管理系統來設計的高可用,高負載,高性能的中央存儲區之session共享。

http://blog.csdn.net/kongdeqian1988/article/details/38434457


6.緩存

html靜態頁面緩存,數據庫緩存,服務器緩存等等


7.圖片服務器分離

圖片是最消耗資源的,於是我們有必要將圖片與頁面進行分離,這是基本上大型網站都會採用的策略,他們都有獨立的、甚至很多臺的圖片服務器


總結:所用的方法主要都是爲了

1.少用內存;

2.降低cpu佔有率;

3.降低操作io的頻繁性:文件io,網絡io,數據io。



發佈了74 篇原創文章 · 獲贊 15 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章