Microsoft has moved Teams backend service to .NET 6 - the performance results

Microsoft has moved Teams backend service to .NET 6 - the performance results

September last year, Microsoft announced that a large number of backend services would be migrated to .NET 6. This, they said, was an enterprise-wide initiative.

Now, about half a year later, Microsoft delivers in a very detailed blog post that their expectations in performance, efficiency and scalability have been far exceeded by .NET 6. What was migrated was a permission service that still has its origins from the time of Skype from 2013.

  • The performance advantage has been reduced by 50%: it is now 100%.
  • The latency could even be reduced by 45%.

The migration was not entirely trivial. About 2 weeks were invested in the analysis of the necessary steps alone:

  • Updating all projects to the new .NET SDK format
  • Modernization of the entire code base (Host Builders, with Dependency Injection, ILogger and IOptions Pattern...)
  • Replacing blocking dependencies with .NET 6 alternatives.
  • Migration to Kestrel and ASP.NET Core 6
  • Updating CI/CD

The very detailed blogpost incl. performance analysis and insight into Teams' teamwork at Microsoft Teams' Permission Service migration to .NET 6