月度歸檔:2019年05月

使用模式構建:總結

現在到了我們總結使用模式構建系列的時候,這是一個很好的機會回顧一下這個系列涵蓋的模式所解決的問題,并著重復習每個模式所具有的一些好處以及做出的權衡。關于模式設計,最常見的問題是“我正在設計一個要做某某事情的應用程序,如何對數據建模?”正如我們希望你在學習本系列過程中可以體會到的那樣,要回答這個問題,[......]

閱讀全文

使用模式構建:模式版本控制模式(The Schema Versioning Pattern)

有一種說法,生命中唯一不變的東西就是變化。這同樣適用于數據庫模式。我們會想要獲取我們曾經認為不需要的信息。或者一些新上線的服務需要包含在數據庫記錄中。不管變更背后的原因是什么,一段時間之后,我們不可避免地需要對應用程序中的底層模式設計進行更改。雖然這經常會在傳統的表格數據庫系統中帶來一些挑戰甚至是麻[......]

閱讀全文

最常用的MongoDB命令對應的鼠標點擊操作

工欲善其事必先利其器,學新技術亦然。
對于MongoDB而言,Studio 3T正是這樣一件工具.這是一種MongoDB的圖形化界面,用簡便的上下文菜單替代了最常用的MongoDB命令,通過拖拽查詢生成器、簡易多格式導入和導出、以及適當的編輯(只要做一些命名工作)這些有力的特性,節省了程序員大量的時[......]

閱讀全文

是什么造成了數據庫的卡頓

一、背景

MongoDB 提供了非常強大的性能分析及監控的命令,諸如 mongostat、mongotop 可以讓我們對數據庫的運行態性能了如指掌。
然而,這次我們在性能環境上就遇到一個非常棘手的問題:

某服務接口在 1-5分鐘內偶現超時導致業務失敗!

在接口調用上返回超時屬于前端的判斷,通常[......]

閱讀全文

使用模式構建:文檔版本控制模式(The Document Versioning Pattern)

數據庫,例如MongoDB,非常擅長查詢大量數據并進行頻繁更新。然而,在大多數情況下,我們只針對數據的最新狀態執行查詢。那如果有些場景下我們需要查詢數據的以前狀態呢?如果我們需要一些文檔的版本控制功能怎么辦?這就是我們可以使用文檔版本控制模式的地方。

這個模式的關鍵是保持文檔的版本歷史記錄處于可用[......]

閱讀全文