Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk menggunakan teknologi caching Redis untuk pengurusan masa tamat permintaan dalam aplikasi PHP?

Bagaimana untuk menggunakan teknologi caching Redis untuk pengurusan masa tamat permintaan dalam aplikasi PHP?

王林
Lepaskan: 2023-06-19 22:16:01
asal
1442 orang telah melayarinya

Redis ialah sistem storan struktur data dalam memori sumber terbuka, selalunya digunakan untuk menyimpan data cache untuk meningkatkan prestasi aplikasi. PHP ialah bahasa skrip popular yang digunakan secara meluas dalam pembangunan aplikasi web. Artikel ini akan memperkenalkan cara menggunakan teknologi caching Redis untuk pengurusan masa tamat permintaan dalam aplikasi PHP.

  1. Pengenalan kepada Redis Cache

Redis menyediakan sistem storan nilai kunci, di mana kunci dan nilai boleh terdiri daripada pelbagai jenis struktur data, seperti rentetan dan cincang Jadual, senarai, dsb. Redis menyimpan data dalam ingatan, jadi kelajuan capaian sangat pantas, dan sering digunakan untuk menyimpan data cache untuk mengurangkan bilangan capaian pangkalan data.

  1. Menggunakan Redis dalam PHP

Menggunakan Redis dalam PHP memerlukan pemasangan sambungan Redis. Sambungan Redis boleh dipasang dalam persekitaran Linux melalui arahan berikut:

$ pecl install redis
Salin selepas log masuk

Kemudian tambah baris berikut pada fail php.ini:

extension=redis.so
Salin selepas log masuk

Dalam persekitaran Windows, sambungan Redis boleh dimuat turun dari tapak web PECL, dan letakkannya ke dalam direktori sambungan PHP. Kemudian ubah suai fail php.ini untuk mendayakan sambungan Redis.

Langkah pertama untuk menggunakan Redis ialah menyambung ke pelayan Redis. Anda boleh menggunakan kod berikut untuk mencipta objek Redis dan menyambung ke pelayan Redis tempatan:

$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
Salin selepas log masuk

Ini akan mencipta objek Redis dan menyambung ke pelayan Redis tempatan pada port 6379. Selepas menyambung ke pelayan Redis, anda boleh mula melakukan pelbagai operasi, seperti menetapkan pasangan nilai kunci, mendapatkan nilai, memadamkan nilai, dsb.

  1. Pengurusan masa tamat tempoh

Apabila menyimpan data dalam cache, biasanya perlu menentukan masa tamat tempoh. Jika data tidak lagi digunakan selepas satu tempoh masa, ia boleh dialih keluar secara automatik daripada cache untuk mengosongkan ruang cache. Redis membolehkan anda menentukan masa tamat tempoh untuk setiap kunci untuk memastikan bahawa data tamat tempoh dipadamkan dalam masa. Anda boleh menggunakan perintah EXPIRE Redis untuk menetapkan masa tamat tempoh kunci, seperti yang ditunjukkan di bawah:

$redis->set('mykey', 'myvalue');
$redis->expire('mykey', 60); //设置过期时间为60秒
Salin selepas log masuk

Kod di atas menetapkan nilai untuk kunci mykey dan menetapkan masa tamat tempoh untuk kunci kepada 60 saat . Dalam masa 60 saat, nilai kunci boleh diperolehi melalui arahan get. Jika atas apa-apa sebab kunci tidak diakses dalam masa 60 saat, kunci itu akan dialih keluar secara automatik daripada cache.

Selain menggunakan perintah tamat tempoh untuk menetapkan masa tamat tempoh, anda juga boleh menggunakan perintah pexpire untuk menetapkan masa tamat tempoh dalam milisaat, dan perintah tamat tempoh untuk menetapkan masa tamat tempoh kunci kepada cap masa UNIX .

Dalam aplikasi PHP, anda boleh menggunakan perintah set dan tamat tempoh untuk menyimpan hasil permintaan dalam cache Redis dan menetapkan masa tamat tempoh yang sesuai. Jika hasil yang diminta sudah ada dalam cache, ia boleh diambil terus daripada cache tanpa melakukan pertanyaan pangkalan data yang memakan masa. Contohnya, kod berikut menunjukkan cara untuk menyimpan hasil pertanyaan pangkalan data dalam cache Redis dan menetapkan masa tamat tempoh:

$key = 'hash:' . $query; //生成缓存键
if ($redis->exists($key)) {
    //从缓存中获取结果
    return unserialize($redis->get($key));
} else {
    //执行数据库查询
    $result = ... //执行数据库查询代码

    //将结果存储在Redis缓存中,并设置过期时间
    $redis->set($key, serialize($result));
    $redis->expire($key, $expiration);

    //返回查询结果
    return $result;
}
Salin selepas log masuk

Kod di atas menyimpan hasil pertanyaan pangkalan data dalam jadual cincang Redis bernama "hash:query" tengah . Jika data sudah wujud dalam jadual cincang itu, anda boleh mendapatkannya terus daripada jadual cincang. Jika tidak, pertanyaan pangkalan data dilaksanakan, hasilnya bersiri dan disimpan dalam jadual cincang Redis, dan jadual cincang ditetapkan dengan masa tamat tempoh yang sesuai. Pada kali berikutnya data yang sama diminta, keputusan boleh diperolehi daripada cache Redis tanpa menanyakan pangkalan data lagi.

  1. Kesimpulan

Menggunakan teknologi caching Redis boleh meningkatkan prestasi aplikasi PHP dengan ketara. Menggunakan Redis dalam aplikasi PHP, anda boleh mengurus data cache dan memaksimumkan penggunaan memori cache dengan menetapkan masa tamat tempoh. Dengan menyimpan data dalam cache Redis, anda boleh mengurangkan bilangan akses kepada pangkalan data dan mempercepatkan masa tindak balas aplikasi anda.

Atas ialah kandungan terperinci Bagaimana untuk menggunakan teknologi caching Redis untuk pengurusan masa tamat permintaan dalam aplikasi PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan