java - 分布式的文件系統(tǒng)設(shè)計(jì)?
問題描述
現(xiàn)在的文件系統(tǒng)單臺(tái)服務(wù)器性能不夠,想做成分布式的文件系統(tǒng)。
我剛剛在阿里云開了4臺(tái)1核1G內(nèi)存的服務(wù)器做測試,測試下上傳文件功能。服務(wù)器姑且稱為 A B C D 一共4臺(tái)。其中1臺(tái)服務(wù)器A 做上傳測試客戶端。其中1臺(tái)B 用Node.js 作為流量轉(zhuǎn)發(fā),使用輪詢的方式轉(zhuǎn)發(fā)到剩下2臺(tái)服務(wù)器C和D里。C,D服務(wù)器都是文件存儲(chǔ)的java服務(wù)。然后測試結(jié)果是:
A上傳文件到B,然后輪詢給C,D 比 A直接上傳給C 性能還稍低。其中 A上傳文件到B,然后輪詢給C,D 的CPU,I/O情況是:B,C,D CPU都滿載。B I/O很低,C,D的I/O 為 A直接上傳給C時(shí)的I/0的一半。
請(qǐng)問,文件上傳的負(fù)載均衡應(yīng)該如何設(shè)計(jì)?
請(qǐng)問:是否用dns輪詢的方式可以解決?(大哥不要推薦現(xiàn)有的第三方分布式文件系統(tǒng)框架,幫忙講講他們的Proxy如何實(shí)現(xiàn)也好的,感激涕零。。)
請(qǐng)問如果B換成nginx是否可能滿足要求?
問題解答
回答1:搬運(yùn)工
相關(guān)文章:
1. docker鏡像push報(bào)錯(cuò)2. angular.js - angular內(nèi)容過長展開收起效果3. angular.js - angularjs的自定義過濾器如何給文字加顏色?4. python 怎樣用pickle保存類的實(shí)例?5. python的前景到底有大?如果不考慮數(shù)據(jù)挖掘,機(jī)器學(xué)習(xí)這塊?6. MySQL中無法修改字段名的疑問7. javascript - 微信小程序限制加載個(gè)數(shù)8. 大家好,請(qǐng)問在python腳本中怎么用virtualenv激活指定的環(huán)境?9. linux - 升級(jí)到Python3.6后GDB無法正常運(yùn)行?10. 并發(fā)模型 - python將進(jìn)程池放在裝飾器里為什么不生效也沒報(bào)錯(cuò)
