微信小遊戲爆款秘笈 資料庫MongoDB攻略篇

2021-08-22 19:22:40 字數 1111 閱讀 5983

以下為分享內容要點:

一、為什麼在小遊戲開發場景下,使用mongodb是比較合適的?

1.需求靈活多變:

如果使用schema的資料庫,那麼每次需求變動都可能需要開發者去改資料庫。帶來得開發成本極大。

使用mongodb這種no schema的資料庫可以在需求變動時不用更改資料結構,可以靈活增減字段,節約成本並提高效率。

mongodb原生支援geo地理位置資訊儲存,同時還提供geosearch和geonear等api,可以獲取使用者附近玩家資訊,使用者可以方便通過api拉取好友id和獲取附近的玩家,使用起來非常方便。

3.海量資料支援&動態不停服公升級:

4.運營資料分析支援:

mongodb原生mapreduce功能,運營分析系統可以直接連過來使用資料進行分析,無論是使用者登入資料還是行為資料輕鬆搞定。

5.nodejs完美支援:

6.nodejs和mongodb是一起配合成長起來的。在小遊戲的開發場景下,一般後面會有乙個分布式的gameservice,前面配乙個負載均衡,最後配多個mongodb資料庫。

1、 優化mongodb的連線模型,支援更多的長連線。

由於原生mongodb的後端連線模型分兩部分,第一部分是mongos對客戶端的連線,第二部分是mongos對mongod的連線。對客戶端的連線,採用的是one-thread-pear-connection,也就是每乙個客戶端連線打過來的時候,都會去建乙個執行緒,每乙個執行緒都會占用1mb的記憶體,所以當連線非常多的話,例項就會變得很卡。在後端建立連線的時候,是採用乙個執行緒池的結構。每乙個執行緒池,負責處理乙個客戶端的連線,然後每乙個worker裡面又有n個執行緒池,每乙個執行緒池又負責每乙個mongod連線。

\2. 讀寫分離,提高qps,減少慢查詢

\3. 提供分片集群,業務量暴增時可靈活擴充套件

\4. 提供庫表回檔,細粒度快速處理錯誤。

\5. 提供表級監控,更精準、更細粒度監控業務健康度。

\6. 時序資料庫ctsdb的應用

如何公升級mongodb?

redis雲端架構深入淺出

給你的cvm安裝乙個面板吧!

海量技術實踐經驗,盡在雲加社群!

微信小遊戲爆款秘笈 資料庫MongoDB攻略篇

以下為分享內容要點 一 為什麼在小遊戲開發場景下,使用mongodb是比較合適的?1.需求靈活多變 如果使用schema的資料庫,那麼每次需求變動都可能需要開發者去改資料庫。帶來得開發成本極大。使用mongodb這種no schema的資料庫可以在需求變動時不用更改資料結構,可以靈活增減字段,節約成...

微信小遊戲雲開發資料庫

初始化雲開發 可以傳入乙個預設使用的環境名稱 wx.cloud.init 初始化資料庫 這裡的環境引數應傳入雲開發資料庫中對應環境id const db wx.cloud.database 指定使用的集合 這裡若資料庫中集合名不存在,不會建立新的集合 db.collection 集合名 更新資料 這...

微信小遊戲的下乙個爆款,可能不會是超輕度遊戲了

8 月 19 日,第九季微信公開課小遊戲專場在廣州開講。作為今年第一場線下微信公開課,小遊戲團隊公布了上半年的一些重要資料。除了上半年的成績匯報,另有兩方面值得關注 一是微信小遊戲商業化模式正在加速,二是平台已經準備好迎接重度遊戲。超輕度 的微信小遊戲準備 登堂入室 商業化未達預期 微信小遊戲團隊的...