Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana cara memcache dengan MySQL bekerja?

Cache, secara umum, adalah mesin penyimpanan kunci/nilai yang sangat cepat tempat Anda dapat menyimpan nilai (biasanya serial) dengan kunci yang telah ditentukan, sehingga Anda dapat mengambil nilai yang disimpan dengan kunci yang sama.

Sehubungan dengan MySQL, Anda akan menulis kode aplikasi Anda sedemikian rupa, sehingga Anda akan memeriksa keberadaan data dalam cache, sebelum mengeluarkan permintaan ke database. Jika kecocokan ditemukan (ada kunci yang cocok), Anda akan memiliki akses ke data yang terkait dengan kunci tersebut. Tujuannya adalah untuk tidak mengeluarkan permintaan ke database yang lebih mahal jika dapat dihindari.

Contoh (hanya demonstratif):

$cache = new Memcached();

$cache->addServer('servername', 11211);

$myCacheKey = 'my_cache_key';

$row = $cache->get($myCacheKey);

if (!$row) {

    // Issue painful query to mysql
    $sql = "SELECT * FROM table WHERE id = :id";

    $dbo->prepare($sql);
    $stmt->bindValue(':id', $someId, PDO::PARAM_INT);

    $row = $stmt->fetch(PDO::FETCH_OBJ);

    $cache->set($myCacheKey, serialize($row));
}

// Now I have access to $row, where I can do what I need to
// And for subsequent calls, the data will be pulled from cache and skip
// the query altogether
var_dump(unserialize($row));

Lihat dokumen PHP di memcached untuk info lebih lanjut, ada beberapa contoh dan komentar yang bagus.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menghasilkan pohon berbasis Kedalaman dari Data Hirarki di MySQL (tanpa CTE)

  2. Contoh minimal menggunakan pilih... untuk pembaruan untuk mengisolasi baris

  3. Mengisi Kesenjangan dalam Tanggal yang Dikembalikan dari Database - solusi SQL murni mungkin?

  4. Menghindari injeksi SQL dalam SQL-regex yang dibuat pengguna

  5. Buat database pada startup docker-compose