iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 22
1
Software Development

三十天利用Angular與.net Core開發實戰一波系列 第 22

Day 22 MongoDB in Azure - Azure Cosmos DB

  • 分享至 

  • xImage
  •  

當我們的API放上Azure後

想當然爾我們的資料庫也要放上Azure

在Azure放DB的話,Azure提供一種產品叫做Azure Cosmos DB

Azure Cosmos DB 是全域散發、多模型資料庫服務,支援文件、索引鍵 / 值組、寬列資料行及圖形資料庫

Azure Cosmos DB

  • 全域分散式資料庫,讓資料放在使用者所在的區域,確保客戶的可能延遲最低
  • 支援許多資料模型的API,如SQL、MongoDB、Cassandra、Gremlin、資料表
  • 幫你處理後台資料庫的管理與資訊運算,降低維護成本
  • 微軟官方有很詳細的介紹與解釋
    https://docs.microsoft.com/zh-tw/azure/cosmos-db/introduction

附上一張比較圖

說到底我們可以直接使用Azure上的Cosmos DB服務來建一個MongoDB

MongoDB in Azure

首先點選來建一個Azure Cosmos DB account

Network與Tags沒有特別指定,可以直接按點選


最後summary確認後就可以部屬拉

部屬的時間大約3分鐘

成功以後就可以進入30daytri

進入以後選取

建一個triathlon資料庫

db.Users.insertMany([
    {UserId:"1",UserName:"Linda"},
    {UserId:"2",UserName:"Lue"},
    {UserId:"3",UserName:"James",Birthday:"2000/01/01"},
    {UserId:"4",UserName:"Webber",Birthday:"1988/01/01"},
    {UserId:"5",UserName:"Wade",Birthday:"2010/01/01",Phone: "234-5678"}])

修改一下我們後端web api的連線位置

DataAccess.cs

 string connectionString =
@"mongodb://30daytri:XXX==@30daytri.documents.azure.com:10255/?ssl=true&replicaSet=globaldb";
       
public DataAccess()
 {
   MongoClientSettings settings = MongoClientSettings.FromUrl(new MongoUrl(connectionString));
   settings.SslSettings = new SslSettings() { EnabledSslProtocols = SslProtocols.Tls12 };
   _client = new MongoClient(settings);
   _server = _client.GetServer();
   _db = _server.GetDatabase("triathlon");
  }
  • 測試囉
    這邊很重要記得選專案TestWebAPI別選IIS Express

用postman呼叫

將Web API部屬上Azure呼叫也行


上一篇
Day 21 將. net Core Web API 部屬至 Azure
下一篇
Day 23 Angular專案部屬至Azure
系列文
三十天利用Angular與.net Core開發實戰一波32
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言