Pola desain cloud yang mendukung keunggulan operasional

Saat Merancang arsitektur beban kerja, Anda harus menggunakan pola industri yang mengatasi tantangan umum. Pola dapat membantu Anda melakukan tradeoff yang disengaja dalam beban kerja dan mengoptimalkan hasil yang Anda inginkan. Mereka juga dapat membantu mengurangi risiko yang berasal dari masalah tertentu, yang dapat memengaruhi keandalan, keamanan, performa, dan biaya. Karena operasi dipotong di semua area tersebut, risiko pada akhirnya akan memengaruhi operasi beban kerja. Pola-pola ini didukung oleh pengalaman dunia nyata, dirancang untuk skala cloud dan model operasi, dan secara inheren vendor agnostik. Menggunakan pola terkenal sebagai cara untuk menstandarkan desain beban kerja Anda adalah komponen keunggulan operasional.

Banyak pola desain secara langsung mendukung satu atau beberapa pilar arsitektur. Pola desain yang mendukung pilar Keunggulan Operasional menggunakan topologi yang memberikan fondasi kuat untuk praktik penyebaran yang aman dan memfasilitasi evolusi arsitektur dari waktu ke waktu, skenario migrasi, dan pengamatan.

Pola desain untuk keunggulan operasional

Tabel berikut ini meringkas pola desain cloud yang mendukung tujuan keunggulan operasional.

Pola Ringkasan
Lapisan Anti-Korupsi Melindungi komponen sistem baru dari perilaku atau pilihan implementasi sistem warisan dengan menambahkan lapisan mediator ke interaksi proksi antara komponen lama dan baru. Pola ini membantu memastikan bahwa desain komponen baru tetap tidak terikat oleh implementasi lama yang mungkin memiliki model data atau aturan bisnis yang berbeda ketika Anda berintegrasi dengan sistem warisan ini. Pola ini sangat berguna dalam migrasi sistem bertahap. Ini mengurangi utang teknis pada komponen baru sambil tetap mendukung komponen yang ada.
Koreografi Mengoordinasikan perilaku komponen terdistribusi otonom dalam beban kerja dengan menggunakan komunikasi terdesentralisasi dan berbasis peristiwa. Pola ini dapat berguna ketika Anda berharap untuk sering memperbarui atau mengganti layanan selama siklus hidup beban kerja. Karena komponen terdistribusi otonom, Anda dapat memodifikasi beban kerja dengan perubahan yang kurang keseluruhan pada sistem.
Konsolidasi Sumber Daya Komputasi Mengoptimalkan dan mengonsolidasikan sumber daya komputasi dengan meningkatkan kepadatan. Pola ini menggabungkan beberapa aplikasi atau komponen beban kerja pada infrastruktur bersama. Konsolidasi mengarah ke platform komputasi yang lebih homogen, yang dapat menyederhanakan manajemen dan pengamatan, mengurangi pendekatan yang berbeda untuk tugas operasional, dan mengurangi jumlah alat yang diperlukan.
Stempel Penyebaran Menyediakan pendekatan untuk merilis versi aplikasi tertentu dan infrastrukturnya sebagai unit penyebaran yang terkontrol, berdasarkan asumsi bahwa versi yang sama atau berbeda akan disebarkan secara bersamaan. Pola ini selaras dengan tujuan infrastruktur yang tidak dapat diubah, mendukung model penyebaran tingkat lanjut, dan dapat memfasilitasi praktik penyebaran yang aman.
Penyimpanan Konfigurasi Eksternal Mengekstrak konfigurasi ke layanan yang diekstrak ke aplikasi untuk mendukung pembaruan dinamis pada nilai konfigurasi tanpa memerlukan perubahan kode atau penyebaran ulang aplikasi. Pemisahan konfigurasi aplikasi dari kode aplikasi ini mendukung konfigurasi khusus lingkungan dan menerapkan penerapan versi ke nilai konfigurasi. Penyimpanan konfigurasi eksternal juga merupakan tempat umum untuk mengelola bendera fitur untuk memungkinkan praktik penyebaran yang aman.
Agregasi Gateway Menyederhanakan interaksi klien dengan beban kerja Anda dengan menggabungkan panggilan ke beberapa layanan backend dalam satu permintaan. Topologi ini memungkinkan logika backend berkembang secara independen dari klien, memungkinkan Anda mengubah implementasi layanan berantai, atau bahkan sumber data, tanpa perlu mengubah titik sentuh klien.
Pembongkaran Gateway Membongkar pemrosesan permintaan ke perangkat gateway sebelum dan sesudah meneruskan permintaan ke simpul backend. Menambahkan gateway offloading ke proses permintaan memungkinkan Anda mengelola konfigurasi dan upkeep fungsionalitas yang dilepas dari satu titik alih-alih mengelolanya dari beberapa simpul.
Perutean Gateway Merutekan permintaan jaringan masuk ke berbagai sistem backend berdasarkan niat permintaan, logika bisnis, dan ketersediaan backend. Perutean gateway memungkinkan Anda memisahkan permintaan dari backend, yang pada gilirannya memungkinkan backend Anda mendukung model penyebaran tingkat lanjut, transisi platform, dan satu titik manajemen untuk resolusi dan enkripsi nama domain saat transit.
Pemantauan Titik Akhir Kesehatan Menyediakan cara untuk memantau kesehatan atau status sistem dengan mengekspos titik akhir yang dirancang khusus untuk tujuan tersebut. Menstandarkan titik akhir kesehatan mana yang akan diekspos, dan tingkat analisis dalam hasil, di seluruh beban kerja Anda dapat membantu Anda melakukan triase masalah.
Jembatan Olahpesan Menyediakan perantara untuk memungkinkan komunikasi antara sistem olahpesan yang tidak kompatibel karena protokol atau format. Pemisahan ini memberikan fleksibilitas saat Anda transisi olahpesan dan teknologi peristiwa dalam beban kerja Anda atau ketika Anda memiliki persyaratan heterogen dari dependensi eksternal.
Penerbit/Pelanggan Memisahkan komponen arsitektur dengan mengganti komunikasi klien-ke-layanan atau klien-ke-layanan langsung dengan komunikasi melalui broker pesan perantara atau bus peristiwa. Lapisan tidak langsung ini dapat memungkinkan Anda mengubah implementasi dengan aman di sisi penerbit atau pelanggan tanpa perlu mengoordinasikan perubahan pada kedua komponen.
Karantina Memastikan aset eksternal memenuhi tingkat kualitas yang disepakati tim sebelum diberi wewenang untuk menggunakannya dalam beban kerja. Otomatisasi dan konsistensi pada pemeriksaan ini adalah bagian dari siklus hidup pengembangan perangkat lunak beban kerja dan praktik penyebaran (SDP) yang aman.
Sidecar Memperluas fungsionalitas aplikasi dengan merangkum tugas nonprimary atau lintas pemotongan dalam proses pendamping yang ada bersama aplikasi utama. Pola ini memberikan pendekatan untuk menerapkan fleksibilitas dalam integrasi alat yang dapat meningkatkan pengamatan aplikasi tanpa mengharuskan aplikasi untuk mengambil dependensi implementasi langsung. Ini memungkinkan fungsionalitas sespan berkembang secara independen dan dipertahankan secara independen dari siklus hidup aplikasi.
Strangler Fig Menyediakan pendekatan untuk mengganti komponen sistem yang berjalan secara sistematis dengan komponen baru, sering kali selama migrasi atau modernisasi sistem. Pola ini memberikan pendekatan peningkatan berkelanjutan, di mana penggantian inkremental dengan perubahan kecil dari waktu ke waktu lebih disukai daripada perubahan sistemik besar yang lebih berisiko untuk diterapkan.

Langkah berikutnya

Tinjau pola desain cloud yang mendukung pilar Azure Well-Architected Framework lainnya: