Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
DotnetConf - Cloud native and .Net5 announcements
1. A Lap Around the .NET
Ecosystem and let's demystify
cloud-native development
with .NET
Cloud Solution Architect, App Dev
Microsoft APAC
@Kokkisajee
Sajeetharan Sinnathurai
www.Sajeetharan.com @kokkisajee sasinnat@Microsoft.com
3. Agenda
• .NET Ecosystem
• Recent announcements from DotNetConf
• Why cloud native?
• Why Microservices?
• Just a few of millions of .Net Customers
• Demo
• QnA
Today’s Discussion
4. .NET 5 General Availability
• Single file applications & smaller container images
• Web and cloud investments
• Windows desktop development enhancements
• Windows ARM64 support
• Continued performance improvements
• New C# 9.0, F# 5.0 language features
dot.net/get-dotnet5
7. .NET adoption
200K
Windows developers migrated to .NET Core
230K
First time .NET developers in September 2020
2 million
Publishes per month to Linux from Visual Studio
WinForms & WPF
on .NET Core
.NET Core
.NET on Linux
5 million
.NET developers
Monthly active developers in Visual Studio Family
8. .NET 5 performance improvements
+30% socket performance improvement on Linux over .NET Core 3.1
JSON serialization performance improved +19% over .NET Core 3.11
Serialization of large collections & arrays improved 3x and are now zero-alloc
gRPC server performance exceeds Go, C++ and Java2
1 All 104 JSON serialization benchmarks improved
2 https://github.com/LesnyRumcajs/grpc_bench/wiki/2020-08-11-bench-results
0
10000
20000
30000
40000
50000
60000
rust_tonic_mt dotnet_grpc go_grpc cpp_grpc_mt java_grpc
gRPC Server Performance Requests/Sec
(higher is better)
9. Windows desktop apps on .NET 5
• Complete development experience
• Windows Forms & WPF designers
• Visual Studio tooling
• Clickonce Installer support
• Third-party tools & controls
• All the benefits of .NET 5
• Self contained, single file EXEs
• No need for .NET Framework on machine
• Best performance
• Modern controls like WebView2
10. Xamarin.Forms 5
• Beautiful Design with Brushes, Shapes, and Paths
• Control templating for native controls
• Improved XAML experience in Visual Studio
• Hot Reload 2.0
• Develop iOS apps on Windows
11. Visual Studio 2019 16.8 GA and 16.9 Preview
• .NET 5.0 included
• .NET productivity enhancements
• Intellicode team completions
• New Git experience
• Linux debugging
• Improved XAML experience
• GitHub Actions in Visual Studio
visualstudio.com/download
aka.ms/vs-preview
12. Full stack .NET web apps with Blazor in .NET 5
• Supports Blazor Server & Blazor WebAssembly
• Blazor WebAssembly enhancements
• Now uses .NET 5 core framework libraries
• 3X faster than previous release
• Supports server-side prerendering & lazy loading dependencies
• Component virtualization
• CSS & JavaScript isolation
• New components
• Growing ecosystem of third-party
& OSS controls and tools
13. Cloud native investments
• Smaller, faster microservices
• Smaller container images
• Single file apps
• Top-level C# programs
• Project Tye tools
• Build, debug and deploy microservices quickly
• Cross-platform development with WSL and Linux
• High-performance reverse proxy (YARP)
14. .NET 5 on Azure App Service
• .NET 5 available today
• .NET releases available on Day 1 going forward
aka.ms/app-service-early-access
17. What is Cloud Native App Development?
Deploy as microservices
Manage app with
DevOps processes &
tools
Package app code & dependencies
in Kubernetes containers
By 2020, 35% of production apps
will be cloud native
Source: IDC FutureScape: Worldwide Developer and DevOps
2019 Predictions, Oct 2018
34. Manage Kubernetes
with ease
Build on an
enterprise-grade,
secure foundation
Run anything,
anywhere
Accelerate
containerized
development
Azure Kubernetes Service (AKS)
Ship faster, operate easily, and scale confidently with managed Kubernetes on Azure
35. Microservices: for faster app development
• Independent deployments
• Improved scale and resource
utilization per service
• Smaller, focused teams
Monolithic
APP APP APP
Microservices
Large, all-inclusive app Small, independent services
37. Project Tye in .NET 5
Build, debug and deploy microservices faster
Service discovery via configuration
conventions
Add dependencies (Redis, SQL
Server, etc.) without writing
docker files
Run and debug locally using
containers and Kubernetes
Local dashboard for metrics,
logging, debugging
Automatically dockerize and deploy
to Azure Kubernetes Service
Frontend
Service
Service
Service
Name Type Source Bindings
AKS
Dependency
Dependency
Dependency
44. Stack Overflow
completes their
migration to
.NET Core 3.1
Stack Overflow sees better
performance, faster development,
and containerization benefits with
.NET Core.
45. .NET 5.0 released today!
Major releases every year in November
LTS for even numbered releases
Predictable schedule, minor releases as needed
.NET Schedule
Nov 2020
.NET 5.0
Nov 2021
.NET 6.0
LTS
Nov 2022
.NET 7.0
Nov 2023
.NET 8.0
LTS
Nov 2024
.NET 9.0
Containers are a method of operating system. virtualization that allow you to run an application and its dependencies in resource-isolated processes
Container is an isolated and secure application platform,
that holds everything that is needed for an application to
run
Using namespaces you can provide isolation or separate them its named as tagging, if you have seen that biggest containers those are identified
with a tag or control groups.
With containers developers will be able to build features in quick time with agile manner which gives get a head-start in developing containers by
utilizing ready-made boilerplate images
. Applications can be shipped and run in a production environment in exactly the same way as in your development environment or any othe
r environment Containers are quite cost effective. Since they don’t require a separate operating system, containers use up less resources.
Containers also offer the possibility of horizontal scaling, meaning you add more identical containers within a cluster to scale out Based on demand.