Dukungan memcached MySQL - Layanan Basis Data Relasional Amazon

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

Dukungan memcached MySQL

Amazon RDS mendukung penggunaan antarmuka memcached pada tabel InnoDB yang diperkenalkan di MySQL 5.6. API memcached memungkinkan aplikasi menggunakan tabel InnoDB dengan cara yang serupa dengan penyimpanan data nilai kunci NoSQL.

catatan

Antarmuka memcached tidak lagi tersedia di MySQL 8.4. Saat Anda meng-upgrade instans DB Anda ke MySQL 8.4, Anda harus memcached menonaktifkan di grup opsi yang ada.

Antarmuka memcached adalah cache sederhana berbasis kunci. Aplikasi menggunakan memcached untuk menyisipkan, memanipulasi, dan mengambil pasangan data nilai kunci dari cache. MySQL 5.6 memperkenalkan plugin yang menerapkan layanan daemon yang mengekspos data dari tabel InnoDB melalui protokol memcached. Untuk informasi selengkapnya tentang plugin memcached MySQL, lihat InnoDB integration with memcached.

Untuk mengaktifkan dukungan memcached instans DB RDS for MySQL
  1. Tentukan grup keamanan yang akan digunakan untuk mengontrol akses ke antarmuka memcached. Jika set aplikasi yang sudah menggunakan antarmuka SQL sama dengan yang akan mengakses antarmuka memcached, Anda dapat menggunakan grup keamanan VPC yang sudah ada yang digunakan oleh antarmuka SQL. Jika set aplikasi yang berbeda akan mengakses antarmuka memcached, tentukan VPC atau grup keamanan DB baru. Untuk informasi selengkapnya tentang cara mengelola grup keamanan, lihat Mengontrol akses dengan grup keamanan

  2. Buat grup opsi DB kustom, dengan memilih MySQL sebagai jenis dan versi mesin. Untuk informasi selengkapnya tentang cara membuat grup opsi, lihat Membuat grup opsi.

  3. Tambahkan opsi MEMCACHED untuk grup opsi. Tentukan port yang akan digunakan antarmuka memcached, dan grup keamanan yang akan digunakan untuk mengontrol akses ke antarmuka. Untuk informasi selengkapnya tentang cara menambahkan opsi, lihat Menambahkan opsi ke grup opsi.

  4. Ubah pengaturan opsi untuk mengonfigurasi parameter memcached, jika perlu. Untuk informasi selengkapnya tentang cara mengubah pengaturan opsi, lihat Memodifikasi pengaturan opsi.

  5. Terapkan grup opsi ke instans. Amazon RDS memungkinkan dukungan memcached untuk instans tersebut ketika grup opsi diterapkan:

    • Anda mengaktifkan dukungan memcached untuk instans baru dengan menentukan grup opsi kustom saat Anda meluncurkan instans. Untuk informasi selengkapnya tentang cara meluncurkan instans MySQL, lihat Membuat instans DB Amazon RDS.

    • Anda mengaktifkan dukungan memcached untuk instans yang ada dengan menentukan grup opsi kustom saat Anda memodifikasi instans. Untuk informasi selengkapnya tentang cara memodifikasi instans DB, lihat Memodifikasi instans Amazon RDS DB.

  6. Tentukan kolom mana dalam tabel MySQL Anda yang dapat diakses melalui antarmuka memcached. Plugin memcached membuat tabel katalog bernama containers dalam basis data khusus bernama innodb_memcache. Anda memasukkan baris ke tabel containers guna memetakan tabel InnoDB untuk akses melalui memcached. Anda menentukan kolom dalam tabel InnoDB yang digunakan untuk menyimpan nilai kunci memcached, dan satu atau lebih kolom yang digunakan untuk menyimpan nilai-nilai data yang terkait dengan kunci. Anda juga menentukan nama yang digunakan aplikasi memcached untuk merujuk ke set kolom tersebut. Untuk detail tentang cara menyisipkan baris ke dalam tabel containers, lihat Internal plugin memcached InnoDB. Untuk contoh pemetaan tabel InnoDB dan cara mengaksesnya melalui memcached, lihat Writing applications for the InnoDB memcached plugin.

  7. Jika aplikasi yang mengakses memcached antarmuka berada di komputer atau EC2 instance yang berbeda dari aplikasi yang menggunakan antarmuka SQL, tambahkan informasi koneksi untuk komputer tersebut ke grup keamanan VPC yang terkait dengan instance MySQL. Untuk informasi selengkapnya tentang mengelola grup keamanan, lihat Mengontrol akses dengan grup keamanan.

Anda menonaktifkan dukungan memcached untuk instans dengan memodifikasi instans dan menentukan grup opsi default untuk versi MySQL. Untuk informasi selengkapnya tentang cara memodifikasi instans DB, lihat Memodifikasi instans Amazon RDS DB.

Pertimbangan keamanan memcached MySQL

Protokol memcached tidak mendukung autentikasi pengguna. Untuk informasi selengkapnya tentang pertimbangan keamanan memcached MySQL, lihat Security Considerations for the InnoDB memcached Plugin di dokumentasi MySQL.

Anda dapat mengambil tindakan berikut untuk membantu meningkatkan keamanan antarmuka memcached:

  • Tentukan port yang berbeda dengan default 11211 ketika menambahkan opsi MEMCACHED untuk grup opsi.

  • Pastikan Anda mengaitkan memcached antarmuka dengan grup keamanan VPC yang membatasi akses ke alamat dan instans klien yang diketahui dan EC2 tepercaya. Untuk informasi selengkapnya tentang cara mengelola grup keamanan, lihat Mengontrol akses dengan grup keamanan.

Informasi koneksi memcached MySQL

Untuk mengakses antarmuka memcached, aplikasi harus menentukan nama DNS instans Amazon RDS dan nomor port memcached. Misalnya, jika suatu instans memiliki nama DNS my-cache-instance.cg034hpkmmjt.region.rds.amazonaws.com dan antarmuka memcached menggunakan port 11212, informasi koneksi yang ditentukan dalam PHP akan:

<?php $cache = new Memcache; $cache->connect('my-cache-instance.cg034hpkmmjt.region.rds.amazonaws.com',11212); ?>
Untuk menemukan nama DNS dan memcached port instans DB MySQL
  1. Masuk ke AWS Management Console dan buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.

  2. Di sudut kanan atas AWS Management Console, pilih wilayah yang berisi instans DB.

  3. Di panel navigasi, pilih Basis data.

  4. Pilih nama instans DB MySQL untuk menampilkan detailnya.

  5. Di bagian Terhubung, perhatikan nilai bidang Titik Akhir. Nama DNS sama dengan titik akhir. Perhatikan juga bahwa port di bagian Terhubung tidak digunakan untuk mengakses antarmuka memcached.

  6. Di bagian Detail, perhatikan nama yang tercantum di kolom Grup Opsi.

  7. Di panel navigasi, pilih Grup opsi.

  8. Pilih nama grup opsi yang digunakan oleh instans DB MySQL untuk menampilkan detail grup opsi. Di bagian Opsi, perhatikan nilai pengaturan Port untuk opsi MEMCACHED.

Pengaturan opsi memcached MySQL

Amazon RDS mengekspos parameter memcached MySQL sebagai pengaturan opsi di opsi MEMCACHED Amazon RDS.

Parameter memcached MySQL

  • DAEMON_MEMCACHED_R_BATCH_SIZE – bilangan bulat yang menentukan jumlah operasi baca memcached (get) yang harus dilakukan sebelum melakukan COMMIT untuk memulai transaksi baru. Nilai yang diizinkan adalah 1 hingga 4294967295 dan default-nya adalah 1. Opsi tidak berlaku sampai instans dimulai ulang.

  • DAEMON_MEMCACHED_W_BATCH_SIZE – bilangan bulat yang menentukan berapa banyak operasi tulis memcached, seperti add, set, atau incr, yang harus dilakukan sebelum melakukan COMMIT untuk memulai transaksi baru. Nilai yang diizinkan adalah 1 hingga 4294967295 dan default-nya adalah 1. Opsi tidak berlaku sampai instans dimulai ulang.

  • INNODB_API_BK_COMMIT_INTERVAL – bilangan bulat yang menentukan seberapa sering penerapan commit otomatis koneksi idle yang menggunakan antarmuka memcached InnoDB. Nilai yang diizinkan adalah 1 hingga 1073741824 dan default-nya adalah 5. Opsi akan langsung diterapkan tanpa harus memulai ulang instans.

  • INNODB_API_DISABLE_ROWLOCK – Boolean yang menonaktifkan (1 (true)) atau mengaktifkan (0 (false)) penggunaan kunci baris saat menggunakan antarmuka memcached InnoDB. Default-nya adalah 0 (false). Opsi tidak berlaku sampai instans dimulai ulang.

  • INNODB_API_ENABLE_MDL – Boolean yang saat ditetapkan ke 0 (false) akan mengunci tabel yang digunakan oleh plugin memcached InnoDB, sehingga tidak dapat dihapus atau diubah oleh DDL melalui antarmuka SQL. Default-nya adalah 0 (false). Opsi tidak berlaku sampai instans dimulai ulang.

  • INNODB_API_TRX_LEVEL – bilangan bulat yang menentukan tingkat isolasi transaksi untuk kueri yang diproses oleh antarmuka memcached. Nilai yang diizinkan adalah 0 hingga 3. Default-nya adalah 0. Opsi tidak berlaku sampai instans dimulai ulang.

Amazon RDS mengonfigurasi parameter memcached MySQL berikut dan parameter ini tidak dapat dimodifikasi: DAEMON_MEMCACHED_LIB_NAME, DAEMON_MEMCACHED_LIB_PATH, dan INNODB_API_ENABLE_BINLOG. Parameter yang diatur administrator MySQL dengan menggunakan daemon_memcached_options yang tersedia sebagai pengaturan opsi MEMCACHED individu di Amazon RDS.

Parameter daemon_memcached_options MySQL

  • BINDING_PROTOCOL – string yang menentukan protokol pengikatan yang akan digunakan. Nilai yang diizinkan adalah auto, ascii, atau binary. Default-nya adalah auto, yang berarti server menegosiasikan protokol secara otomatis dengan klien. Opsi tidak berlaku sampai instans dimulai ulang.

  • BACKLOG_QUEUE_LIMIT – bilangan bulat yang menentukan jumlah koneksi jaringan yang dapat menunggu untuk diproses oleh memcached. Meningkatkan batas ini dapat mengurangi kesalahan yang diterima oleh klien yang tidak dapat terhubung ke instans memcached, tetapi tidak meningkatkan performa server. Nilai yang diizinkan adalah 1 hingga 2048 dan default-nya adalah 1024. Opsi tidak berlaku sampai instans dimulai ulang.

  • CAS_DISABLED – Boolean yang mengaktifkan (1 (true)) atau menonaktifkan (0 (false)) penggunaan perbandingan dan pertukaran (CAS), yang mengurangi ukuran per item sebesar 8 byte. Default-nya adalah 0 (false). Opsi tidak berlaku sampai instans dimulai ulang.

  • CHUNK_SIZE – bilangan bulat yang menentukan ukuran potongan minimum, dalam byte, untuk mengalokasikan kunci, nilai, dan bendera item terkecil. Nilai yang diizinkan adalah 1 hingga 48. Default-nya adalah 48 dan Anda dapat meningkatkan efisiensi memori secara signifikan dengan nilai yang lebih rendah. Opsi tidak berlaku sampai instans dimulai ulang.

  • CHUNK_SIZE_GROWTH_FACTOR – bilangan desimal yang mengontrol ukuran potongan yang baru. Ukuran potongan baru adalah ukuran potongan sebelumnya dikalikan CHUNK_SIZE_GROWTH_FACTOR. Nilai yang diizinkan adalah 1 hingga 2, default-nya adalah 1,25. Opsi tidak berlaku sampai instans dimulai ulang.

  • ERROR_ON_MEMORY_EXHAUSTED – Boolean yang jika ditetapkan ke 1 (true) akan menentukan bahwa memcached akan menghasilkan kesalahan daripada mengosongkan item ketika tidak ada lagi memori untuk menyimpan item. Jika ditetapkan ke 0 (false), memcached akan mengosongkan item jika tidak ada lagi memori. Default-nya adalah 0 (false). Opsi tidak berlaku sampai instans dimulai ulang.

  • MAX_SIMULTANEOUS_CONNECTIONS – bilangan bulat yang menentukan jumlah maksimum koneksi serentak. Menetapkan nilai ini ke nilai di bawah 10 akan mencegah MySQL dimulai. Nilai yang diizinkan adalah 10 hingga 1024 dan default-nya adalah 1024. Opsi tidak berlaku sampai instans dimulai ulang.

  • VERBOSITY – string yang menentukan tingkat informasi yang dicatat dalam log kesalahan MySQL dengan layanan memcached. Default-nya adalah v. Opsi ini tidak berlaku hingga instans dimulai ulang. Nilai yang diizinkan adalah:

    • v – Mencatat log kesalahan dan peringatan saat menjalankan loop peristiwa utama.

    • vv – Selain informasi yang dicatat oleh v, nilai ini juga mencatat setiap perintah dan respons klien.

    • vvv – Selain informasi yang dicatat oleh vv, nilai ini juga mencatat transisi keadaan internal.

Amazon RDS mengonfigurasi parameter DAEMON_MEMCACHED_OPTIONS MySQL berikut, dan bersifat tidak dapat dimodifikasi: DAEMON_PROCESS, LARGE_MEMORY_PAGES, MAXIMUM_CORE_FILE_LIMIT, MAX_ITEM_SIZE, LOCK_DOWN_PAGE_MEMORY, MASK, IDFILE, REQUESTS_PER_EVENT, SOCKET, dan USER.