2萬(wàn)并發(fā)的服務(wù)器要求 1秒1000并發(fā),高并發(fā)需要什么樣的服務(wù)器?
1秒1000并發(fā),高并發(fā)需要什么樣的服務(wù)器?如果硬件級(jí)別需要根據(jù)數(shù)據(jù)量和業(yè)務(wù)復(fù)雜度進(jìn)行綜合評(píng)估,建議購(gòu)買(mǎi)兩臺(tái)虛擬機(jī)(4核8g內(nèi)存)構(gòu)建集群環(huán)境。之后將根據(jù)實(shí)際需要進(jìn)行擴(kuò)建。軟件級(jí)別:1。如果是寫(xiě)操作,
1秒1000并發(fā),高并發(fā)需要什么樣的服務(wù)器?
如果硬件級(jí)別需要根據(jù)數(shù)據(jù)量和業(yè)務(wù)復(fù)雜度進(jìn)行綜合評(píng)估,建議購(gòu)買(mǎi)兩臺(tái)虛擬機(jī)(4核8g內(nèi)存)構(gòu)建集群環(huán)境。之后將根據(jù)實(shí)際需要進(jìn)行擴(kuò)建。
軟件級(jí)別:
1。如果是寫(xiě)操作,應(yīng)該:
1.1使用消息隊(duì)列進(jìn)行異步處理(如ActiveMQ等),避免消息阻塞
1.2使用mongodb的批寫(xiě)功能,如每1000條數(shù)據(jù)寫(xiě)一次
2。Mongodb以集群方式部署,分散壓力
3。如果是讀操作,可以考慮添加redis來(lái)緩存熱數(shù)據(jù)
通稱(chēng)為1000并發(fā),即同時(shí)連接1000個(gè)客戶(hù)端和服務(wù)器。你可以在這種狀態(tài)下呆一整天,所以你不必花特定的時(shí)間。如果每秒有1K個(gè)請(qǐng)求,每個(gè)請(qǐng)求都是一個(gè)寫(xiě)操作,并且數(shù)據(jù)大小是4K,那么這就是一個(gè)典型的數(shù)據(jù)庫(kù)應(yīng)用程序。每秒要寫(xiě)入的數(shù)據(jù)量是1K*4K=4m,單機(jī)正常配置的Mongodb可以應(yīng)付這樣的壓力。你能找到那些已經(jīng)成為瓶頸的地方嗎??纯创疟P(pán)是否忙,Mongo的CPU是否高。
1000用戶(hù)并發(fā)的網(wǎng)站服務(wù)器大概需要什么樣的配置?
場(chǎng)景非常重要,例如10000個(gè)并發(fā)QPS或TPS,這是一個(gè)完全不同的概念。
服務(wù)器優(yōu)化,現(xiàn)在通過(guò)epoll支持?jǐn)?shù)百萬(wàn)個(gè)連接,100000個(gè)并發(fā)無(wú)瓶頸。但是,這只是網(wǎng)絡(luò)層。如果涉及到具體業(yè)務(wù),那就另當(dāng)別論了。例如,redis可以是并發(fā)的,因?yàn)橹恍枰W(wǎng)絡(luò)IO和內(nèi)存訪問(wèn)。但如果你有業(yè)務(wù)處理,掛斷數(shù)據(jù)庫(kù),去卡夫卡,再去redis,那你就得分析具體的問(wèn)題。
在我們最初的基準(zhǔn)測(cè)試中,QPS可以支持大約60000到80000個(gè)事務(wù),但是事務(wù)的添加、刪除和修改絕對(duì)不是那么重要。
其實(shí)你需要的是一個(gè)基準(zhǔn)測(cè)試結(jié)果,比如TCP、HTTP基準(zhǔn)測(cè)試、Tomcat基準(zhǔn)測(cè)試、application framework基準(zhǔn)測(cè)試、redis基準(zhǔn)測(cè)試、MySQL基準(zhǔn)測(cè)試等
我們做了application framework基準(zhǔn)測(cè)試,基于springboot,測(cè)試接口沒(méi)有邏輯,直接查詢(xún)SQL返回結(jié)果即可?;鶞?zhǔn)測(cè)試結(jié)果是8核16g內(nèi)存,運(yùn)行兩個(gè)實(shí)例,最多可以并發(fā)8萬(wàn)次,應(yīng)該有優(yōu)化的空間。