PHP操作 Redis例解説

小云云
リリース: 2023-03-20 20:06:01
オリジナル
2082 人が閲覧しました

1. コンセプト

redis はキーと値のストレージ システムです。 Memcached と同様に、string (文字列)、list (リンク リスト)、set (セット)、zset (順序付きセット)、hash (ハッシュ タイプ) など、比較的多くの保存された値の型をサポートします。これらのデータ型はすべて、プッシュ/ポップ、追加/削除、交差、結合、差分などの豊富な操作をサポートしており、これらの操作はすべてアトミックです。

redis はさまざまな並べ替え方法をサポートしています。 memcached と同様に、データは効率を確保するためにメモリにキャッシュされます。違いは、redis が定期的に更新されたデータをディスクに書き込むか、追加のレコード ファイルに変更操作を書き込むこと、そしてこれに基づいてマスターとスレーブ (マスターとスレーブ) の同期が実現されることです。

2. Redis のインストールと使用

1. インストール: Linux システムは、コンパイルとインストールのために公式 Web サイトのアドレス http://redis.io/download からソース コード パッケージをダウンロードできます
2.コマンド:
(1 )redis-server
(2)service redisd start
3. Redis でよく使用されるコマンド:
(1) 接続: redis-cli -h -a <オプション、Redis に接続するためのパスワード>
(2) 利用可能かどうかをテストします: PING を入力し、PONG 応答を返します
(3) 「」を通じてキーと値の値を設定できます。 SET key value";
(4) "GET KEY"により、Keyに対応するValue値を取得します。

3. PHP で Redis を操作する一般的な方法

1. PHP には Redis を操作するための拡張機能として Redis クラスが付属しているため、このクラスを通じて接続できます:
$redis = new Redis();
$ redis->connect('',);
$redis->auth('');

2. 通常、Redis は 5 つのデータ型をサポートしているため、 : string、hash、list、set、zset. Redis は開発時にキャッシュやキューのサービスとしてよく使われます:
(1) Redis をキャッシュとして使用する PHP の例:

 $redis->set(<key>,<value>); //设置key和value的键值对
 $redis->get(<key>);//获取Key对应的Value值
 (2)Redis用作锁的操作:
 $redis->setnx(<key>,<value>); //设置key和value的键值对,如果key的value已经存在则不操作
 $redis->get(<key>);//获取Key对应的Value值
 (3)Redis用作队列的PHP示例:
 $redis->lpush(<key>,<value>);//从列表头部插入数据,列表名为key
 $redis->lpop(<key>);//从列表尾部去除并移除数据,列表名为key
ログイン後にコピー

4. Redis を操作するための PHP 方法のまとめ

上記の一般的な操作に加えて、PHP は、mset、hset など、Redis で使用されるさまざまなデータ型操作もサポートしています。

5. Reds の特徴とパフォーマンス

1. Redis は、キーと 5 種類の値の間のマッピングをメモリに保存できます。ハードディスクでは、レプリケーション機能を使用して読み取りパフォーマンスを向上させることができます。また、クライアント シャーディングを使用して書き込みパフォーマンスを向上させることもできます。
2. データの依存関係が不要になった場合、すべての変更を書き込むデータベース システムと比較します。トランザクション実行時の実行効率は非常に高く、書き込みと読み取りの速度に明らかな違いはありません

3. 他のデータ保存方法との比較:


4. Redis を使用する利点:

(1) memcached の使用経験がある読者は、ユーザーが既存の文字列の末尾にデータを追加する場合にのみ APPEND コマンドを使用できることを知っているかもしれません。 memcached のドキュメントには、APPEND コマンドを使用して要素リストを管理できると記載されています。これはいい!ユーザーは文字列の末尾に要素を追加し、その文字列をリストとして使用できます。しかし、では、これらの要素をどのように削除するのでしょうか? memcached で使用される方法は、ブラックリストを使用してリスト内の要素を非表示にすることで、要素に対する読み取り、更新、書き込み (またはデータベース要求や memcached 書き込み) などの操作を回避します。対照的に、Redis の LIST と SET を使用すると、ユーザーは要素を直接追加または削除できます。

(2) memcached の代わりに Redis を使用すると、この問題やその他の問題を解決できます。コードが短くなり、理解しやすく、保守しやすくなるだけでなく、コードの実行も速くなります (ユーザーが実行する必要がないため)。データを更新するためにデータベースを取得します)。これに加えて、Redis の効率と使いやすさは、他の多くの状況においてリレーショナル データベースよりもはるかに優れています。

関連する推奨事項:

PHP による Redis インスタンス共有の操作方法

PHP による Redis 操作の一般的な方法の概要

PHP による Redis 操作の詳細なケース

以上がPHP操作 Redis例解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート