连接国外网站做端口映射,网站和新媒体建设审批制度,系统开发需求,百度收录情况据微软工程师Mukul Sabharwal介绍#xff0c;在将微软搜索引擎必应迁移到.NET Core 2.1之后#xff0c;内部服务延迟降低了34%#xff0c;这主要归功于.NET社区贡献的改进。按照Sabharwal的说法#xff0c;.NET Core的多项改进贡献了大部分的性能提升#xff0c;包括字符串… 据微软工程师Mukul Sabharwal介绍在将微软搜索引擎必应迁移到.NET Core 2.1之后内部服务延迟降低了34%这主要归功于.NET社区贡献的改进。按照Sabharwal的说法.NET Core的多项改进贡献了大部分的性能提升包括字符串相等矢量化、使用新的SpanT类型的string.IndexOf/LastIndexOf它们加速了HTML渲染和操作EqualityComparer.Default去虚拟化这提升了字典性能并发GC写监视这降低了CPU使用还有其他的特性。 图片来自微软博客如上所述大部分改进都是由.NET社区贡献的Sabharwal指出虽然许多GitHub pull request来自微软员工。据Sabharwal介绍有两个关键因素使得必应可以迁移到.NET Core 2.1。一个是支持ReadyToRun镜像这使得JIT编译变成了一个预部署步骤。没有ReadyToRun镜像所有代码在它要在上面运行的每一台机器上都应该JIT编译由于支撑必应的机器数量众多所以这会显著降低服务能力。使用.NET Core的crossgen工具就可以在微软实验室中对应用程序进行预编译然后部署镜像。第二个关键因素是.NET Standard 2.0一个超过32K API的集合这可以帮助开发人员确保他们的代码可以在多个平台上轻松地移植到.NET Core 2.1。最后Sabharwal强调了使用xcopy从他们的持续集成管道部署必应应用程序中的.NET Core运行时的重要性。这才使得必应在.NET Core 2.1正式发布仅两天之后就过渡到了.NET Core 2.1。正如InfoQ在.NET Core 2.1发布时所报道的那样.NET Core 2.1其中一个最大的卖点就是性能提升以及采用自包含部署形式的新部署选项。在性能方面最引人注意的是.NET Core 2.1带来了对新类型System.SpanT的支持该特性稍后也添加到了F# 4.5中。此外JIT编译器有许多优化包括上面列出的这些。想要深入了解更多有关.NET Core 2.1性能改进的信息请查阅微软工程师Stephen Toub的博客。原文地址: http://www.infoq.com/cn/news/2018/08/bing-speedup-dotnet-core-2.1.NET社区新闻深度好文欢迎访问公众号文章汇总 http://www.csharpkit.com