Bobot titik akhir memang dapat digunakan untuk melakukan pengujian A/B dengan AWS Global Accelerator, tetapi kemampuan ini berlaku khusus untuk akselerator standar, bukan untuk akselerator routing khusus.
bobot titik akhir dan pengujian A/B dalam akselerator standar
Dalam akselerator standar, Anda dapat menetapkan bobot ke titik akhir individual dalam grup titik akhir. Bobot ini menentukan proporsi lalu lintas yang dialihkan ke setiap titik akhir. Dengan menyesuaikan bobot, Anda dapat mengontrol berapa banyak lalu lintas ke setiap versi aplikasi Anda, memungkinkan pergeseran lalu lintas bertahap untuk skenario seperti pengujian A/B atau rilis kenari.
Misalnya, jika Anda memiliki dua titik akhir, Anda dapat menetapkan bobot 1 dan 255, jadi sekitar 1/256 lalu lintas menuju ke titik akhir pertama (mis., Versi baru aplikasi Anda) dan 255/256 ke yang kedua (versi stabil saat ini). Anda kemudian dapat secara bertahap meningkatkan berat versi baru untuk mengubah lebih banyak lalu lintas ke sana, memantau kinerja dan pengalaman pengguna sebelum peluncuran penuh. Menetapkan bobot titik akhir ke 0 menghentikan lalu lintas ke titik akhir itu sepenuhnya. Distribusi lalu lintas tertimbang ini didasarkan pada rasio berat masing -masing titik akhir dengan berat total dalam kelompok [2] [3] [4] [5].
Mengapa bobot titik akhir tidak digunakan untuk pengujian A/B dalam akselerator routing khusus
Sebaliknya, akselerator perutean kustom bekerja secara berbeda. Di sini, titik akhir bukanlah instance EC2 individu atau penyeimbang beban melainkan subnet VPC yang berisi instance EC2. Routing lalu lintas didasarkan pada pemetaan port statis dari port pendengar akselerator ke port tujuan pada instance EC2 dalam subnet ini.
Yang penting, akselerator routing khusus tidak mendukung bobot titik akhir untuk distribusi lalu lintas. Lalu lintas dialihkan secara deterministik ke subnet dan port yang dipetakan tanpa penyeimbangan beban atau distribusi tertimbang. Juga, pemeriksaan kesehatan dan failover tidak dilakukan untuk akselerator routing khusus, dan lalu lintas dialihkan terlepas dari kesehatan titik akhir. Desain ini dimaksudkan untuk menggunakan kasus seperti VoIP atau game, di mana Anda memerlukan kontrol yang tepat atas contoh mana yang menangani koneksi, daripada distribusi lalu lintas probabilistik [4] [7] [9].
Ringkasan
- Akselerator standar mendukung bobot titik akhir, memungkinkan Anda untuk melakukan pengujian A/B dengan mengendalikan pangsa lalu lintas yang diterima setiap titik akhir.
- Akselerator routing khusus tidak mendukung bobot titik akhir; Routing lalu lintas deterministik berdasarkan pemetaan port ke subnet VPC, membuat pengujian A/B melalui bobot tidak layak.
- Untuk pengujian A/B dengan routing khusus, Anda perlu menerapkan perutean level aplikasi atau mekanisme lain di luar konfigurasi berat akselerator global.
Oleh karena itu, jika tujuan Anda adalah melakukan pengujian A/B melalui pembobotan lalu lintas, Anda harus menggunakan akselerator standar daripada akselerator routing khusus [2] [3] [4] [7].
Kutipan:
[1] https://docs.aws.amazon.com/global-accelerator/latest/dg/about-endpoints-endpoint-weights.html
[2] https://docs.aws.amazon.com/global-accelerator/latest/dg/introduction-how-it-works.html
[3] https://cloudchipr.com/blog/aws-global-accelerator
[4] https://www.alibabacloud.com/help/en/ga/user-guide/overview-4/
[5] https://www.nops.io/glossary/what-is-aws-global-accelerator/
[6] https://awscli.amazonaws.com/v2/documentation/api/latest/reference/globalaccelerator/add-endpoints.html
[7] https://docs.aws.amazon.com/global-accelerator/latest/dg/about-custom-routing-guidelines.html
[8] https://aws.plainenglish.io/understanding-aws-global-accelerator-and-when-to-use-it-799c2bc440f6
[9] https://awscli.amazonaws.com/v2/documentation/api/2.4.18/reference/globalaccelerator/index.html