mar*_*ker 4 performance .net-core asp.net-core
在 Dotnet 核心中,有两个内置服务器 Kestrel 和 HTTP.sys。
我想知道这两个服务器之间的区别,以及在性能、可靠性、微服务友好等方面何时使用特定服务器。
答案:来自 Microsoft 官方文档的Kestrel 与 HTTP.sys。
小智 6
请参阅Microsoft 官方文档中的Kestrel 与 HTTP.sys。
主要区别在于 HTTP.sys 仅适用于 windows,而 kestrel 也可以在 linux 上运行。这也意味着 HTTP.sys 与 Windows 身份验证“开箱即用”一起工作,设置很少,而 kestrel 需要更多设置来进行设置。性能方面,它们与 http.sys 相似,因为它针对 Windows 进行了优化,因此速度要快一些。IIS 的基础也是 HTTP.sys。
可靠性不仅取决于服务器,还取决于它所在的基础设施。IE 如果你把两者都放在 docker 和 kubernetes 中,它们将是可靠和可扩展的,因为你将有容器来处理那部分。
现在我在两者上都有微服务,它们非常友好,我将它们用于不同的目的,环境取决于相关服务。
还要提一下,对于面向公众的服务,我无论如何都使用反向代理,我不熟悉两者在该角色中的作用。话虽如此,如果您有前端服务,Microsoft 建议使用 HTTP.sys,因为它对开箱即用的攻击更具弹性,但正如我所说,因为我的服务位于处理这些请求的反向代理之后,无法验证声明。
希望这个对你有帮助
归档时间: |
|
查看次数: |
2959 次 |
最近记录: |