Meningkatkan Keandalan Aplikasi
Kita bisa menggunakan SLA untuk mengevaluasi bagaimana solusi Azure kita memenuhi kebutuhan bisnis dan pengguna. Dengan membuat SLA sendiri, kita dapat menetapkan target kinerja yang sesuai dengan aplikasi Azure yang ingin dikembangkan. Pendekatan ini dikenal sebagai Application SLA.
Memahami kebutuhan aplikasi
Dalam membangun solusi Azure yang efisien dan andal, kita perlu tahu kebutuhan beban kerja dari aplikasi yang kita kembangkan. Kita dapat memilih produk dan layanan Azure kemudian menyediakan sumber daya yang sesuai dengan persyaratan yang telah kita tentukan. Untuk itu sangat penting kita memahami Azure SLA yang menentukan target kinerja untuk produk dan layanan Azure dalam solusi yang kita kembangkan. Pemahaman ini akan membantu kita dalam membuat SLA aplikasi yang bisa dicapai.
Dalam sebuah sistem terdistribusi, kegagalan sangat mungkin terjadi. Perangkat keras bisa mati, jaringan dapat mengalami kegagalan sementara. Memang kegagalan untuk sistem secara keseluruhan jarang terjadi, namun kegagalan parsial harus tetap direncanakan.
Ketahanan
Ketahanan atau resiliency adalah kemampuan sistem untuk pulih dari kegagalan dan terus berfungsi. Jadi ketahanan bukanlah tentang menghindari kegagalan, namun menanggapi kegagalan dengan cara menghindari downtime atau kehilangan data. Tujuan dari resiliency ini adalah mengembalikan aplikasi ke keadaan berfungsi penuh setelah mengalami kegagalan. Ketersediaan tinggi dan pemulihan dari bencana adalah dua komponen penting dalam membangun ketahanan.
Saat merancang arsitektur, Anda perlu merancang ketahanan, dan Anda perlu melakukan Failure Mode Analysis (FMA). Tujuan dari FMA ini adalah untuk mengidentifikasi kemungkinan titik kegagalan dan untuk menentukan bagaimana aplikasi akan menanggapi kegagalan tersebut.
Biaya dan kompleksitas vs ketersediaan tinggi
Ketersediaan atau availability mengacu pada waktu suatu sistem berfungsi dan bekerja. Perlu langkah-langkah implementasi untuk mencegah kemungkinan kegagalan layanan. Namun, dalam menyusun langkah-langkah pencegahan ini bisa sulit dan mahal, seringkali solusi yang dihasilkan menjadi kompleks.
Ketika sebuah solusi cloud semakin berkembang menjadi kompleks, Anda akan memiliki lebih banyak layanan yang saling tergantung satu sama lain. Oleh karena itu, Anda mungkin tidak memperhatikan titik kegagalan yang bisa saja terjadi ketika Anda memiliki beberapa layanan yang saling bergantung.
Kebanyakan provider memaksimalkan ketersediaan dengan meminimalkan downtime dari solusi Azure mereka. Namun, ketika Anda meningkatkan ketersediaan, Anda juga akan meningkatkan biaya dan kompleksitas solusi.
Risiko downtime bersifat kumulatif di berbagai level SLA, artinya bahwa solusi yang semakin kompleks akan menghadapi tantangan ketersediaan yang juga lebih tinggi. Jadi, seberapa penting “high availability” bagi kebutuhan aplikasi Anda akan menentukan bagaimana Anda menangani penambahan kompleksitas dan biaya untuk SLA aplikasi.
Pertimbangan menentukan SLA aplikasi
- Jika aplikasi Anda memiliki SLA target kinerja sebesar four nines (99,99%), maka untuk pulih dari kegagalan dengan cara manual mungkin tidak cukup untuk memenuhi SLA. Sehingga solusi Azure yang dikembangkan harus bisa melakukan self-diagnosing dan self-healing.
- Sulit untuk merespon kegagalan dengan cukup cepat untuk memenuhi target kinerja SLA di atas 99,99%.
- Pertimbangkan baik-baik jangka waktu yang digunakan untuk mengukur target kinerja SLA aplikasi Anda. Semakin kecil jangka waktunya, semakin ketat toleransi. Misalnya Anda menetapkan satuan waktu dalam jam atau hari, maka Anda perlu toleransi yang ketat. Bisa jadi capaian target kinerja Anda jadi mustahil.
0 Response to "Meningkatkan Keandalan Aplikasi"
Posting Komentar