Bagikan melalui


Beban kerja SaaS Azure Well-Architected

Membangun dan mengoperasikan perangkat lunak sebagai layanan (SaaS) di Microsoft Azure memerlukan pendekatan yang berbeda dibandingkan dengan jenis perangkat lunak lainnya. Vendor perangkat lunak independen (ISV) memiliki posisi unik dalam ekosistem cloud karena solusi SaaS mereka mendorong bisnis mereka. Mereka menjual produk mereka kepada bisnis, juga dikenal sebagai business-to-business (B2B), atau kepada konsumen, juga dikenal sebagai business-to-consumer (B2C). ISV biasanya menghosting dan memelihara solusi SaaS yang mereka bangun. Pelanggan mereka mengonfigurasi produk dan mengelola data.

Solusi yang dibangun menggunakan Well-Architected Framework memastikan bahwa beban kerja dapat beroperasi dalam skala besar. Serangkaian artikel ini memberikan wawasan utama untuk menciptakan solusi SaaS yang dapat diskalakan, berkinerja, andal, dan aman di Azure. Jika Anda belum terbiasa dengan Well-Architected Framework, sebaiknya luangkan waktu untuk mempelajari prinsip-prinsipnya.

Lihat pilar Microsoft Azure Well-Architected Framework.

Apa itu beban kerja SaaS?

Istilah beban kerja mengacu pada kumpulan sumber daya aplikasi yang mendukung tujuan bisnis umum atau eksekusi proses bisnis umum, dengan beberapa layanan, seperti API dan penyimpanan data, bekerja sama untuk memberikan fungsionalitas end-to-end tertentu.

Istilah SaaS mengacu pada model bisnis pengiriman perangkat lunak sebagai layanan. Sebagai vendor, Anda bertanggung jawab untuk memberikan dan mengoperasikan seluruh solusi. Anda harus mengelola lingkungan pelanggan dalam skala besar dengan cermat sambil memenuhi persyaratan untuk isolasi, keamanan, dan kepatuhan pelanggan. Solusi SaaS sering mengandalkan arsitektur multipenyewa, di mana sumber daya dibagikan di antara beberapa pelanggan. Pendekatan ini memengaruhi desain dan penyebaran sumber daya, serta model harga yang ditawarkan kepada pelanggan.

Apa saja tantangan umumnya?

Microsoft Azure adalah platform yang sangat baik untuk memberikan SaaS, menawarkan elastisitas dan skalabilitas yang diperlukan. Ini juga menyediakan fitur untuk mengotomatiskan berbagai aspek pengiriman SaaS. Namun, memberikan SaaS di Azure hadir dengan serangkaian tantangannya sendiri:

  • Harapan pelanggan tinggi, menuntut kualitas, keamanan, dan ketahanan. Untuk solusi B2B, Anda pada dasarnya menjadi perpanjangan dari departemen IT pelanggan Anda, bertanggung jawab untuk menjaga solusi Anda tetap beroperasi dan sehat. Ini membutuhkan pergeseran dari hanya mengembangkan perangkat lunak untuk mengoperasikannya dalam skala besar.

  • Memberikan SaaS berarti menyeimbangkan kebutuhan bisnis Anda sendiri dengan pelanggan Anda, yang terkadang dapat bertentangan. Anda akan menghadapi tekanan untuk mengurangi biaya barang yang dijual (COGS) dan meningkatkan efisiensi, sementara pelanggan menuntut lebih banyak dari solusi Anda.

  • SaaS sering beroperasi dalam skala tinggi atau dengan target pertumbuhan yang agresif. Saat Anda menskalakan, mempertahankan performa dan keandalan sekaligus mengurangi kompleksitas operasional sangat penting. Operasi manual tidak praktis, sehingga otomatisasi dan proses terstruktur diperlukan, membutuhkan tingkat kematangan operasional.

  • Isolasi adalah persyaratan penting saat Anda berbagi infrastruktur di antara pelanggan Anda. Pelanggan mengharapkan data mereka aman dan mengalami performa dan keandalan yang konsisten, terlepas dari aktivitas pelanggan lain. Sebagai vendor, Anda bertanggung jawab signifikan untuk melindungi data dan beban kerja pelanggan Anda, termasuk dari pelanggan lain.

Apa model kematangan untuk membangun SaaS?

Organisasi yang membangun produk SaaS biasanya:

  • Startup atau organisasi kecil lainnya. Biasanya, ada lebih sedikit orang, dan lebih sedikit sumber daya. Tidak peduli ukuran organisasi, SaaS membutuhkan beberapa tingkat kematangan untuk memenuhi harapan pelanggan yang tinggi. Pelanggan mempercayai organisasi untuk melindungi data mereka dan aset lainnya. Mereka mungkin juga mengandalkan solusi untuk bagian penting dari operasi mereka. Oleh karena itu, Keunggulan dan Keandalan Operasional menjadi aspek utama solusi.

    Awalnya, startup harus memprioritaskan elemen yang paling berdampak bagi pelanggan mereka. Secara paralel, mereka harus merencanakan peningkatan arsitektur di masa depan seperti otomatisasi, manajemen penyewa, pengurangan biaya, dan peningkatan keamanan dan keandalan. Meskipun ini mungkin tidak tampak praktis pada awalnya, perencanaan strategis ini berfungsi sebagai cetak biru untuk implementasi bertahap dan peningkatan berkelanjutan. Seiring berkembangnya startup, startup harus beradaptasi dan menyempurnakan prosesnya, mengadopsi teknologi baru, dan memenuhi standar kepatuhan yang berkembang untuk menskalakan secara efektif dan menjaga kepercayaan pelanggan.

  • Organisasi yang mapan. Organisasi mapan yang ingin memodernisasi solusi yang ada sering bermigrasi ke model SaaS. Meskipun organisasi mungkin memiliki lebih banyak sumber daya, tantangannya menjadi kompleks. Mereka harus mendukung pelanggan yang ada sambil mengembangkan solusi SaaS baru, yang dapat menciptakan overhead operasional. Transisi ini memerlukan perubahan dalam arsitektur teknis, set keterampilan, dan operasi bisnis secara keseluruhan. Fokusnya harus meminimalkan dampak pada pelanggan saat ini dan memastikan mereka menerima keandalan, keamanan, dan performa yang serupa atau ditingkatkan. Setelah solusi warisan kurang memberatkan, organisasi dapat memprioritaskan fitur dan peningkatan baru.

Bagaimana cara menggunakan panduan ini?

Mulailah dengan Metodologi Desain, yang menguraikan tema perbandingan dan berulang di seluruh area teknis dan operasional. Pendekatan sistematis ini membantu menentukan persyaratan dan strategi desain. Kunjungi kembali metodologi ini saat menghadapi pilihan yang tidak pasti untuk tetap selaras dengan tujuan keseluruhan beban kerja. Ini juga menyediakan kerangka kerja untuk berkolaborasi dengan tim pemasaran dan penjualan untuk memvalidasi keputusan teknis dan menggabungkan umpan balik pelanggan untuk peningkatan berkelanjutan.

Lanjutkan ke Prinsip Desain untuk melihat bagaimana metodologi desain SaaS selaras dengan pilar Kerangka Kerja Well-Architected inti, mempertimbangkan evolusi pertumbuhan. Evaluasi prinsip-prinsip yang mendasari untuk semua pilar secara kolektif, termasuk tradeoff.

Fokus pada area desain yang memiliki dampak terbesar pada solusi Anda. Setiap area mencakup pertimbangan dan rekomendasi untuk memandu Anda melalui keputusan desain.

Area desain
Manajemen penagihan dan biaya: Evaluasi strategi penagihan Anda dan pengaruhnya terhadap biaya barang yang dijual (COGS). Model dan antisipasi perubahan biaya saat bisnis SaaS Anda diskalakan. Cari cara untuk mengoptimalkan pengeluaran sumber daya cloud.
Tata kelola: Kelola dan atur penggunaan layanan cloud Anda untuk membangun lingkungan Azure yang aman.
Organisasi sumber daya: Rencanakan bagaimana Anda akan menyebarkan sumber daya untuk mendukung persyaratan skala dan biaya Anda.
Manajemen identitas dan akses: Memahami tantangan pengelolaan identitas di lingkungan SaaS multipenyewa. Pilih IdP yang sesuai dan pertimbangkan kebutuhan akan federasi dengan sistem identitas pelanggan Anda.
Komputasi: Pilih platform komputasi yang memenuhi kebutuhan Anda. Rencanakan isolasi, skalabilitas, dan ketahanan pelanggan.
Jaringan: Rencanakan penyebaran jaringan Anda, termasuk topologi dan pertahanan. Isolasi sumber daya antara pelanggan dan penuhi kebutuhan konektivitas mereka, termasuk mengintegrasikan dengan jaringan mereka dan menyebarkan sumber daya ke lingkungan mereka.
Data: Pilih penyimpanan data yang sesuai dan rencanakan untuk mengisolasi data pelanggan sambil menjaga efisiensi operasional. Pertimbangkan perencanaan kapasitas berdasarkan skala dan pertumbuhan Anda, dan pastikan data Anda memenuhi persyaratan ketahanan pelanggan.
Praktik DevOps: Menyebarkan infrastruktur dan aplikasi untuk setiap pelanggan sesuai dengan model penyewaan Anda. Gunakan pendekatan terstruktur untuk perubahan, termasuk peluncuran progresif.
Manajemen insiden : Menetapkan tanggung jawab mengoperasikan SaaS dan elemen budaya yang diperlukan dalam organisasi Anda. Bersiaplah untuk insiden dengan berinvestasi dalam alat dan proses untuk penyelidikan, remediasi, dan komunikasi.

Gunakan Alat Tinjauan Penilaian untuk mengevaluasi kesiapan beban kerja SaaS yang dioptimalkan dalam produksi.

Tip

Setiap keputusan arsitektur melibatkan berbagai pertimbangan dan serangkaian kompromi yang diakui yang menyeimbangkan berbagai aspek kerangka kerja. Tradeoff ini ditunjukkan oleh ikon ini. .

Sumber daya apa yang tersedia?

Multitenancy adalah metodologi bisnis inti untuk merancang beban kerja SaaS. Baca sumber daya tambahan ini untuk mempelajari lebih lanjut.

  • SaaS dan arsitektur solusi multipenyewa: Menyediakan panduan yang luas dan terperinci tentang cara merancang SaaS, termasuk informasi tentang bagaimana layanan Azure tertentu dapat digunakan untuk mendukung tujuan desain SaaS.

Langkah berikutnya

Pahami metodologi yang harus diikuti saat merancang beban kerja SaaS di Azure.