公司有乙個dsp平台(廣告平台),rtb模式 **方會請求我們的api,我們需要返回參與競價的廣告資料。
**方對api的要求只有乙個:必須在100ms做出回應!
一陣折騰,上線、測試、聯調,超時率》95%...
優化之旅:
1.將url從網域名稱訪問改為ip訪問(節省大概10ms)
2.將mysql連線位址 localhost,改為127.0.0.1 (節省...1ms)
3.把資料庫操作全部乾掉,改為用memcache或者redis其他存放在記憶體的nosql。另做乙個定時任務,更新memcache裡的值。(節省n ms)
(當時也想過把常讀資料定時重新整理到檔案裡,後來發現還**不如mysql)
4.然後發現框架(thinkphp)只是初始化都需要11-14ms,然後對框架進行了快取(thinkphp 替換入口),其實節省autoload方法不是重點,其實autoload並不是特別影響效能。我主要看中的是在生成lite.php時可以手動砍掉不需要的元件:比如view。。。還沒看效果,未完待續。。。
5.另外php7的同學也可以開啟 opcache ,據說效能翻倍。
提公升軟體效能
提高系統的安全性和健壯性,資料庫伺服器和應用伺服器,就要考慮冗餘設計。保證系統的高可用和高可靠以及高併發。保證系統在出現故障時,及時切換正常工作,使用雙機熱備份。使用redis快取伺服器提高系統的效能。使用讀寫分離技術減輕資料訪問的壓力,提公升系統的使用者體驗。在資料庫的設計上來使用分庫 分表 分割...
提公升頁面效能
1.資源壓縮合併,減少http請求 2.非核心 非同步載入 非同步載入的方式 a.動態指令碼載入 b.defer c.async defer 在html解析完成之後才會執行,並按照載入順序執行 async 在載入完成之後立即執行,和載入順序無關。3.利用瀏覽器快取 快取的分為強快取和協商快取 強快取...
效能繼續提公升
嘿嘿,今天改bug,又發現了乙個效能問題。在顯示所有bug列表的列印頁面下,顯示800個bug居然要花26s的時間,看上去已經是另人難於忍受了。在顯示測試報告頁面,由於不需要顯示bug列表,因此,成績從18s一下子提公升到了0.8s,現在這個列印頁面需要將所有的bug都列印出來,需要顯示所有的bug...