代码之家  ›  专栏  ›  技术社区  ›  Pratik Bhattacharya

在Azure App Services for Linux中运行.NET核心API的性能问题

  •  0
  • Pratik Bhattacharya  · 技术社区  · 5 年前

    然而,在移植它们并运行一些性能套件之后,我发现Linux和Windows应用程序服务之间存在一些严重的性能差异。我原以为Linux应用程序服务的性能会有所提高或保持不变,但令我沮丧的是,性能实际上有所下降。以下是一些结果:

    +-----------------------------------------------+-----------+--------+---------+
    | Operation                                     | User Load | Linux  | Windows |
    +-----------------------------------------------+-----------+--------+---------+
    | Cosmos DB Read                                | 50        | 600 ms | 60 ms   |
    +-----------------------------------------------+-----------+--------+---------+
    | Simple Ping                                   | 50        | 30 ms  | 20 ms   |
    +-----------------------------------------------+-----------+--------+---------+
    | 15 parallel calls to Azure Feature Management | 50        | 510 ms | 160 ms  |
    +-----------------------------------------------+-----------+--------+---------+
    

    是什么导致了Linux的性能下降?它是一个.NET核心的东西,Windows的性能比Linux好。如果是这样的话,这会在.NET5或其他后续版本中获得地址吗?

    0 回复  |  直到 5 年前
        1
  •  2
  •   Noah Stahl    5 年前

    documented performance preference 对于Windows,在使用.NET SDK时:

    我们建议使用Windows 64位主机处理以提高性能。 本地查询。ServiceInterop.dll仅在Windows上受支持 x64平台。对于Linux和其他不受支持的平台 到网关以获取优化的查询。

    推荐文章