ホームページ  >  記事  >  バックエンド開発  >  PHP操作 Redis例解説

PHP操作 Redis例解説

小云云
小云云オリジナル
2018-03-06 13:04:552068ブラウズ

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 009ba6dda359383ea60bff3631b6fed4connect('f7e6dec31ab1a0471d06c55afaca8d77',298c9bd6ad6e8c821dc63aa0473d6209);
$redis->auth('2a8537f406a58f32223f30337cbef46b');

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。