Peppermint es un proxy inversa .NET simple y ligero basado en ASP.NET, Kestrel e implementa el proyecto YARP de Microsoft (https://github.com/microsoft/reverse-proxy).
Explore los documentos »
· Informe de error · Función de solicitud
Peppermint Reverse Proxy es una implementación simple del proyecto Microsoft YARP (https://microsoft.github.io/reverse-proxy/).
Es una versión fuera de una caja de la biblioteca de proyectos de Microsoft Yarp, intergrado en una aplicación ASP.NET ligera. El objetivo es proponer un proxy inverso de YARP sin tener que pasar por una etapa de desarrollo y solo la configuración de YARP
Las plataformas múltiples están disponibles:
Yarp ofrece:
(De vuelta a la cima)
YARP Reverse Proxy ofrece buenas actuaciones para muchas cargas de trabajo, pero perderá las cargas de trabajo pesadas sin tener más recursos.
| Caso | Muestras | Tiempo promedio (MS) | Tiempo mínimo (MS) | Tiempo máximo (MS) | Rendimiento (http llamado/seg) | Trapos) |
|---|---|---|---|---|---|---|
| Staticwebapp - (directo) | 10000 | 0 | 0 | 4 | 830,77 | 1 |
| Staticwebapp - arr (iis) | 10000 | 1 | 0 | 4 | 635,93 | 1 |
| Staticwebapp -peppermint proxy inverso (portátil) yarp con IIS | 10000 | 1 | 0 | 5 | 627,78 | 1 |
| Apiwebapp (directo) | 10000 | 0 | 0 | 4 | 3935,45 | 1 |
| APIWEBAPP - ARR (IIS) | 10000 | 0 | 0 | 4 | 1590,07 | 1 |
| APIWEBAPP - PPMINTRV YARP EN IIS | 10000 | 0 | 0 | 5 | 1093,37 | 1 |
(De vuelta a la cima)
Debe descomponer binairies y configurar el archivo appsettings.json
Debe instalar ASP.NET 6, 7, 8 tiempo de ejecución. En caso de usar IIS, debe instalarlo antes con ASP.NET 6, 7 paquete.
(De vuelta a la cima)
{
"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 "
}
}
}
}
}(De vuelta a la cima)
Las contribuciones son las que hacen que la comunidad de código abierto sea un lugar tan increíble para aprender, inspirar y crear. Cualquier contribución que haga es muy apreciada .
Si tiene una sugerencia que lo mejore, desembolse el repositorio y cree una solicitud de extracción. También puede simplemente abrir un problema con la etiqueta "Mejora". ¡No olvides darle una estrella al proyecto! ¡Gracias de nuevo!
git checkout -b feature/AmazingFeature )git commit -m 'Add some AmazingFeature' )git push origin feature/AmazingFeature )(De vuelta a la cima)
Distribuido bajo la licencia MIT. Consulte LICENSE.txt para obtener más información.
(De vuelta a la cima)
Alexandre Julien - @alexandrejulien
Enlace del proyecto: https://github.com/alexandrejulien/peppermint.reverseproxy
(De vuelta a la cima)