Peppermint는 Asp.net, Kestrel을 기반으로 간단하고 가벼운 .NET 리버스 프록시이며 Microsoft (https://github.com/microsoft/reverse-proxy)의 YARP 프로젝트를 구현합니다.
문서 탐색»
·보고 버그 · 요청 기능
Peppermint Reverse Proxy는 Microsoft Yarp Project (https://microsoft.github.io/reverse-proxy/)의 간단한 구현입니다.
Microsoft Yarp Project Library의 박스 버전 중 하나이며 Light ASP.NET 응용 프로그램으로 삽입되었습니다. 목표는 개발 단계를 거치지 않고 YARP의 구성 만 제안하는 것입니다.
배수 플랫폼이 제공됩니다.
YARP 제안 :
(뒤로 맨 위로)
YARP Reverse Proxy는 많은 워크로드에 대한 좋은 성능을 제공하지만 더 많은 리소스가 없으면 무거운 워크로드에서 느슨해집니다.
| 사례 | 샘플 | 평균 시간 (MS) | 최소 시간 (MS) | 최대 시간 (MS) | 처리량 (HTTP Call/SEC) | 실 (S) |
|---|---|---|---|---|---|---|
| staticwebapp- (직접) | 10000 | 0 | 0 | 4 | 830,77 | 1 |
| staticwebapp -arr (IIS) | 10000 | 1 | 0 | 4 | 635,93 | 1 |
| IIS가있는 staticWebApp -PepperMint 리버스 프록시 (휴대용) YARP | 10000 | 1 | 0 | 5 | 627,78 | 1 |
| apiwebapp (직접) | 10000 | 0 | 0 | 4 | 3935,45 | 1 |
| Apiwebapp -Arr (IIS) | 10000 | 0 | 0 | 4 | 1590,07 | 1 |
| Apiwebapp -PPMINTRV YARP의 IIS | 10000 | 0 | 0 | 5 | 1093,37 | 1 |
(뒤로 맨 위로)
binairies를 풀고 AppSettings.json 파일을 구성해야합니다
ASP.NET 6, 7, 8 런타임을 설치해야합니다. IIS를 사용하는 경우 ASP.NET 6, 7 번들을 사용하기 전에 설치해야합니다.
(뒤로 맨 위로)
{
"AllowedHosts" : " * " ,
"Logging" : {
"LogLevel" : {
"Default" : " Information " ,
"Microsoft" : " Information " ,
"Microsoft.Hosting.Lifetime" : " Information "
}
},
"Serilog" : {
"Using" : [ " Serilog.Sinks.File " ],
"MinimumLevel" : " Information " ,
"WriteTo" : [
{
"Name" : " File " ,
"Args" : {
"path" : " proxy-.log " ,
"rollingInterval" : " Day "
}
}
]
},
"ReverseProxy" : {
"Routes" : {
"route1" : {
"ClusterId" : " defaultCluster " ,
"Match" : {
"Path" : " {**catch-all} "
},
"Transforms" : [
{ "PathPrefix" : " / " },
{ "RequestHeadersCopy" : " true " },
{ "RequestHeaderOriginalHost" : " false " }
]
}
},
"Clusters" : {
"defaultCluster" : {
"Destinations" : {
"destination1" : {
"Address" : " https://api.ipify.org/ "
}
},
"HttpClient" : {
"DangerousAcceptAnyServerCertificate" : " true " ,
"EnableMultipleHttp2Connections" : " true "
}
}
}
}
}(뒤로 맨 위로)
공헌은 오픈 소스 커뮤니티를 배우고, 영감을주고, 창조 할 수있는 놀라운 장소입니다. 당신이하는 모든 기여는 대단히 감사합니다 .
이를 더 좋게 만드는 제안이 있다면, repo를 포크하고 풀 요청을 만듭니다. "Enhancement"태그에 문제를 열면 간단히 문제를 열 수도 있습니다. 프로젝트에 별을주는 것을 잊지 마십시오! 다시 한 번 감사드립니다!
git checkout -b feature/AmazingFeature )git commit -m 'Add some AmazingFeature' )git push origin feature/AmazingFeature(뒤로 맨 위로)
MIT 라이센스에 따라 배포됩니다. 자세한 내용은 LICENSE.txt 참조하십시오.
(뒤로 맨 위로)
Alexandre Julien- @alexandrejulien
프로젝트 링크 : https://github.com/alexandrejulien/peppermint.reverseproxy
(뒤로 맨 위로)