Cara Kerja Penemuan Otomatis - Amazon ElastiCache

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

Cara Kerja Penemuan Otomatis

Bagian ini menjelaskan cara aplikasi klien menggunakan ElastiCache Cluster Client untuk mengelola koneksi simpul cache, dan berinteraksi dengan item data pada cache.

Menghubungkan ke Simpul Cache

Dari sudut pandang aplikasi, terhubung ke titik akhir konfigurasi klaster tidak berbeda dengan terhubung secara langsung ke tiap-tiap simpul cache. Diagram urutan berikut menunjukkan proses menghubungkan ke simpul cache.

Menghubungkan ke Simpul Cache
1
Aplikasi meresolusi nama DNS dari titik akhir konfigurasi. Karena titik akhir konfigurasi memelihara entri CNAME untuk semua simpul cache, nama DNS diresolusi menjadi salah satu simpul; klien kemudian dapat terhubung ke simpul tersebut.
2
Klien meminta informasi konfigurasi untuk semua simpul lainnya. Karena setiap simpul memelihara informasi konfigurasi untuk semua simpul di klaster, simpul mana pun dapat meneruskan informasi konfigurasi ke klien jika diminta.
3

Klien menerima daftar terkini yang berisi nama host simpul cache dan alamat IP. Klien kemudian dapat terhubung ke semua simpul lain dalam klaster.

catatan

Program klien menyegarkan daftar nama host simpul cache dan alamat IP sekali setiap menit. Interval polling ini dapat disesuaikan jika perlu.

Operasi Klaster Normal

Ketika aplikasi telah terhubung ke semua simpul cache, ElastiCache Cluster Client menentukan simpul mana yang harus menyimpan item data individual, dan simpul mana yang harus dikueri untuk item data tersebut nanti. Diagram urutan berikut menunjukkan proses operasi klaster normal.

Operasi Klaster Normal
1
Aplikasi ini mengeluarkan permintaan get untuk item data tertentu, yang teridentifikasi oleh kuncinya.
2
Klien menggunakan algoritma hashing terhadap kunci untuk menentukan simpul cache yang berisi item data.
3
Item data diminta dari simpul yang sesuai.
4
Item data ditampilkan ke aplikasi.

Operasi Lainnya

Dalam beberapa situasi, Anda mungkin melakukan perubahan pada simpul klaster. Misalnya, Anda mungkin menambahkan simpul tambahan untuk mengakomodasi permintaan tambahan, atau menghapus simpul untuk menghemat uang selama periode berkurangnya permintaan. Atau Anda mungkin mengganti simpul karena kegagalan simpul atau hal lainnya.

Ketika ada perubahan dalam klaster yang memerlukan pembaruan metadata ke titik akhir klaster, perubahan tersebut dilakukan pada semua simpul secara bersamaan. Dengan demikian, metadata di simpul mana pun menjadi konsisten dengan metadata di semua simpul lain di klaster.

Dalam setiap kasus ini, metadata menjadi konsisten di antara semua simpul setiap saat karena metadata diperbarui pada saat yang sama untuk semua simpul dalam klaster. Anda harus selalu menggunakan titik akhir konfigurasi untuk memperoleh titik akhir dari berbagai simpul di klaster. Dengan menggunakan titik akhir konfigurasi, Anda memastikan bahwa Anda tidak akan memperoleh data titik akhir dari simpul yang “menghilang”.

Menambahkan Simpul

Pada saat simpul sedang dibuat, titik akhirnya tidak disertakan ke dalam metadata. Begitu sudah tersedia, simpul akan ditambahkan ke metadata dari setiap simpul klaster. Dalam skenario ini, metadata bersifat konsisten di antara semua simpul dan Anda akan dapat berinteraksi dengan simpul baru hanya setelah simpul itu tersedia. Sebelum simpul tersedia, Anda tidak akan mengetahuinya dan akan berinteraksi dengan simpul di klaster Anda seakan-akan simpul baru tersebut tidak ada.

Menghapus Simpul

Ketika simpul dihapus, pertama-tama titik akhirnya dihapus dari metadata lalu simpul tersebut dihapus dari klaster. Dalam skenario ini metadata di semua simpul bersifat konsisten dan tidak ada situasi saat metadata berisi titik akhir untuk simpul yang akan dihapus sementara simpul tersebut tidak tersedia. Selama waktu penghapusannya, simpul tidak dilaporkan di dalam metadata dan aplikasi Anda hanya akan berinteraksi dengan simpul n-1 yang tersisa, seolah-olah simpul tersebut tidak ada.

Mengganti simpul

Jika simpul gagal, ElastiCache menghentikan simpul tersebut dan membuat penggantinya. Proses penggantian membutuhkan waktu beberapa menit. Selama waktu itu, metadata di semua simpul masih menunjukkan titik akhir untuk simpul yang gagal, tetapi setiap percobaan untuk berinteraksi dengan simpul tersebut akan gagal. Oleh karena itu, logika Anda harus selalu menyertakan logika percobaan ulang.