


Gunakan PHP untuk mengendalikan pangkalan data Redis
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
Selepas pemasangan selesai, anda perlu menambah konfigurasi berikut pada fail php.ini:
extension=redis.so
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
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
- 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
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.
- 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');
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
Di sini, kami menggunakan kaedah lrange untuk mendapatkan semua elemen senarai, dan hasil yang dikembalikan ialah tatasusunan rentetan tertib.
- 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);
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
Di sini, kami menggunakan kaedah hget untuk mendapatkan nilai kekunci nama dan umur dalam cincang jadual cincang dan mengeluarkannya.
3. Kemahiran lanjutan Redis
- 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();
Kemudian, kedua-dua operasi ini akan dilaksanakan secara keseluruhan, Jika ralat berlaku dalam mana-mana daripada operasi ini, keseluruhan transaksi akan ditarik balik.
- 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持久化配置
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.
- 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']);
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!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Masa depan PHP akan dicapai dengan menyesuaikan diri dengan trend teknologi baru dan memperkenalkan ciri -ciri inovatif: 1) menyesuaikan diri dengan pengkomputeran awan, kontena dan seni bina microservice, menyokong Docker dan Kubernetes; 2) memperkenalkan pengkompil JIT dan jenis penghitungan untuk meningkatkan prestasi dan kecekapan pemprosesan data; 3) Berterusan mengoptimumkan prestasi dan mempromosikan amalan terbaik.

PHP dan Python masing -masing mempunyai kelebihan sendiri, dan pilihannya harus berdasarkan keperluan projek. 1.Php sesuai untuk pembangunan web, dengan sintaks mudah dan kecekapan pelaksanaan yang tinggi. 2. Python sesuai untuk sains data dan pembelajaran mesin, dengan sintaks ringkas dan perpustakaan yang kaya.

Mod Redis cluster menyebarkan contoh Redis ke pelbagai pelayan melalui sharding, meningkatkan skalabilitas dan ketersediaan. Langkah -langkah pembinaan adalah seperti berikut: Buat contoh Redis ganjil dengan pelabuhan yang berbeza; Buat 3 contoh sentinel, memantau contoh redis dan failover; Konfigurasi fail konfigurasi sentinel, tambahkan pemantauan maklumat contoh dan tetapan failover; Konfigurasi fail konfigurasi contoh Redis, aktifkan mod kluster dan tentukan laluan fail maklumat kluster; Buat fail nodes.conf, yang mengandungi maklumat setiap contoh Redis; Mulakan kluster, laksanakan perintah Buat untuk membuat kluster dan tentukan bilangan replika; Log masuk ke kluster untuk melaksanakan perintah maklumat kluster untuk mengesahkan status kluster; buat

PHP tidak mati, tetapi sentiasa menyesuaikan diri dan berkembang. 1) PHP telah menjalani beberapa lelaran versi sejak tahun 1994 untuk menyesuaikan diri dengan trend teknologi baru. 2) Ia kini digunakan secara meluas dalam e-dagang, sistem pengurusan kandungan dan bidang lain. 3) Php8 memperkenalkan pengkompil JIT dan fungsi lain untuk meningkatkan prestasi dan pemodenan. 4) Gunakan OPCACHE dan ikut piawaian PSR-12 untuk mengoptimumkan prestasi dan kualiti kod.

Redis menggunakan jadual hash untuk menyimpan data dan menyokong struktur data seperti rentetan, senarai, jadual hash, koleksi dan koleksi yang diperintahkan. Redis berterusan data melalui snapshots (RDB) dan menambah mekanisme tulis sahaja (AOF). Redis menggunakan replikasi master-hamba untuk meningkatkan ketersediaan data. Redis menggunakan gelung acara tunggal untuk mengendalikan sambungan dan arahan untuk memastikan atom dan konsistensi data. Redis menetapkan masa tamat tempoh untuk kunci dan menggunakan mekanisme memadam malas untuk memadamkan kunci tamat tempoh.

Untuk melihat semua kunci di Redis, terdapat tiga cara: Gunakan perintah kunci untuk mengembalikan semua kunci yang sepadan dengan corak yang ditentukan; Gunakan perintah imbasan untuk melangkah ke atas kunci dan kembalikan satu set kunci; Gunakan arahan maklumat untuk mendapatkan jumlah kunci.

Menggunakan Arahan Redis memerlukan langkah -langkah berikut: Buka klien Redis. Masukkan arahan (nilai kunci kata kerja). Menyediakan parameter yang diperlukan (berbeza dari arahan ke arahan). Tekan Enter untuk melaksanakan arahan. Redis mengembalikan tindak balas yang menunjukkan hasil operasi (biasanya OK atau -r).

Untuk membaca giliran dari Redis, anda perlu mendapatkan nama giliran, membaca unsur -unsur menggunakan arahan LPOP, dan memproses barisan kosong. Langkah-langkah khusus adalah seperti berikut: Dapatkan nama giliran: Namakannya dengan awalan "giliran:" seperti "giliran: my-queue". Gunakan arahan LPOP: Keluarkan elemen dari kepala barisan dan kembalikan nilainya, seperti LPOP Queue: My-Queue. Memproses Baris kosong: Jika barisan kosong, LPOP mengembalikan nihil, dan anda boleh menyemak sama ada barisan wujud sebelum membaca elemen.
