Tabela decyzyjna: implementacje platformy .NET do użycia na platformie Docker
Napiwek
Ta zawartość jest fragmentem książki eBook, architektury mikrousług platformy .NET dla konteneryzowanych aplikacji platformy .NET dostępnych na platformie .NET Docs lub jako bezpłatnego pliku PDF, który można odczytać w trybie offline.
W poniższej tabeli decyzyjnej podsumowano, czy używać programu .NET Framework, czy platformy .NET 8. Pamiętaj, że w przypadku kontenerów systemu Linux potrzebne są hosty platformy Docker oparte na systemie Linux (maszyny wirtualne lub serwery) oraz że w przypadku kontenerów systemu Windows potrzebne są hosty platformy Docker oparte na systemie Windows Server (maszyny wirtualne lub serwery).
Ważne
Maszyny programistyczne będą uruchamiać jednego hosta platformy Docker, systemu Linux lub Windows. Powiązane mikrousługi, które chcesz uruchomić i przetestować razem w jednym rozwiązaniu, będą musiały działać na tej samej platformie kontenerów.
Architektura/typ aplikacji | Kontenery systemu Linux | Kontenery systemu Windows |
---|---|---|
Mikrousługi w kontenerach | .NET 8 | .NET 8 |
Aplikacja monolityczna | .NET 8 | .NET Framework .NET 8 |
Najlepsza w klasie wydajność i skalowalność | .NET 8 | .NET 8 |
Migracja starszej aplikacji systemu Windows Server ("brown-field") do kontenerów | -- | .NET Framework |
Nowe programowanie oparte na kontenerach ("green-field") | .NET 8 | .NET 8 |
ASP.NET Core | .NET 8 | .NET 8 (zalecane) .NET Framework |
ASP.NET 4 (MVC 5, Web API 2 i Web Forms) | -- | .NET Framework |
Usługi SignalR | .NET Core 2.1 lub nowsza wersja | .NET Framework .NET Core 2.1 lub nowsza wersja |
WCF, WF i inne starsze platformy | Program WCF na platformie .NET Core (tylko biblioteka kliencka) lub CoreWCF | .NET Framework Program WCF na platformie .NET 8 (tylko biblioteka kliencka) lub CoreWCF |
Użycie usług platformy Azure | .NET 8 (ostatecznie większość usług platformy Azure zapewni zestawy SDK klienta dla platformy .NET 8) |
.NET Framework .NET 8 (ostatecznie większość usług platformy Azure zapewni zestawy SDK klienta dla platformy .NET 8) |