1. 程式人生 > 其它 >Dapr初體驗之Hello World

Dapr初體驗之Hello World

Dapr介紹

Dapr - Distributed Application Runtime

安裝Dapr

根據官方手冊安裝,由於安裝映象源使用了github導致下載失敗。所以手動下載,複製到了伺服器路徑 /usr/local/bin 目錄下。
解壓縮壓縮檔案 tar xf dapr_linux_amd64.tar.gz
執行 dapr 檢查安裝狀態

官方教程 Hello World

  1. Clone 官方quickstarts倉庫
    git clone -b v1.5.0 https://github.com/dapr/quickstarts.git
    當然,如果伺服器沒有安裝git需要先安裝git yum install -y git
    ,雖然也是從github克隆程式碼,一般情況下比較順利。
    如果你的網路不給力,也可以從碼雲上克隆程式碼。
    git clone -b v1.5.0 https://gitee.com/balabiu/dapr-quickstarts.git
  2. 啟動 Dapr
    必要條件,已經安裝docker服務。
  • 執行命令 dapr init 初始化
  • 執行命令 dapr --version 檢查版本
  1. 檢視示例程式碼
  • 其中一個示例服務是使用node.js開發的,首先你需要檢查你是否有node.js執行時。如果你沒有安裝nodejs,使用包管理器安裝dnf module install nodejs:16,使用node -v
    檢查安裝狀態。
    現在,你可以進入到資料夾 quickstarts/hello-world/node 檢視 app.js 閱讀以下程式邏輯。
    雖然沒有寫過nodejs程式碼,但示例程式碼是很簡單的,通過簡單閱讀基本邏輯是啟動一個http服務端,監聽幾個介面的端節點。
    很簡單的三個介面,訪問node啟動的服務介面,操作dapr。
介面 方法 邏輯
/order GET 請求 http://localhost:3500/v1.0/state/statestore/order 介面,返回訂單狀態
/neworder POST 請求 http://localhost:3500/v1.0/state/statestore/order
介面,新增訂單狀態
/order/:id DELETE 請求 http://localhost:3500/v1.0/state/statestore/order 介面,刪除訂單狀態
  1. 使用Dapr執行nodejs應用
  • 進入 quickstarts/hello-world/node 目錄
  • 執行 npm install 還原包
  • 執行 dapr run --app-id nodeapp --app-port 3000 --dapr-http-port 3500 node app.js 啟動nodejs app
  1. 測試服務
  • 使用POST方法請求介面 http://1.15.252.231:3000/neworder 新增訂單,請求資料如下:
{
    "data": {
        "orderId": "42"
    }
}
  • 使用GET方法請求介面 http://1.15.252.231:3000/order,返回訂單資料Id
  • 使用DELET方法請求介面 http://1.15.252.231:3000/order/42,刪除資料42
  1. 使用Dapr執行Python應用
    這個應用會持續訪問nodejs應用更新訂單Id介面。
  • 進入 hello-world/python 目錄下
  • 使用dapr啟動python應用 dapr run --app-id pythonapp python3 app.py。當然,上面的nodejs應用必須保持執行。
  1. 停止dapr應用
  • 列表 dapr list
  • 停止nodejs應用 dapr stop --app-id nodeapp
  • 停止python應用 dapr stop --app-id pythonapp