Dapr初體驗之Hello World
阿新 • • 發佈:2021-11-22
Dapr介紹
Dapr - Distributed Application Runtime
安裝Dapr
根據官方手冊安裝,由於安裝映象源使用了github導致下載失敗。所以手動下載,複製到了伺服器路徑 /usr/local/bin
目錄下。
解壓縮壓縮檔案 tar xf dapr_linux_amd64.tar.gz
執行 dapr
檢查安裝狀態
官方教程 Hello World
- Clone 官方quickstarts倉庫
git clone -b v1.5.0 https://github.com/dapr/quickstarts.git
當然,如果伺服器沒有安裝git需要先安裝gityum install -y git
如果你的網路不給力,也可以從碼雲上克隆程式碼。
git clone -b v1.5.0 https://gitee.com/balabiu/dapr-quickstarts.git
- 啟動 Dapr
必要條件,已經安裝docker服務。
- 執行命令
dapr init
初始化 - 執行命令
dapr --version
檢查版本
- 檢視示例程式碼
- 其中一個示例服務是使用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 介面,刪除訂單狀態 |
- 使用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
- 測試服務
- 使用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
- 使用Dapr執行Python應用
這個應用會持續訪問nodejs應用更新訂單Id介面。
- 進入 hello-world/python 目錄下
- 使用dapr啟動python應用
dapr run --app-id pythonapp python3 app.py
。當然,上面的nodejs應用必須保持執行。
- 停止dapr應用
- 列表
dapr list
- 停止nodejs應用
dapr stop --app-id nodeapp
- 停止python應用
dapr stop --app-id pythonapp