回覆列表
-
1 # 建江43
-
2 # X工程師
單從5萬這個租戶數來看,資料量很小了,不過也要考慮其他方面:
1、你這個saas系統會包括哪些型別的資料,5萬租戶資訊會產生哪些資料,評估下總資料的量級
2、再考慮到資料的增量增長量級以及租戶數也有可能增長的量級
3、saas系統來說,資料安全應該非常非常重要,定期資料異地備份肯定是需要的
4、沒看出併發量能有多大,主從資料庫就自己看著辦吧,具體情況沒表述出來,需要多少資料庫機器還是要看具體情況
5、單租戶獨立資料庫? 一個租戶的所有資訊獨立一個數據庫? 這種設計少見啊,雖然完美避開了資料相互訪問的安全問題,但是這種設計擴充套件,維護,效能並不好吧,
-
3 # EnjoyCode
幫樓主從成本的角度來分析一下各方案:
1. 單租戶獨立資料庫:部署運維的成本高(5萬個例項),優勢是能針對單獨租戶個性化,但共性需求變更每個資料庫都要修改;
2.一個Sql庫 + NoSql叢集: 成本適中,關係庫存放強一致性資料(訂單等), NoSql存放基礎資料及歸檔資料,劣勢是程式碼稍微複雜一些;
3.NewSql叢集:成本適中,優勢是程式碼基本不需要變動。
我不推薦單租戶獨立資料庫。
給你個參考,我們也差不多這個數
1.所有租戶一個數據庫,能減少很多維護費用
2.所有表,租戶號一定要做主鍵的第一個欄位,這樣物理連續,效能可以提高很多
3.所有業務資料只保留3個月,定時將業務資料傳到歸檔伺服器,查歷史從歸檔查
4.如果是大客戶,可以給他們單獨部署實時資料庫,資料也定時同步到歸檔。這個就看客戶給的錢是多少了。
給你個配置
實時資料庫 阿里雲sqlserver 120多g記憶體,高可用獨享資料庫 3年共60多萬
歸檔資料庫 12g記憶體
應用伺服器 4核8G 共20多臺 每臺3年8000
負載均衡 中檔 30M獨享
應用伺服器負載在60%左右,資料庫50%,實時線上使用者在35000個左右