Service Fabric uygulama senaryoları

Azure Service Fabric, birçok tür iş uygulaması ve hizmeti yazıp çalıştırabileceğiniz güvenilir ve esnek bir platform sunar. Bu uygulamalar ve mikro hizmetler durum bilgisi olmayan veya durum bilgisi olan uygulamalar, verimliliği en üst düzeye çıkarmak için sanal makineler arasında kaynak dengelidir.

Service Fabric'in benzersiz mimarisi, uygulamalarınızda neredeyse gerçek zamanlı veri analizi, bellek içi hesaplama, paralel işlemler ve olay işleme gerçekleştirmenizi sağlar. Değişen kaynak gereksinimlerinize bağlı olarak uygulamalarınızın ölçeğini kolayca daraltabilir veya genişletebilirsiniz.

Uygulama oluşturmayla ilgili tasarım kılavuzu için Azure Service Fabric'te Mikro hizmetler mimarisi ve Service Fabric kullanarak uygulama tasarımı için en iyi yöntemler konularını okuyun.

Aşağıdaki uygulama türleri için Service Fabric platformunu kullanmayı göz önünde bulundurun:

  • Veri toplama, işleme ve IoT: Service Fabric büyük ölçekli işler ve durum bilgisi olan hizmetleriyle düşük gecikme süresine sahiptir. Cihaz ve hesaplama verilerinin birlikte bulunduğu milyonlarca cihazda verilerin işlenmesine yardımcı olabilir.

    Service Fabric kullanarak IoT hizmetleri oluşturan müşteriler PCL Construction, Citrix, ASOS, Oman Data Park, Kohler ve Dover Fueling Systems'ı içerir.

  • Oyun ve oturum tabanlı etkileşimli uygulamalar: Service Fabric, uygulamanız çevrimiçi oyun veya anlık ileti gibi düşük gecikme süreli okuma ve yazma işlemleri gerektiriyorsa kullanışlıdır. Service Fabric, ayrı bir depo veya önbellek oluşturmak zorunda kalmadan bu etkileşimli, durum bilgisi olan uygulamaları oluşturmanıza olanak tanır. Service Fabric'i oyun hizmetlerinde kullanma hakkında tasarım yönergeleri için Azure oyun çözümleri sayfasını ziyaret edin.

    Oyun hizmetleri oluşturan müşteriler, Sonraki Oyunlar'ı içerir. Etkileşimli oturumlar oluşturan müşteriler Arasında Honeywell ve Hololens bulunur.

  • Veri analizi ve iş akışı işleme: Olayları veya veri akışlarını güvenilir bir şekilde işlemesi gereken uygulamalar, Service Fabric'teki iyileştirilmiş okuma ve yazma işlemlerinden yararlanıyor. Service Fabric, sonuçların güvenilir olması ve herhangi bir kayıp olmadan bir sonraki işleme aşamasına geçirilmesi gereken uygulama işleme işlem hatlarını da destekler. Bu işlem hatları, veri tutarlılığı ve hesaplama garantilerinin önemli olduğu işlemsel ve finansal sistemleri içerir.

    İş akışı hizmetleri oluşturan müşteriler Zeiss Group ve PCL Construction'ı içerir.

  • Veriler üzerinde hesaplama: Service Fabric, yoğun veri hesaplaması yapacak durum bilgisi olan uygulamalar oluşturmanıza olanak tanır. Service Fabric, uygulamalarda işleme (hesaplama) ve verilerin birlikte yerleştirilmesini sağlar.

    Normalde, uygulamanız verilere erişim gerektirdiğinde, dış veri önbelleği veya depolama katmanıyla ilişkili ağ gecikme süresi hesaplama süresini sınırlar. Durum bilgisi olan Service Fabric hizmetleri bu gecikme süresini ortadan kaldırarak daha iyileştirilmiş okuma ve yazma işlemlerine olanak tanır.

    Örneğin, 100 milisaniyeden kısa bir gidiş dönüş süresi gereksinimiyle müşteriler için gerçek zamanlıya yakın öneri seçimleri gerçekleştiren bir uygulama düşünün. Service Fabric hizmetlerinin gecikme süresi ve performans özellikleri, gerekli verileri uzak depolamadan getirmek zorunda olma standart uygulama modeliyle karşılaştırıldığında kullanıcıya duyarlı bir deneyim sağlar. Öneri seçimi hesaplaması veri ve kurallarla birlikte bulunduğundan sistem daha hızlı yanıt verir.

    Hesaplama hizmetleri oluşturan müşteriler ASOS ve CCC'yi içerir.

  • Yüksek oranda kullanılabilir hizmetler: Service Fabric, birden çok ikincil hizmet çoğaltması oluşturarak hızlı yük devretme sağlar. Bir düğüm, işlem veya tek bir hizmet donanım veya başka bir hata nedeniyle devre dışı kalırsa, ikincil çoğaltmalardan biri en az hizmet kaybıyla birincil çoğaltmaya yükseltilir.

  • Ölçeklenebilir hizmetler: Tek tek hizmetler bölümlenebilir ve küme genelinde durumun ölçeğinin genişletilmesine olanak sağlar. Tek tek hizmetler de anında oluşturulabilir ve kaldırılabilir. Birkaç düğümdeki birkaç örnekten birçok düğümdeki binlerce örneğe kadar hizmetlerin ölçeğini genişletebilir ve sonra gerektiğinde yeniden ölçeklendirin. Service Fabric'i kullanarak bu hizmetleri oluşturabilir ve tüm yaşam döngülerini yönetebilirsiniz.

Uygulama tasarımı örnek olay incelemeleri

Service Fabric'in uygulamaları tasarlamak için nasıl kullanıldığını gösteren örnek olay incelemeleri, Azure sitelerindeki Müşteri hikayelerinde ve Mikro hizmetlerde yayımlanır.

Durum bilgisi olmayan ve durum bilgisi olan mikro hizmetlerden oluşan uygulamalar tasarlama

Azure Cloud Services çalışan rolleri ile uygulama derleme, durum bilgisi olmayan bir hizmete örnektir. Buna karşılık, durum bilgisi olan mikro hizmetler istek ve yanıt dışında yetkili durumlarını korur. Bu işlevsellik, çoğaltma tarafından desteklenen işlem garantileri sağlayan basit API'ler aracılığıyla durumun yüksek kullanılabilirliğini ve tutarlılığını sağlar.

Service Fabric'teki durum bilgisi olan hizmetler, yalnızca veritabanlarına ve diğer veri depolarına değil tüm uygulama türlerine yüksek kullanılabilirlik getirir. Bu doğal bir ilerleme. Uygulamalar, NoSQL veritabanlarına yüksek kullanılabilirlik için tamamen ilişkisel veritabanlarını kullanmaktan zaten geçmiştir. Artık uygulamaların kendileri güvenilirlik, tutarlılık veya kullanılabilirlikten ödün vermeden ek performans kazanımları için "sık erişimli" durumlarına ve bunların içinde yönetilen verilere sahip olabilir.

Mikro hizmetlerden oluşan uygulamalar oluştururken, genellikle durum bilgisi olmayan ve durum bilgisi olan iş orta katman hizmetlerine çağrı yapan durum bilgisi olmayan web uygulamalarının (ASP.NET ve Node.js gibi) birleşimine sahip olursunuz. Tüm uygulamalar ve hizmetler, Service Fabric dağıtım komutları aracılığıyla aynı Service Fabric kümesinde dağıtılır. Bu hizmetlerin her biri ölçeklendirme, güvenilirlik ve kaynak kullanımı açısından bağımsızdır. Bu bağımsızlık geliştirme ve yaşam döngüsü yönetiminde çevikliği ve esnekliği artırır.

Durum bilgisi olan mikro hizmetler, yalnızca durum bilgisi olmayan uygulamaların kullanılabilirlik ve gecikme süresi gereksinimlerini karşılamak için geleneksel olarak gerekli olan ek kuyruk ve önbellek gereksinimini ortadan kaldırdığından uygulama tasarımlarını basitleştirir. Durum bilgisi olan hizmetler yüksek kullanılabilirliğe ve düşük gecikme süresine sahip olduğundan, uygulamanızda yönetecek daha az ayrıntı vardır.

Aşağıdaki diyagramlarda durum bilgisi olmayan ve durum bilgisi olan bir uygulama tasarlama arasındaki farklar gösterilmektedir. Reliable Services ve Reliable Actors programlama modellerinden yararlanan durum bilgisi olan hizmetler uygulama karmaşıklığını azaltırken yüksek aktarım hızı ve düşük gecikme süresi elde eder.

Durum bilgisi olmayan hizmetleri kullanan örnek bir uygulama aşağıda verilmişti: Application that uses stateless services

Durum bilgisi olan hizmetleri kullanan örnek bir uygulama aşağıda verilmiştir: Application that uses stateful services

Sonraki adımlar