日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用 Tye 辅助开发 k8s 应用竟如此简单(六)

發布時間:2023/12/4 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用 Tye 辅助开发 k8s 应用竟如此简单(六) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

續上篇,這篇我們來進一步探索 Tye 更多的使用方法。本篇我們將進一步研究 Tye 與分布式應用程序運行時 Dapr 如何碰撞出更精彩的火花。

巧了,巧了,真是巧了

今天正值 dapr 1.0 發布的日子。如果你暫時還不了解什么是 dapr。

那不如通過以下簡短的視頻來了解一下什么是 dapr:

https://www.bilibili.com/video/BV1xz4y167XA/

簡單來說, dapr 為開發者提供了一個開發云原生應用所需構件的一個抽象層。透過這個抽象層,開發者可以節約很多基礎設施上所需要投入的精力,進一步得到自我解放。

安裝 Dapr runtime

為了在開發環境運行 dapr runtime。需要先在開發機上進行一些簡單的安裝。

開發者可以通過 dapr 文檔庫中的 get started 章節來了解如何在本地初始化開發環境:

https://docs.dapr.io/getting-started/

當然,你也可以通過社區提供的中文文檔庫來了解相關過程:

https://dapr-cn.gitee.io/getting-started/

dapr 中文社區致力于為中文用戶提供更加易讀的 dapr 文檔中文譯制內容。現在,我們仍然需要更多志同道合的伙伴一同獻力,協作奮進。如果您有意愿,歡迎前往項目首頁進行了解:https://github.com/dapr-cn/docs

創建測試應用

首先,我們創建一個和 {% post_link Newbe.Claptrap/Try-Tye-2 %} 中提到一樣的測試用例。

即,包含兩個服務的測試應用。

然后,修改tye.yml以加入 dapr 擴展:

name:?tyetest extensions:-?name:?dapr services:-?name:?tyetestproject:?TyeTest/TyeTest.csproj-?name:?tyetest2project:?TyeTest2/TyeTest2.csproj

運行tye run,便可以在 tye dashboard 中查看成功運行的服務實例和 dapr 實例:

dapr instance

使用 swagger 頁面,可以正常的訪問服務。

同時,按照 dapr http 訪問服務也是可以的:

GET http://localhost:5295/v1.0/invoke/tyetest/method/WeatherForecast

使用以上方式訪問得到的結果和 swagger 得到的一樣。其中 5295 端口就是上圖中所示的 dapr http 終結點??梢酝ㄟ^日志查看到這個信息:

[tyetest-dapr_6432571f-b]:C:\Users\Administrator/.dapr/bin/daprd.exe?-app-id?tyetest?-app-port?5290?-dapr-grpc-port?5294?--dapr-http-port?5295?--metrics-port?5296?--placement-host-address?localhost:5289

這便是使用 tye 簡化 dapr 應用開發的簡易示例。

來點復雜的例子

下面,我們來嘗試運行 Newbe.Claptrap 的最新模板項目,體驗一下 Tye 與 dapr 結合的強力效果。

安裝項目模板

進入 nuget.org 查詢最新的 Newbe.Claptrap.Template 版本,并且使用界面上的命令行安裝項目模板:

https://www.nuget.org/packages/Newbe.Claptrap.Template/

dotnet?new?--install?Newbe.Claptrap.Template::0.9.4

使用模板創建項目

創建一個文件夾,然后在文件夾中運行以下命令以創建項目:

dotnet?new?newbe.claptrap?--name?HelloClaptrap

部署輔助組件

新建好的項目中存在一個docker-compose.yml文件,用于開發者部署 seq 和 zipkin 等等輔助組件。

將此文件移動到單獨的位置,使用docker-compose up -d便可以順利啟動服務。

當然,開發者也可以自行采用其他方式部署,或者不要部署。這并非必要的內容。

啟動項目

在解決方案文件夾,使用tye run便可以順利啟動項目。啟動之后可以在 tye dashboard 上查看到項目模板包含的所有項目:

newbe.claptrap service

進入helloclaptrap-webapi服務的 swagger 頁面。調用/AuctionItems/{itemId}/statusAPI:

newbe.claptrap AuctionItems

這就說明服務已經全部啟動成功了。

這實際上是一個拍賣競價的樣例項目。更多的細節可以前往 https://claptrap.newbe.pro 進行了解。

調用之后可以在 Jaeger UI 上查看到服務之間的調用關系和性能細節:

newbe.claptrap AuctionItems

小結

本篇,我們嘗試了 Tye 和 Dapr 的聯動操作。初步體驗了一下 dapr 的特性。

開發者如果想要了解更多關于 dapr 的內容,歡迎閱讀官網文檔進行了解。

至此,本系列也就告一段落。如果您覺得本系列內容對您有所幫助,歡迎轉發、評論、收藏文章以及項目。

本系列所有測試代碼,均可以在以下倉庫查看:

https://github.com/newbe36524/Newbe.Demo/tree/master/src/BlogDemos/Newbe.Tye

總結

以上是生活随笔為你收集整理的使用 Tye 辅助开发 k8s 应用竟如此简单(六)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。