Merancang ulang sebagai layanan mikro di wadah Linux - AWS Panduan Preskriptif

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Merancang ulang sebagai layanan mikro di wadah Linux

Arsitektur layanan mikro adalah pendekatan untuk mengembangkan satu aplikasi sebagai rangkaian layanan kecil. Setiap layanan berjalan dalam prosesnya sendiri dan berkomunikasi dengan layanan lain melalui mekanisme ringan. Pendekatan ini memecah aplikasi monolitik menjadi layanan yang lebih kecil, di mana setiap layanan melayani satu tujuan dan digunakan sebagai wadah.

Kasus penggunaan

Strategi migrasi ini berguna jika:

  • Anda ingin mematahkan sistem monolitik Anda menjadi layanan mikro.

  • Anda memiliki sumber daya dan waktu yang tersedia untuk refactoring.

  • Anda dapat menyelesaikan semua dependensi .NET Framework.

  • Anda memiliki aplikasi yang berjalan lama.

Keuntungan

Pendekatan migrasi ini memberikan manfaat berikut, jika dibandingkan dengan aplikasi .NET lokal:

  • Inovasi lebih cepat karena lebih mudah untuk menambahkan fitur baru dalam arsitektur layanan mikro

  • ketersediaan dan keandalan tinggi

  • Peningkatan kelincahan dan skalabilitas sesuai permintaan

  • deployment berkelanjutan dan alur (CI/CD) deployment berkelanjutan (CI/CD).

  • Batas modul yang kuat dan keragaman teknis

Kekurangan

  • Upaya dan biaya refactoring

  • Kompleksitas operasional potensi

Layanan AWS

Anda dapat menggunakanAWS layanan berikut untuk mengembangkan sistem berbasis layanan mikro:

Alat

AWSLayanan Profesional menawarkan alat dan layanan khusus untuk membantu Anda mengubah aplikasi monolitik Anda menjadi layanan mikro.

Keputusan penyebaran

Anda dapat memilih dari lima opsi deployment:

  • Jika Anda ingin kontrol penuh atas konfigurasi lingkungan komputasi Anda, termasuk pengaturan memori dan penyimpanan, dan kontrol atas patch sistem operasi: terapkan aplikasi Anda sebagai wadah Linux pada instans EC2.

  • Jika kamu ingin container dikelola oleh Kubernetes dan dijalankan sebagai container tanpa server: deploy aplikasimu sebagai wadah Linux di Amazon EKS dengan Fargate.

  • Jika Anda ingin container dikelola oleh Amazon ECS dan dijalankan sebagai wadah tanpa server: terapkan aplikasi Anda sebagai wadah Linux di Amazon ECS dengan Fargate.

  • Jika kamu ingin container dikelola oleh Kubernetes, namun kamu ingin mengelola sendiri sumber daya komputasi dari container: deploy aplikasimu sebagai container Linux di Amazon EKS.

  • Jika Anda ingin kontainer dikelola oleh Amazon ECS, tetapi Anda ingin mengelola sendiri sumber daya komputasi kontainer: terapkan aplikasi Anda sebagai wadah Linux di Amazon ECS.

Refactoring .NET applications as microservices in Linux containers on AWS