亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問有合適的開源組件么(java版本)?或者有現成的思路貼借鑒一下嗎?

請問有合適的開源組件么(java版本)?或者有現成的思路貼借鑒一下嗎?

慕田峪4524236 2022-09-16 18:14:15
應用場景是這樣,一個管理端(Java實現),大量客戶端(C++實現,數量大約10000),各個客戶端會檢測自己主機的某類文件的運行情況及狀態變化,并實時將數據上報給管理端,同時管理端要將收到的數據存入數據庫(MySQL),由于客戶端數量較多從而在管理端形成了較大并發,現在思路是這樣為了防止管理端在大并發壓力下掛掉,想建立一個大的緩存機制(如隊列模式),開辟多個線程接收到客戶端傳來的數據,立即將數據保存到緩存。在合適的時機(比如緩存中的記錄達到一定數量,具體還沒想好)批量將緩存中的數據批量保存至數據庫,然后清空緩存,繼續接收新數據,個人感覺有點大并發下的生產者、消費者的意思。
查看完整描述

3 回答

?
慕的地8271018

TA貢獻1796條經驗 獲得超4個贊

不考慮具體語言,抽象一下,就是一個服務器面對大量客戶端連接如何處理. 服務器不可能一個線程處理一個連接,這樣線程太多服務器會掛.
這個時候就是NIO的應用場景, Netty 是NIO的一個應用框架.

查看完整回答
反對 回復 2022-09-21
?
動漫人物

TA貢獻1815條經驗 獲得超10個贊

我有兩個思路。
1、可以看下分布式日志服務器。主要就是記錄匯總嘛。
2、把數據記錄在本地log上,然后看看把log是怎么解析到服務端。
緩存感覺不靠譜,緩存是不保證數據完整性的。你這么用會出問題,除非數據允許一定的誤差。

查看完整回答
反對 回復 2022-09-21
?
汪汪一只貓

TA貢獻1898條經驗 獲得超8個贊

1.先存入緩存,在定時OR定量寫入數據庫,雖然能解決問題,但是這樣就造成了,管理狀態的不及時性。
2.萬一緩存掛了呢,之前保存的數據不是丟失了嗎?

查看完整回答
反對 回復 2022-09-21
  • 3 回答
  • 0 關注
  • 191 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號