Aracılığıyla paylaş


Genel kılavuz

İpucu

Bu içerik, .NET Docs'ta veya çevrimdışı olarak okunabilen ücretsiz indirilebilir bir PDF olarak sağlanan Kapsayıcılı .NET Uygulamaları için .NET Mikro Hizmet Mimarisi e-Kitabı'ndan bir alıntıdır.

.NET Microservices Architecture for Containerized .NET Applications eBook cover thumbnail.

Bu bölümde .NET 8 veya .NET Framework'ün ne zaman seçileceğine ilişkin bir özet sağlanır. Aşağıdaki bölümlerde bu seçenekler hakkında daha fazla ayrıntı sağlıyoruz.

Aşağıdaki durumlarda kapsayıcılı Docker sunucu uygulamanız için Linux veya Windows Kapsayıcıları ile .NET 8 kullanın:

  • Platformlar arası gereksinimleriniz var. Örneğin, hem Linux hem de Windows Kapsayıcıları kullanmak istiyorsunuz.

  • Uygulama mimariniz mikro hizmetleri temel alır.

  • Maliyetlerinizi düşürmek için kapsayıcıları hızlı başlatmanız ve daha iyi yoğunluk veya donanım birimi başına daha fazla kapsayıcı elde etmek için kapsayıcı başına küçük bir ayak izi istemeniz gerekir.

Kısacası, kapsayıcılı yeni .NET uygulamaları oluşturduğunuzda varsayılan seçenek olarak .NET 8'i dikkate almanız gerekir. Birçok avantajı vardır ve kapsayıcılar felsefesine ve çalışma tarzına en uygun olanıdır.

.NET 8 kullanmanın ek bir avantajı, aynı makinedeki uygulamalar için yan yana .NET sürümleri çalıştırabilmenizdir. Kapsayıcılar uygulamanın ihtiyaç duyduğu .NET sürümlerini yalıttığı için bu avantaj kapsayıcı kullanmayan sunucular veya VM'ler için daha önemlidir. (Temel işletim sistemiyle uyumlu oldukları sürece.)

Kapsayıcılı Docker sunucu uygulamanız için aşağıdaki durumlarda .NET Framework kullanın:

  • Uygulamanız şu anda .NET Framework kullanıyor ve Windows'a güçlü bağımlılıkları var.

  • .NET 8 tarafından desteklenmeyen Windows API'lerini kullanmanız gerekir.

  • .NET 8 için kullanılamayan üçüncü taraf .NET kitaplıklarını veya NuGet paketlerini kullanmanız gerekir.

Docker'da .NET Framework'ün kullanılması, dağıtım sorunlarını en aza indirerek dağıtım deneyimlerinizi geliştirebilir. Bu "lift and shift" senaryosu , başlangıçta webformları, MVC web uygulamaları veya WCF (Windows Communication Foundation) hizmetleri ASP.NET gibi geleneksel .NET Framework ile geliştirilen eski uygulamaları kapsayıcıya alma açısından önemlidir.

Ek kaynaklar