欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

.NET反向代理組件YARP介紹

 更新時間:2022年09月24日 10:15:35   作者:一事冇誠  
Yarp是微軟團隊開發(fā)的一個反向代理組件,除了常規(guī)的http和https轉(zhuǎn)換通訊,它最大的特點是可定制化,很容易根據(jù)特定場景開發(fā)出需要的定制代理通道。這篇文章介紹了.NET的反向代理組件YARP,對大家的學(xué)習(xí)或者工作具有一定的參考價值,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

什么是 YARP

YARP (另一個反向代理) 設(shè)計為一個庫,提供核心代理功能,你可以根據(jù)應(yīng)用程序的特定需求進行自定義。

YARP 是使用 .NET的基礎(chǔ)架構(gòu)構(gòu)建在 .NET上的。
YARP 的主要不同之處在于,它被設(shè)計成可以通過 .NET 代碼輕松定制和調(diào)整,以滿足每個部署場景的特定需求。

同時,YARP是一個開源項目,托管于 Github 上,開源地址https://github.com/microsoft/reverse-proxy

什么是反向代理

反向代理服務(wù)器是代理服務(wù)器中的一種,它是在Web服務(wù)器之前實現(xiàn)的,并將客戶端請求定向到特定的后端服務(wù)器。通常,反向代理有助于提高Web服務(wù)器的安全性和性能,并防止過載。

反向代理作用

1.負載平衡。通常,擁有許多日常用戶的網(wǎng)站無法使用一個原始服務(wù)器處理所有流量。因此,網(wǎng)站會在不同后端服務(wù)器的群集之間均衡分配用戶流量。這些服務(wù)器管理同一網(wǎng)站的客戶端請求。

此外,反向代理可以避免任意單個服務(wù)器過載,因為所有站點的流量都必須通過反向代理。只有這樣,流量才能訪問特定的后端服務(wù)器。

2.保護免受黑客攻擊。如果網(wǎng)站使用反向代理,則其服務(wù)器的地址將被隱藏,黑客只能訪問代理IP地址。這對黑客和惡意實體起到了一定的防護。

例如:對使用反向代理的網(wǎng)站進行分布式拒絕服務(wù)(DDoS)攻擊要困難得多。DDoS攻擊是通過破壞主機服務(wù)與互聯(lián)網(wǎng)的連接,從而使用戶無法訪問該網(wǎng)站。

當(dāng)網(wǎng)站使用反向代理時,黑客將只能攻擊這些代理,這將作為附加的安全層。

3.緩存。緩存使網(wǎng)站可以有效地重用以前獲得的數(shù)據(jù)。這是將文件副本存儲在緩存中以便更迅速地訪問的過程。這使網(wǎng)站和應(yīng)用程序可以更高效地運行。

反向代理服務(wù)器可用于緩存網(wǎng)站的內(nèi)容并提高網(wǎng)站的性能。

如何使用YARP

YARP是基于.Net架構(gòu)的一個庫,其提供了核心代理功能,而又因為 .Net Core 是跨平臺的,所以可以應(yīng)用在 windows 于 linux 上;

既然是一個庫,首先第一步肯定是創(chuàng)建一個新項目,并且安裝上這一個庫:

1、創(chuàng)建一個空的.Net Core 項目

2、在NuGet包管理器中,安裝Yarp.ReverseProxy

或者使用dotnet 命令安裝

dotnet add package Yarp.ReverseProxy --version 1.1.1

3、在Program.cs 中增加配置,.Net 5 及以下版本在 Startup.cs 中添加

Program.cs

var reverseProxyConfig = builder.Configuration.GetSection("ReverseProxy");
builder.Services.AddReverseProxy().LoadFromConfig(reverseProxyConfig);
app.UseEndpoints(endpoints =>
{
    endpoints.MapReverseProxy();
});

Startup.cs

- ConfigureServices

services.AddReverseProxy().LoadFromConfig(Configuration.GetSection("ReverseProxy"));

- Configure

app.UseEndpoints(endpoints =>
{
    endpoints.MapReverseProxy();
});

4、在 appsetting 中添加ReverseProxy 節(jié)點以及配置項

"ReverseProxy": {
  "Routes": {
    "route1": {
      "ClusterId": "yarp",
      "Match": {
        "Path": "{**catch-all}"
      }
    }
  },
  "Clusters": {
    "yarp": {
      "LoadBalancingPolicy": "RoundRobin",
      "Destinations": {"blazor": {
          "Address": "https://www.blazor.zone/"
        },
        "baidu": {
          "Address": "https://www.baidu.com/"
        }
      }
    }
  }
}

大功告成,可以愉快玩耍了!

寫在最后

Bootstrap Blazor 官網(wǎng)地址:https://www.blazor.zone

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接

相關(guān)文章

最新評論