高并發(fā)三種解決方法 1秒1000并發(fā),高并發(fā)需要什么樣的服務(wù)器?
1秒1000并發(fā),高并發(fā)需要什么樣的服務(wù)器?如果硬件級別需要根據(jù)數(shù)據(jù)量和業(yè)務(wù)復(fù)雜度進行綜合評估,建議購買兩臺虛擬機(4核8g內(nèi)存)構(gòu)建集群環(huán)境。之后將根據(jù)實際需要進行擴建。軟件級別:1。如果是寫操作,
1秒1000并發(fā),高并發(fā)需要什么樣的服務(wù)器?
如果硬件級別需要根據(jù)數(shù)據(jù)量和業(yè)務(wù)復(fù)雜度進行綜合評估,建議購買兩臺虛擬機(4核8g內(nèi)存)構(gòu)建集群環(huán)境。之后將根據(jù)實際需要進行擴建。
軟件級別:
1。如果是寫操作,應(yīng)該:
1.1使用消息隊列進行異步處理(如ActiveMQ等),避免消息阻塞
1.2使用mongodb的批寫功能,例如每1000條數(shù)據(jù)只寫一次
2。Mongodb以集群方式部署,可以分散壓力
3。如果是讀操作,可以考慮添加redis來緩存熱數(shù)據(jù)
場景非常重要,比如10000個并發(fā)QPS或TPS,這是完全不同的概念。
服務(wù)器優(yōu)化,現(xiàn)在通過epoll支持?jǐn)?shù)百萬個連接,100000個并發(fā)無瓶頸。但是,這只是網(wǎng)絡(luò)層。如果涉及到具體業(yè)務(wù),那就另當(dāng)別論了。例如,redis可以是并發(fā)的,因為只需要網(wǎng)絡(luò)IO和內(nèi)存訪問。但如果你有業(yè)務(wù)處理,掛斷數(shù)據(jù)庫,去卡夫卡,再去redis,那你就得分析具體的問題。
在我們最初的基準(zhǔn)測試中,QPS可以支持大約60000到80000個事務(wù),但是事務(wù)的添加、刪除和修改絕對不是那么重要。
其實你需要的是一個基準(zhǔn)測試結(jié)果,比如TCP、HTTP基準(zhǔn)測試、Tomcat基準(zhǔn)測試、application framework基準(zhǔn)測試、redis基準(zhǔn)測試、MySQL基準(zhǔn)測試等
我們做了application framework基準(zhǔn)測試,基于springboot,測試接口沒有邏輯,直接查詢SQL返回結(jié)果即可?;鶞?zhǔn)測試結(jié)果是8核16g內(nèi)存,運行兩個實例,最多可以并發(fā)8萬次,應(yīng)該有優(yōu)化的空間。
你認(rèn)為要支持1w并發(fā)需要什么樣服務(wù)器配置?
為您提供幾個想法:
1。靜態(tài)網(wǎng)站頁面。靜態(tài)頁面是。HTML(。HTM等),不需要由web服務(wù)器解析。它只需要生成一次,然后每次直接下載到客戶端,效率更高。
2. 網(wǎng)站的web服務(wù)器、數(shù)據(jù)庫服務(wù)器、圖片服務(wù)器和文件服務(wù)器是分開的。通過服務(wù)器的專業(yè)化分工,以提高網(wǎng)站的訪問速度。因為下載圖片和文件時,會給IIS、Apache等服務(wù)器帶來很大壓力。
3. 設(shè)置一個特殊的數(shù)據(jù)緩存服務(wù)器。將大量的數(shù)據(jù)放入緩存數(shù)據(jù)區(qū),在訪問量較小時保存數(shù)據(jù),降低連接數(shù)據(jù)庫的直接操作成本。
4. 數(shù)據(jù)庫集群,數(shù)據(jù)庫表哈希。面對大量的訪問量,大型網(wǎng)站會出現(xiàn)數(shù)據(jù)庫瓶頸。此時,一個數(shù)據(jù)庫很快就無法滿足應(yīng)用的需要,因此需要使用數(shù)據(jù)庫集群或數(shù)據(jù)庫表哈希來分散壓力。
5. 鏡像。映像是提高大型網(wǎng)站性能和數(shù)據(jù)安全性的一種方法。圖像技術(shù)可以解決不同的網(wǎng)絡(luò)接入提供商和接入?yún)^(qū)域所帶來的用戶接入速度的差異。例如,中國網(wǎng)和教育網(wǎng)的差異促使許多網(wǎng)站在教育網(wǎng)中建立形象網(wǎng)站,數(shù)據(jù)可以定期或?qū)崟r更新。
6. 負(fù)載平衡。負(fù)載均衡將是大型網(wǎng)站解決高負(fù)載訪問和大量并發(fā)請求的高端解決方案。
7. 最新:CDN加速技術(shù)。什么是CDN?CDN的全稱是content distribution network。其目的是在現(xiàn)有的互聯(lián)網(wǎng)上增加一層新的網(wǎng)絡(luò)架構(gòu),將網(wǎng)站的內(nèi)容發(fā)布到離用戶最近的網(wǎng)絡(luò)“邊緣”,讓用戶就近獲得所需內(nèi)容,提高用戶訪問網(wǎng)站的響應(yīng)速度。CDN不同于image,因為它比image更智能,或者可以用它來比喻:CDN=更智能的image cache流量分流。