Aracılığıyla paylaş


Özet: Bulutta yerel uygulamaların mimarisini oluşturma

Tavsiye

Bu içerik, .NET Docs veya çevrimdışı olarak okunabilen ücretsiz indirilebilir bir PDF olarak sağlanan Azure için Bulut Yerel .NET Uygulamaları Tasarlama adlı e-Kitap'tan bir alıntıdır.

Azure eKitap kapak küçük resmi için Buluta Özel .NET uygulamaları.

Özetle, bu kılavuzdaki önemli sonuçlar şunlardır:

  • Buluta özel , genel, özel ve hibrit bulutlar gibi modern, dinamik ortamlarda hızlı değişimi, büyük ölçeği ve dayanıklılığı benimsemiş modern uygulamalar tasarlamayı içerir.

  • Cloud Native Computing Foundation (CNCF), 300'den fazla büyük şirketten oluşan etkili bir açık kaynak konsorsiyumudur. Teknoloji ve bulut yığınları arasında bulutta yerel bilgi işlemin benimsenmesini sağlamanın sorumluluğundadır.

  • CNCF yönergeleri , buluta özel uygulamaların Şekil 11-1'de gösterildiği gibi altı önemli sütunu benimsemesini önerir:

    Bulutta yerel temel sütunlar

    Şekil 11-1. Bulutta yerel temel sütunlar

  • Bu buluta özel sütunlar şunlardır:

    • Bulut ve temel hizmet modeli
    • Modern tasarım ilkeleri
    • Mikro hizmetler
    • Kapsayıcılaştırma ve kapsayıcı orkestrasyonu
    • Veritabanları ve ileti aracıları gibi bulut tabanlı yedekleme hizmetleri
    • Kod Olarak Altyapı ve kod dağıtımı dahil olmak üzere otomasyon
  • Kubernetes , buluta özel uygulamaların çoğu için tercih ettiğiniz barındırma ortamıdır. Daha küçük ve basit hizmetler bazen Azure İşlevleri gibi sunucusuz platformlarda barındırılır. Birçok önemli otomasyon özelliği arasında her iki ortam da dalgalı iş yükü hacimlerini işlemek için otomatik ölçeklendirme sağlar.

  • Hizmet iletişimi , buluta özel bir uygulama oluştururken önemli bir tasarım kararı haline gelir. Uygulamalar genellikle ön uç istemci iletişimlerini yönetmek için bir API ağ geçidini kullanıma sunar. Ardından arka uç mikro hizmetleri, mümkün olduğunda zaman uyumsuz iletişim desenleri uygulayarak birbirleriyle iletişim kurmaya çalışır.

  • gRPC , eski uzaktan yordam çağrısı (RPC) protokolünü geliştiren modern, yüksek performanslı bir çerçevedir. Buluta özel uygulamalar genellikle arka uç hizmetleri arasında mesajlaşmayı kolaylaştırmak için gRPC'yi benimser. gRPC, aktarım protokolü için HTTP/2 kullanır. 60-80% daha küçük ileti boyutlarıyla JSON serileştirmeden 8 kata kadar daha hızlı olabilir. gRPC açık kaynaktır ve Cloud Native Computing Foundation (CNCF) tarafından yönetilir.

  • Dağıtılmış veriler genellikle bulutta yerel uygulamalar tarafından uygulanan bir modeldir. Uygulamalar, iş işlevlerini küçük, bağımsız mikro hizmetlere ayırır. Her mikro hizmet kendi bağımlılıklarını, verilerini ve durumunu kapsüller. Klasik paylaşılan veritabanı modeli, her biri bir mikro hizmetle uyumlu birçok küçük veritabanından birine dönüşmektedir. Duman dağıldığında, bir modeli açığa çıkaran bir tasarımla ortaya çıkıyoruz.

  • No-SQL veritabanları yüksek performanslı, ilişkisel olmayan veri depolarına başvurur. Kullanım kolaylığı, ölçeklenebilirlik, dayanıklılık ve kullanılabilirlik özelliklerinde üstünlük sağlar. Alt ikinci yanıt süresi gerektiren yüksek hacimli hizmetler NoSQL veri depolarını tercih eder. Dağıtılmış buluta özel sistemler için NoSQL teknolojilerinin yaygınlaşması fazla abartılamaz.

  • NewSQL, NoSQL'in dağıtılmış ölçeklenebilirliğini ve ilişkisel veritabanının ACID garantilerini birleştiren gelişmekte olan bir veritabanı teknolojisidir. NewSQL veritabanları, dağıtılmış ortamlarda yüksek hacimli verileri tam işlem/ACID uyumluluğuyla işlemesi gereken iş sistemlerini hedefler. Cloud Native Computing Foundation (CNCF) birçok NewSQL veritabanı projesine sahiptir.

  • Dayanıklılık , sisteminizin hataya tepki verme ve çalışmaya devam etme yeteneğidir. Bulutta yerel sistemler, hatanın kaçınılmaz olduğu dağıtılmış mimariyi benimser. Uygulamalar, hatalara zarif bir şekilde yanıt vermek ve hızla tam olarak çalışır duruma dönmek için oluşturulmalıdır.

  • Hizmet kafesleri , hizmet iletişimi ve diğer çapraz kesme zorluklarını ele almak için yerleşik özelliklere sahip yapılandırılabilir bir altyapı katmanıdır. Kesitler arası sorumlulukları iş kodunuzdan ayırıyorlar. Bu sorumluluklar bir hizmet ara sunucusuna taşınır. Sidecar pattern olarak adlandırılan proxy, iş kodunuzdan yalıtım sağlamak için ayrı bir süreçte dağıtılır.

  • Gözlemlenebilirlik , bulutta yerel uygulamalar için önemli bir tasarım konusudur. Hizmetler bir düğüm kümesine dağıtıldığından, merkezi loglama, izleme ve uyarılar zorunlu hale gelir. Azure İzleyici, sisteminizin durumuna görünürlük sağlamak için tasarlanmış bulut tabanlı araçlardan oluşan bir koleksiyondur.

  • Kod Olarak Altyapı , platform sağlamayı otomatik hale getiren yaygın olarak kabul edilen bir uygulamadır. Altyapınız ve dağıtımlarınız otomatik, tutarlı ve yinelenebilir. Azure Resource Manager, Terraform ve Azure CLI gibi araçlar, ihtiyacınız olan bulut altyapısını deklaratif bir şekilde betik olarak yazabilmenizi sağlar.

  • Kod otomasyonu , bulutta yerel uygulamalar için bir gereksinimdir. Modern CI/CD sistemleri bu ilkenin yerine getirilmesine yardımcı olur. Tutarlı ve kaliteli kod sağlamaya yardımcı olan ayrı derleme ve dağıtım adımları sağlar. Derleme aşaması kodu ikili yapıta dönüştürür. Yayın aşaması ikili yapıtı alır, dış ortam yapılandırmasını uygular ve bunu belirtilen bir ortama dağıtır. Azure DevOps ve GitHub tam özellikli DevOps ortamlarıdır.