提高高並發訪問的響應速度的幾種方式


    1:首先需要有非常良好的網絡帶寬,若有上萬人同時錄入數據的普通的Web信息管理系統,至少需要10M左右的網絡帶寬,而且網通、電信的主干網都有接入比較好,否則全國各地的網絡情況都不太一樣,有的城市錄入數據時可能會遇到網絡非常緩慢的情況,甚至到無法忍受的程度。

    2:須有一台牛X的Web服務器 + 一台牛X的數據庫服務器(備注接近頂配的奢侈硬件服務器非個人PC),由於是需要錄入1000萬條以上數據,最好采用Oracle數據庫比較理想一些,經得起考驗一些。

    3:需要進行適當的內存緩存優化策略,不能所有的數據庫都依靠SQL數據庫的方式把壓力放在數據庫服務器上,盡量多使用內存的方式處理數據。

    4:需要一個牛X的,經得起考驗的數據庫訪問層,因為每秒都有可能成千上萬的人在訪問,若是質量不良好的數據庫訪問組件、或者不穩定的數據庫訪問組件,更容易導致系統崩潰、或者占用非常龐大的內存,最后容易導致整個系統的崩潰。

    5:需要優化分頁存取數據功能,應為有可能會有1000萬條數據,若分頁讀取數據的功能沒能優化到最高,也很容易導致系統的崩潰,因為上萬人萬一在同一時間,或者接近同一時間點了查詢某頁數據時,那系統就真崩潰了,分頁存取數據一定需要做到極致才可以。

    6:需要進行數據庫索引優化,有索引和沒索引的性能差距有時候會是100倍,大數據量時可能會有1000倍都有可能,數據庫索引優化到極致了更容易得到運行順暢的信息管理系統。

    7:嚴謹高效的數據庫事務處理,由於高並發,並且有些單據是需要同時寫入多個表,需要保證數據庫的一致性,要么全部成功,要么全部失敗重新錄入數據,所以需要一個高效的數據庫事務處理機制的配合。

    8:所有的系統的操作日志、異常信息都需要完整的記錄下來,當系統發生一些故障時,可以快速排查問題,對正確診斷系統發生的故障的原因做分析參考用。

    9:需要經常檢測系統的各項指標、例如各服務器的內存使用情況、CPU使用情況、網絡帶寬使用情況,高峰時的各個參數是什么情況、系統不繁忙時的情況等,若服務器快承受不了壓力了,就得馬上增加負載均衡的服務器,網絡帶寬不夠了需要增加等等,總不能等系統崩潰了再去做這些事情。

  10:每個頁面的HTML、JS都進行優化,若某個頁面多余發了100個字符的垃圾HTML代碼,那1萬人每天獲得100次,那得占用多少網絡帶寬,100×100×1萬個字符的多余HTML被網絡上傳輸了,要知道接入主干網的網絡資源是多么寶貴,費用是多么昂貴。

  11:HTML、JS等都可以考慮用壓縮模式傳輸,那樣網絡傳輸效率會更高一些。

  12:由於全國各地上萬人,會有各種各樣的人,這些人也未必全是好人,可能某些人心情不好,或者其他什么的,可能就會攻擊我們的軟件系統破壞數據,這些也可能是由於好奇心導致的,所以系統需要有嚴格的權限管理控制,不應該進入的頁面絕對不能進入,不應該看的數據絕對不讓看,不能操作的功能絕對不讓多操作,一方面防止沒必要的多余的麻煩,另一方面也可以減少系統被攻擊破壞的可能性。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM