《Cloud Native Go》筆記(七)構建數據服務

Cloud Native Go:構建基於Go和React的雲原生Web應用與微服務。Kevin Hoffman, Dan Nemeth著,TalkingData:宋凈超,吳迎松,徐蓓,馬超 譯,電子工業出版社,2017年。

筆記中有些內容直接引用原書。

=======================================================

即使是傻瓜也能寫出被計算機理解的代碼,而只有優秀的程序員才可以寫出人類能讀懂的代碼。——Martin Fowler

本章涵蓋的內容有以下幾個方面:

1. 在MongoDB中構建存儲庫(test-first)

2. 使用新的存儲庫來更新Go服務

3. 集成資料庫的測試

MongoDB本質上是一個文檔資料庫,它可以用來存儲和檢索JSON文檔。同一個集合中的兩個文檔不必具有相同的schema。

通過Go來操作MongoDB。目前唯一被官方支持的Go驅動程序mgo,https://godoc.org/labix.org/v2/mgo。 在雲中使用mgo時,有時候連接會丟失,有時候主機名或IP會漂移。我們開發了一個cfmgo包,github.com/cloudnativeg

集成臨時MongoDB資料庫。每次構建應用程序時使用Wercker和Docker啟動一個空的MongoDB資料庫。構建完成後,資料庫就會消失。

編寫一個集成測試

在雲中運行

後端服務的配置

可以使用REST工具(如Chrome的Postman插件)發出請求來創建match、添加move、刪除和查詢match詳情等。

可以使用MongoLab dashboard程序來查看資料庫詳細信息。

推薦閱讀:

TAG:微服務架構 | Go編程 | CloudNativeGo書籍 |