Erken öğrendiğim şeylerden biri, sürekli değişime izin veren sistemler tasarlamaktır. Nasıl? Bulut veya bulut olmayan sistem, sistem bileşenlerini kendi başlarına yapılandırılabilecekleri veya değiştirilebilecekleri şekilde bölümlere ayırarak değişim için inşa edersiniz. Basit bir benzetme, tüm aracı yeniden geliştirmeden bileşenleri değiştirme veya güncelleme yeteneğine sahip olarak, sistem bileşenlerini karıştırmak ve eşleştirmek için otomobil parçalarını nasıl değiştirebileceğimiz olacaktır.
Diğer yaklaşımlar, bazı uygulama davranışlarını ve verilerini merkezileştirmek ve yeniden kullanmak için hizmetlerden ve mikro hizmetlerden yararlanır. Bu, belirli bir hizmeti tek bir konumda güncellemenin, örneğin bir vergi hesaplamasını değiştirme, bir veritabanı modelini değiştirme veya hatta bir bileşenin kapsayıcılara ve kapsayıcıya geçme gibi etkinleştirme teknolojisini güncelleme gibi, bu hizmeti kullanan tüm sistemlerin davranışını değiştireceği anlamına gelir. orkestrasyon.
Böylece, gereksiz gecikme, maliyet ve risk olmaksızın bir iş ihtiyacını karşılamak için bir sistemi kolayca değiştirme yeteneğine sahibiz. Bu yaklaşımın sorunu, karmaşık ve uygulanması zor olması değildir. Bulutta bu net-yeni sistemlerin mimarisini ve inşasını üstlenenlerin çoğu, sistemlerini kolayca değiştirme yeteneğini genel tasarımda bir öncelik haline getirmiyor gibi görünüyor.
Neden olduğunu anlıyorum. Para kısıtlı, zaman kısıtlı veya başka engeller önünüze çıktığında, iyi sistem tasarımı uygulamaları genellikle bir kenara atılır. Esnek bir sistem tasarlamak için harcanan her türlü çabanın ve paranın işletmeye yüz kat geri döneceğini iddia etmek kolay olsa da, diğer acil öncelikler en iyi uygulamalara odaklanmayı ortadan kaldırdığında kazanmak hala zor bir argüman. Ve dinamik bir sistem tasarlama yeteneği ve işin her türlü ihtiyacını karşılamak için değişmek üzere inşa edilmiş bir sistem kesinlikle en iyi uygulamadır.
Bu sorunu nasıl çözeriz? Bu teknolojiyle olduğu kadar insanlarla ve kültürle de ilgili bir sorun. Aslında bu, sistemlerin bu en iyi uygulama kullanılarak tasarlanacağına dair beklentileri oluşturmakla ilgilidir. Ayrıca, tasarımcıların ve geliştiricilerin kolayca değişebilen bulut tabanlı sistemler tasarlamasını ve oluşturmasını sağlamak için politikalar ve testler oluşturmalısınız.
Bu, bugünlerde devops araç zincirlerimize yerleştirdiğimiz güvenlik ve performans kontrollerine çok benziyor. Aynı zamanda, kolay değişimi destekleyen ve oluşturulmakta ve dağıtılmakta olan bulut tabanlı sistemleri daha iyi geliştirme yeteneği sunan tasarım modellerini kontrol edin.
Bulut sistemlerinin ilk neslinde sorun çıkmıyor. Ancak, bir iş ihtiyacı için değiştirilmeleri gerektiğinde, çoğu durumda sistemin tasarımı tam bir yeniden geliştirmeyi zorlayacak ve gerekli değişikliği geciktirecektir. Bu bir kez bile olsa, o bulut tabanlı sistemden iş değerini kaldırıyorsunuz.
Telif Hakkı © 2022 IDG Communications, Inc.
Kaynak : https://www.infoworld.com/article/3660771/how-to-build-changeable-cloud-solutions.html#tk.rss_all