Rumah > Artikel > rangka kerja php > Menggunakan Redis dalam ThinkPHP6
Dengan perkembangan teknologi Internet, semakin banyak laman web dan aplikasi perlu mengendalikan sejumlah besar permintaan serentak dan penyimpanan data Oleh itu, menjadi lebih penting untuk menggunakan penyelesaian caching dan penyimpanan data yang cekap. Redis ialah pangkalan data dalam memori berprestasi tinggi yang digunakan secara meluas dalam caching data, pengurusan sesi dan senario lain dalam medan Internet. Artikel ini terutamanya memperkenalkan cara menggunakan Redis dalam ThinkPHP6.
1. Pemasangan dan konfigurasi Redis
Pertama sekali, terdapat dua cara untuk memasang Redis pada sistem Windows Satu ialah memuat turun pakej dimampatkan Redis dan nyahmampatnya dan memulakan exe fail, dan satu lagi ialah menggunakan pengurus pakej Chocolatey untuk memasang.
Jika anda telah memasang Chocolatey, anda boleh menggunakan arahan berikut untuk memasang Redis:
choco install redis-64
Selepas pemasangan selesai, anda perlu mengkonfigurasinya. Cari fail redis.windows.conf dalam direktori pemasangan Redis dan tukar mod bind dan protected kepada konfigurasi berikut:
bind 0.0.0.0 protected-mode no
Ini akan membuatkan Redis mendengar semua alamat IP dan mematikan mod yang dilindungi, yang sesuai untuk kita Lakukan pembangunan dan ujian.
2. Sambungan Redis dalam ThinkPHP6
Sambungan Redis ThinkPHP6 dibangunkan berdasarkan predis pakej sambungan PHP Anda perlu menambah kebergantungan berikut dalam fail composer.json sebelum digunakan:
"predis/predis": "^1.1"
Kemudian gunakan komposer untuk memasang:
composer update
Selepas pemasangan selesai, cipta fail konfigurasi redis.php dalam direktori konfigurasi dan tambah kandungan berikut:
return [ 'default' => [ 'host' => '127.0.0.1', 'port' => 6379, 'password' => '', 'database' => 0, 'prefix' => '', 'timeout' => 5, ], ];
The maklumat sambungan lalai Redis dikonfigurasikan di sini , termasuk alamat IP, nombor port, kata laluan pengesahan, nombor pangkalan data, dsb. pelayan Redis.
3. Penggunaan asas Redis
Dalam ThinkPHP6, anda boleh mendapatkan contoh Redis melalui kod berikut:
use thinkacadeCache; $redis = Cache::store('redis')->handler();
Antaranya, pemacu cache ditentukan melalui Cache: :store ialah Redis, dan kemudian contoh Redis diperoleh melalui kaedah pengendali.
Seterusnya, kami boleh melakukan operasi berikut pada Redis.
3.1. Menetapkan dan mendapatkan cache
// 设置缓存 $redis->set('name', 'Tom', 60); // 获取缓存 $name = $redis->get('name');
Di sini nama cache ditetapkan, nilainya ialah Tom dan tempoh sah ialah 60 saat. Kemudian dapatkan nilai cache melalui kaedah get.
3.2. Padamkan cache
// 删除缓存 $redis->del('name');
Di sini cache nama dipadamkan melalui kaedah del.
3.3 Tentukan sama ada cache wujud
// 判断缓存是否存在 if ($redis->exists('name')) { echo '缓存存在'; } else { echo '缓存不存在'; }
Di sini, kaedah wujud digunakan untuk menentukan sama ada cache nama wujud.
4. Aplikasi lanjutan Redis
Selain operasi cache asas, Redis juga menyokong operasi pada jenis data seperti cincang, senarai, set dan set tertib. Berikut ialah beberapa aplikasi lanjutan yang biasa digunakan.
4.1. Operasi jadual cincang
// 设置哈希表 $redis->hset('user', 'name', 'Tom'); $redis->hset('user', 'age', 18); // 获取哈希表 $user = $redis->hgetall('user'); $name = $redis->hget('user', 'name'); $age = $redis->hget('user', 'age');
Di sini, jadual cincang bernama pengguna disediakan melalui kaedah hset, yang mengandungi dua medan: nama dan umur. Kemudian dapatkan data keseluruhan jadual hash melalui kaedah hgetall, dan dapatkan nilai medan nama dan umur masing-masing melalui kaedah hget.
4.2. Operasi senarai
// 添加列表元素 $redis->rpush('list', 'a'); $redis->rpush('list', 'b'); $redis->rpush('list', 'c'); // 获取列表元素 $list = $redis->lrange('list', 0, -1); // 弹出列表元素 $value = $redis->lpop('list');
Di sini, tiga elemen a, b dan c ditambahkan pada senarai yang dinamakan melalui kaedah rpush, dan kemudian semua elemen dalam senarai diperoleh melalui Kaedah lrange Pop elemen pertama dalam senarai melalui kaedah lpop.
4.3. Operasi set
// 添加集合元素 $redis->sadd('set', 'a'); $redis->sadd('set', 'b'); $redis->sadd('set', 'c'); // 获取集合元素 $set = $redis->smembers('set'); // 删除集合元素 $redis->srem('set', 'a');
Di sini, tiga elemen a, b, dan c ditambah pada set yang dinamakan melalui kaedah sadd, dan kemudian semua elemen dalam set diperoleh melalui kaedah smembers Padamkan elemen daripada koleksi melalui kaedah srem.
4.4. Operasi set tersusun
// 添加有序集合元素 $redis->zadd('zset', 60, 'a'); $redis->zadd('zset', 70, 'b'); $redis->zadd('zset', 80, 'c'); // 获取有序集合元素 $zset = $redis->zrange('zset', 0, -1); // 修改有序集合分数 $redis->zincrby('zset', 10, 'a');
Di sini, tiga elemen a, b, dan c ditambahkan pada set tersusun bernama zset melalui kaedah zadd. 70, 80. Kemudian gunakan kaedah zrange untuk mendapatkan semua elemen dalam set tersusun, menyusunnya mengikut markah mereka dari kecil ke besar. Akhir sekali, markah sesuatu elemen boleh ditambah atau dikurangkan melalui kaedah zincrby.
5. Ringkasan
Artikel ini memperkenalkan cara menggunakan Redis dalam ThinkPHP6 dan memperkenalkan beberapa aplikasi asas dan lanjutan Redis. Melalui operasi ini, anda boleh meningkatkan keupayaan pemprosesan serentak dan prestasi penyimpanan data tapak web dan aplikasi, serta meningkatkan pengalaman pengguna dan kepuasan pengguna.
Atas ialah kandungan terperinci Menggunakan Redis dalam ThinkPHP6. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!