Ocelot 閘道器搭建(二)

2021-09-19 16:35:41 字數 1167 閱讀 7759

出處:

專案新增進來後的結構如下所示:

configureservices服務中ocelot的注入的同時需要注入我們的擴充套件方法,如下所示:

services.addocelot()//注入ocelot服務

.addauthlimitcache(option=> )

.addconsul();

我們在資料庫中配置乙個路由吧,如下所示:欄位名稱基本都是跟ocelot原生配置名稱一樣,只是擴充套件了一些字段方便後期做限流的

大家看到沒有,這條路由的意思是接受/ss1/ 的路由,然後轉到到下面就是/api/ 。

路由配置好了,那就讓我們啟動一下專案看下效果吧。

上面是正常的訪問結果,當我們訪問乙個錯誤的路由的時候,再看看吧。

看到沒有,返回了404的狀態碼,感覺不夠友好,所以,我們也進行了改造。直接看結果吧

為了看到效果,你需要在configure中少做下修改

然後我們重新啟動下ocelot閘道器專案,重新訪問下6中的url吧。

看到沒有,返回的資料更友好,而且是200的狀態。當然大家也可以忽略這個功能哈。

本文主要通過例項講述如何整合,將配置檔案儲存到資料庫的外掛程式。原始碼已經開源,今天暫時沒有發布nuget包,明天再發布吧。當然你可以自行擴充套件**。實現你自己的業務。我把配置檔案儲存到資料庫的目的就是方便後面做ui管理方便,還有就是可以基於這些路由在資料庫中對每個客戶端進行單獨的限流。最後感謝大家的閱讀。

Ocelot 閘道器搭建(一)

依賴專案 net core 2.0 空專案 新增應用設定檔案 ocelot.json 負載均衡 loadbalancer leastconnection 將請求發往最空閒的那個伺服器 roundrobin 輪流傳送 noloadbalance 總是發往第乙個請求或者是服務發現 限流 ratelimi...

使用Ocelot做閘道器

1首先建立乙個json的配置檔案,檔名隨便取,我取ocelot.json 這個配置檔案有兩種配置方式,第一種,手動填寫 服務所在的ip和埠 第二種,用consul進行服務發現 第一種如下 手動指明ip和埠號 downstreamhostandports 請求格式 例如,我的ocelot ip是127...

c 微服務Ocelot閘道器服務發現

前面提到微服務方案,介紹了該東西,推薦一篇介紹博文 我要說的是ocelot服務發現方案,其自身已經整合了consul,eureka服務發現,其專案名稱分別是ocelot.provider.consul,ocelot.provider.eureka。配置使用方法 globalconfiguration...