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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

Ocelot中使用Butterfly实践

發布時間:2023/12/4 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Ocelot中使用Butterfly实践 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Ocelot(https://github.com/TomPallister/Ocelot)是一個用.net core實現的API網關,Butterfly(https://github.com/ButterflyAPM/butterfly)是用.net core實現的全程序跟蹤,現在,Ocelot中可以使用Butterfly了,關于Ocelot和Butterfly具體功能參見各自的github站點,關于Ocelot和Butterfly組合實現,參數張善友博客http://www.csharpkit.com/2018-02-04_51207.html,本篇博客講述一個案例的實現。

博客中代碼參見https://github.com/axzxs2001/Asp.NetCoreExperiment/tree/master/Asp.NetCoreExperiment/OcelotAndButterfly,可只下載下面的項目進行測試。

項目說明表:

項目名稱

項目類型

端口

說明

OcelotGateway

web api

5000

網關項目

API001

web api

5001

業務api項目

API002

web api

5002

業務api項目

TestAPI

web api

5577

測試api項目

Ocelot

類庫

Ocelot官方源碼,因為有個bug,以進行pr,所以現在把clone下載來作了個修復,后續官方會修正。

Butterfly-web-preview-0.0.8

Web api

9618

Butterrfly執行程序,用來收集經過節點的數據,并作展示,可以過來http://localhost:9618來訪問

?

項目結構:

?

API001和API002本身代碼非常簡單,就是請求后返回一個帶時間的字符串,API001在返回前,會調用API002,因為有網關存在,所以在API001的實現方法是請求網關中的API002映射路徑的(詳見項目代碼),而不是直接訪問API002(因為在微服務集群中,API002應該有多個節點,這些節點通過服務注冊后才知道具體地址,所以在調用的時候,通過訪問網關的地址來達到訪問API002。

TestAPI中請求的是網關中的API001的映射(詳見項目代碼)

OcelotGateway中配置文件configuration.json中,開啟各ReRoutes中的HttpHandlerOptions下的UseTracing:true即可(詳見項目代碼)

需要引用butterfly.Client.AspNetCore項目有:API001,API002,OcelotGateway,TestAPI,現在butterfly.Client.AspNetCore版本是0.0.8,有bug(與作者聯系后期版本會修正),可以引用0.0.7進行測試。

請求的路徑如下圖:

?

請求從TestAPI的URL:http://localhost:5577/api/values/1開始,TestAPI利用HttpClient請求網關URL:http://localhost:5000/api001/values,網關中會利用HttpClient轉配置中映射URL:http://localhost:5001/api/values,API001會利用HttpClient請求URL:http://localhost:5000/api002/values,網關中會利用HttpClient轉配置中映射URL:http://localhost:5002/api/values

?

需要啟動項目:

1、 用dotnet Butterfly.Web.dll --EnableHttpCollector=true啟動Butterfly-web-preview-0.0.8

2、 啟動OcelotGateway

3、 啟動API001

4、 啟動API002

?

打開http://localhost:9618

查看Traces

?

?

可以通過Traces第二張圖請求的上下級序順可以看到與我們上面分析的請求路徑一致。

查看Dependencies

?

如果Dependencies中把雙箭頭改成兩個單箭頭,加上求步驟序列編號就更清晰了。

相關文章:

  • Ocelot——初識基于.Net Core的API網關

  • Ocelot API網關的實現剖析

  • 微服務網關Ocelot

  • API網關Ocelot 使用Polly 處理部分失敗問題

  • 談談微服務中的 API 網關(API Gateway)

  • Ocelot網關

  • Ocelot統一權限驗證

  • 應用監控怎么做?

  • ASP.NET Core之跨平臺的實時性能監控

  • .Net Core 2.0+ InfluxDB+Grafana+App Metrics 實現跨平臺的實時性能監控

  • 應用程序的8個關鍵性能指標以及測量方法

  • 使用Metrics監控應用程序的性能

  • 下一個計劃 : .NET/.NET Core應用性能管理

  • Ocelot監控

  • Ocelot 集成Butterfly 實現分布式跟蹤

原文:http://www.cnblogs.com/axzxs2001/p/8478340.html


.NET社區新聞,深度好文,歡迎訪問公眾號文章匯總 http://www.csharpkit.com

總結

以上是生活随笔為你收集整理的Ocelot中使用Butterfly实践的全部內容,希望文章能夠幫你解決所遇到的問題。

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