Solución:
Aquí está el archivo XSLX del repositorio de GitHub donde puede ver las comparaciones de rendimiento que está buscando.
Abra el archivo en Excel y marque la pestaña “Más reciente”.
Actualización: el archivo de Excel ya no está disponible y se ha reemplazado por un panel interactivo de Power BI.
Hice un poco de evaluación comparativa para mi proyecto actual, alojando aplicaciones .net core 1.0 y 2.0 en IIS y Kestrel. Las pruebas fueron CRUD de rest-api del mundo real con autenticación / autorización, registro, métricas, limitación de velocidad, etc. Además, las aplicaciones principales de .net se realizaron completamente según el libro de MS, cumpliendo con los estándares 1.0 / 2.0 recomendados.
Con las mismas configuraciones de hardware, el alojamiento detrás de IIS atendía constantemente alrededor de un 40% más de solicitudes por segundo. Sigo sin poder encontrar un artículo o un consultor que pueda explicar la diferencia de rendimiento.
También traté de encontrar algún tipo de consejos de optimización de la autoridad principal de evaluación comparativa https://github.com/aspnet/benchmarks, hurgando en la configuración y los inicializadores de servicio, pero aún así, IIS fue simplemente más rápido.
¿Algún consejo?
A partir de noviembre de 2016, directamente de los puntos de referencia de ASP.NET.
En Windows Server 2012, con una profundidad de canalización de 16:
stack on RT requests/sec
ASP.NET 4.6 IIS CLR 57,792
ASP.NET 5 Kestrel CoreCLR 1,188,521
Eso es una aceleración de 20x o 2000%. Entiendo un IIS completo frente a un Kestrel independiente, pero espero que alguien del equipo de ASP.NET pueda profundizar en esto porque la diferencia es tremenda.
Eso y por qué es mucho más lento en Linux.