Gunakan PHP untuk mengendalikan pangkalan data Redis

王林
Lepaskan: 2023-05-16 15:22:01
asal
3277 orang telah melayarinya

Redis ialah pangkalan data nilai kunci berasaskan memori berprestasi tinggi yang boleh digunakan dalam pelbagai senario seperti caching dan beratur. PHP ialah bahasa pembangunan yang boleh digunakan dalam pelbagai senario seperti pembangunan web dan perkhidmatan back-end. Jika kita boleh menggabungkan PHP dan Redis, kita boleh mencapai prestasi dan kesan yang lebih baik.

Artikel ini akan memperkenalkan cara menggunakan PHP untuk mengendalikan pangkalan data Redis, termasuk operasi asas Redis (seperti penyimpanan dan pembacaan data, penggunaan senarai, jadual cincang dan jenis data lain), serta beberapa teknik lanjutan (seperti transaksi Redis, ketekunan, pengelompokan, dsb.).

1. Pasang sambungan Redis dan sambungkan ke pangkalan data Redis

Sebelum memulakan operasi, anda perlu memastikan sambungan phpredis telah dipasang dalam persekitaran PHP anda. Ia boleh dipasang melalui arahan berikut:

pecl install redis
Salin selepas log masuk

Selepas pemasangan selesai, anda perlu menambah konfigurasi berikut pada fail php.ini:

extension=redis.so
Salin selepas log masuk

Kemudian mulakan semula perkhidmatan PHP, dan anda boleh menggunakan sambungan Redis dalam kod PHP .

Seterusnya, kita perlu menyambung ke pangkalan data Redis. Anda boleh mencipta klien Redis melalui kod berikut:

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

Di sini, kami menggunakan kaedah sambung kelas Redis untuk menyambung ke perkhidmatan Redis tempatan, dan nombor port ialah 6379 lalai. Jika anda perlu menyambung ke perkhidmatan Redis lain, anda boleh mengubah suai alamat IP dan nombor port kepada nilai yang sepadan.

2. Operasi asas Redis

  1. Penyimpanan dan pembacaan data

Redis ialah pangkalan data nilai kunci yang boleh diakses melalui set dan dapatkan Kaedah untuk menyimpan dan membaca data:

$redis->set('name', 'Tom');
echo $redis->get('name'); // 输出:Tom
Salin selepas log masuk

Di sini, kami menggunakan kaedah yang ditetapkan untuk mengaitkan nama nama kunci kepada rentetan dengan nilai Tom. Kemudian, gunakan kaedah get untuk mendapatkan nilai kunci nama dan keluarkannya.

  1. Senarai

Terdapat juga jenis data dalam Redis yang dipanggil senarai, yang boleh dikendalikan melalui kaedah seperti lpush dan lrange. Sebagai contoh, kita boleh mencipta senarai melalui kod berikut dan memasukkan tiga elemen ke dalam kepalanya:

$redis->lpush('list', 'a', 'b', 'c');
Salin selepas log masuk

Kemudian, kita boleh mendapatkan semua elemen senarai melalui kaedah lrange dan mengeluarkannya:

$list = $redis->lrange('list', 0, -1);
foreach ($list as $item) {
    echo $item . "
";
}
// 输出:c b a
Salin selepas log masuk

Di sini, kami menggunakan kaedah lrange untuk mendapatkan semua elemen senarai, dan hasil yang dikembalikan ialah tatasusunan rentetan tertib.

  1. Jadual cincang

Jenis data lain dalam Redis dipanggil jadual cincang, yang boleh dikendalikan melalui kaedah seperti hset dan hget. Sebagai contoh, kita boleh mencipta jadual cincang melalui kod berikut dan masukkan dua pasangan nilai kunci ke dalamnya:

$redis->hset('hash', 'name', 'Tom');
$redis->hset('hash', 'age', 20);
Salin selepas log masuk

Kemudian, kita boleh mendapatkan nilai kunci dalam jadual cincang melalui kaedah dan output hget Ia:

echo $redis->hget('hash', 'name'); // 输出:Tom
echo $redis->hget('hash', 'age'); // 输出:20
Salin selepas log masuk

Di sini, kami menggunakan kaedah hget untuk mendapatkan nilai kekunci nama dan umur dalam cincang jadual cincang dan mengeluarkannya.

3. Kemahiran lanjutan Redis

  1. Transaksi Redis

Dalam Redis, operasi transaksi boleh dilakukan melalui kaedah seperti multi dan exec. Dengan cara ini, berbilang operasi boleh dilaksanakan secara keseluruhan, dan sama ada kesemuanya berjaya atau kesemuanya gagal dan ditarik balik.

Sebagai contoh, kita boleh membuat transaksi dan menambah dua operasi padanya melalui kod berikut:

$redis->multi();
$redis->set('name', 'Tom');
$redis->set('age', 20);
$redis->exec();
Salin selepas log masuk

Kemudian, kedua-dua operasi ini akan dilaksanakan secara keseluruhan, Jika ralat berlaku dalam mana-mana daripada operasi ini, keseluruhan transaksi akan ditarik balik.

  1. Kegigihan Redis

Redis menyokong dua kaedah kegigihan, iaitu RDB dan AOF. RDB ialah sejenis kegigihan syot kilat, yang boleh menyimpan data secara berkala dalam memori Redis ke cakera dalam bentuk syot kilat. AOF ialah kegigihan berasaskan tambahan yang boleh merekodkan semua operasi tulis yang dilakukan oleh Redis dan menyimpannya ke cakera dalam bentuk log.

Anda boleh menggunakan kod berikut untuk mengkonfigurasi mod kegigihan Redis:

$redis->config('set', 'save "900 1" "300 10"'); // RDB持久化配置
$redis->config('set', 'appendonly yes'); // AOF持久化配置
Salin selepas log masuk

Di sini, kami menggunakan kaedah konfigurasi untuk menetapkan mod kegigihan Redis, tetapkan selang kegigihan RDB kepada 900 saat , dan Simpan fail RDB pada cakera buka kegigihan AOF, rekod operasi tulis dan tambahkannya pada fail AOF.

  1. Kluster Redis

Dalam Redis, penggunaan teragih boleh dicapai melalui kaedah yang dipanggil Kluster Redis. Kluster Redis menggabungkan berbilang kejadian Redis ke dalam kelompok, dan data boleh disimpan dalam keadaan berbeza sambil memastikan ketersediaan dan konsistensi yang tinggi.

Anda boleh menggunakan kod berikut untuk menyambung ke Redis Cluster:

$redis = new RedisCluster(NULL, ['127.0.0.1:7000', '127.0.0.1:7001', '127.0.0.1:7002']);
Salin selepas log masuk

Di sini, kami menggunakan pembina kelas RedisCluster untuk menyambung ke Redis Cluster yang mengandungi tiga nod, yang boleh dilakukan hanya seperti menggunakan satu contoh Redis Lakukan operasi.

Ringkasan

Artikel ini memperkenalkan cara menggunakan PHP untuk mengendalikan pangkalan data Redis, termasuk operasi asas Redis dan beberapa teknik lanjutan. Dengan memahami operasi ini, kami boleh menggunakan kelebihan Redis dengan lebih baik dan meningkatkan prestasi serta kesan aplikasi web. Pada masa yang sama, perlu diingatkan bahawa pembangun juga perlu menggunakan pelbagai fungsi Redis secara fleksibel mengikut keperluan sebenar untuk mencapai hasil yang lebih baik.

Atas ialah kandungan terperinci Gunakan PHP untuk mengendalikan pangkalan data Redis. 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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!