この記事ではredisの基本的な使い方を紹介します。
#1. Redis 基本部分:
#redis が適用される場面
1. 最新 N データを取得する操作
2. ランキング アプリケーション、上位 N を取得する操作
3. 有効期限は次のとおりです。正確に設定する アプリケーション
4. カウンターアプリケーション
5. ユニークな操作、一定期間のすべてのデータ重複排除値を取得する
6. リアルタイムシステム、スパム対策システム
7.リアルタイム メッセージング システムを構築するための Pub/Sub
##8.キュー システムを構築する9.キャッシュ
Linux 2.6、Xeon X3320 2.5Ghz.
1) インストール:
tar zxvf redis-2.6.9.tar.gz cd redis-2.6.9 make cd src && make install2) 構成ファイルの場所を移動します (管理を容易にするため)
cd /usr/local/ mkdir -p /usr/local/redis/bin mkdir -p /usr/local/redis/etc mv /lamp/redis-2.6.9/redis.conf /usr/local/redis/etc cd /lamp/redis-2.6.9/src mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server /usr/local/redis/bin3) 構成ファイルを変更します
#
vi /usr/local/redis/etc/redis.conf
daemonize no の no を yes に変更します [yes はバックグラウンドで実行することを指します]
4) 開始/ランダム開始:
cd /usr/local/redis/bin ./redis-server /usr/local/redis/etc/redis.conf#启动redis并指定配置文件。 #vi /etc/rc.local #设置随机启动。 /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
5) 起動が成功したかどうかを確認します
ps -ef | grep redis netstat -tunpl | grep 6379#查看端口是否占用。
6) クライアントに入る/終了します
cd /usr/local/redis/bin ./redis-cli#进入 quit#退出
7) redis を閉じる
pkill redis-server#关闭 ./redis-cli shutdown#关闭
Redis のセキュリティ
Redis のセキュリティ???(次の 4 つの方法による)
1. ACL コントローラーのセキュリティを使用する。
2. 次の設定行を redis.conf 設定ファイルに追加して、redis を単一のインターフェイスにバインドします (ただし、このネットワーク カードからのデータを受け入れるだけではありません)。
bind 127.0.0.1
3. より長いパスワードを redis に追加します (覚えておく必要はありません)
4. redis では、 .conf 設定により認証機能が有効になります。
5.SSL プロキシ
6.指定されたコマンドを無効にします。
daemonize バックグラウンドで実行する必要がある場合は、この項目を [はい] に変更します
bind バインディング IP でデフォルトで複数の PID アドレスを構成します。設定後は、この IP からのリクエストのみを受け入れます
port listen ポート、デフォルトは 6379 です。
timeout クライアント接続時のタイムアウトを秒単位で設定します。
loglevel debug、verbose、notice の 4 つのレベルに分かれています。 、警告
logfile ログ ファイルのアドレスを構成します
databases データベースの数を設定します。デフォルトのデータベースは 0
save redis の頻度を設定します。データベースミラーリングの#rdbcompression ミラーバックアップ実行時に圧縮を行うかどうか
Dbfilename ミラーバックアップファイルのファイル名
Dir Database Fileミラー バックアップの配置パス
Slaveof データベースを他のデータベースのスレーブ データベースとして設定します
Masterauth マスター データベース接続にはパスワードの検証が必要です
Requirepass ログインに必要なパスワードを設定します
Maxclients 同時に接続するクライアントの数を制限します
Maxmemory Redis が使用できる最大メモリを設定します
Appendonly 追加専用モードをオンにします。
次の内容を理解できます。Appendfsync の同期頻度を設定します。 appendonly.aof ファイル
vm-enabled 仮想メモリのサポートを有効にするかどうか
vm-swap-file 仮想メモリのスワップ ファイル パスを設定します
vm-max-memory redis が使用するパスを設定します 物理メモリの最大サイズを設定します
vm-page-size 仮想メモリのページ サイズを設定します
vm-pagesスワップ ファイルの合計ページ番号
vm-max -threads VM IO が同時に使用するスレッドの数を設定しますGlueoutputbuf 小さな出力バッファをまとめて保存します
hash -max-zipmap-entries ハッシュ
Activerehashing Rehash
5 データ型の重要な値を設定します: 文字列、ハッシュ、リンク リスト、セット、順序付きセット。 サポート: プッシュ/ポップ、追加/削除、交差、結合、差分、並べ替え。 redismysql
同時に、データもハードディスクに書き込まれます。したがって、データは安全です (突然の停電を除き、サービスの再起動は dump.rdb ファイルに書き込まれます)
select num#ライブラリを選択します。デフォルトは 0 ライブラリ、合計 16 ライブラリです。
auth liweijie#承認されたユーザーに必要なパスワード (パスワードは redis.conf で設定されたパスワードです)
flushdb#データベースをクリアします。
String (文字列) 型:
set name lijie#キー name の値を lijie に設定します
get name#name の値を取得します。
keys *#すべてのキーをクエリします。
setnx name liweijie#キーがすでに存在する場合は、上書きを防ぐために 0 を返し、更新されません。
setex ヘアカラー 10 赤 #設定されたキー値の有効期間は 10 秒です。
setrange email 6 Lampbre.com#lambre.com への置換キーの値を 6 文字目から変更します
mset name1 Li Dawei name2 Li Xiaowei#複数の値を設定しますキー。
msetnxname1 Zhang San name3 Li Si# キーが存在するかどうかを確認します。存在しない場合は設定します。存在しない場合は設定されず、0
が返されます。mget name1 name2 name3#複数のキーの値を一度に取得します。
getset name1 Tom#キーの値をリセットし、古いキーの値を返します。
getrange email 6 18#6 番目から 18 番目までの文字から電子メール キーの値を取得します。
incr uid#は毎回 1 ずつ増加します (キー内の uid が存在しない場合は、それを設定して 0 から開始します。以下同様)
incrby uid 5#は毎回 5 ずつ増加しますtime
incrby uid -5#毎回 5 ずつ減少します
decr uid #毎回 1 ずつ減少します
decrby uid 5#毎回 5 ずつ減少します
appendname1 @ 126.com#name1 の値に文字列 @126.com を追加します
##strlenname1#キー name1 の値の長さを返します。 ハッシュ (ハッシュ) タイプ: hset user:001 name liweijie#Hash は、ユーザー user:001 の名前キー値を liweijieltrim mylist 1 2 #添字 1/2 の要素をテーブルに保持します。
一般的な Redis コマンド
キー/値関連のコマンド。 keys * #すべての keys をクエリ user*#指定された exists user:001# をクエリして、存在するかどうかを確認します。 del name#指定されたキーを削除します。expire addr 10#设置过期时间
ttl addr#查询过期时间
select 0 #选择数据库
move age 1#将age移到1数据库。
get age #获取
persist age#移除age的过期时间。
randomkey#随机返回一个key
rename name1 name2#重命名键
type myset#返回键的类型。
ping #测试redis连接是否存活。
echo lamp#输出一个lamp
select 10#选择数据库。
quit/exit/crtl+C#退出客户端
dbsize#返回库里的键的个数。
服务器相关命令:
info#显示redis服务器的相关信息。
config get */loglevel #返回所有/指定的配置信息。
flushdb#删除当前库中的所有键/表。
flushall#删除所有数据库中的所有键/表
二、Redis高级部分:
1、Redis安全性:
1.用ACL控制器安全性。
2.给redis加上较长密码
# requirepass foobared
requirepass beijing
3.在redis.conf配置启用认证功能。
方式一:Auth beijing
方式二:./redis-cli -a beijing
4.在redis.conf配置文件增加下面这一行配置,即可把redis绑定在单个接口上(但并不是只有接受这个网卡的数据)。
bind 127.0.0.1(单台机器的时候可以配置,分布式或主从复制时最好不要配置)
5.SSL代理
6.禁用指定命令。
2、Redis主从复制:
redis只需在从服务器(slave)上配置即可:
slaveof 211.122.11.11 6379 #指定master 的ip 和端口
masterauth beijing#这是master主机的密码
Info#查看主/从服务器的状态。
3、Redis事务处理:
Redis事务很不完善。
4、Redis持久化机制:
方式一、备份数据到磁盘(快照)[ snapshotting(快照)也是默认方式]
记录操作命令[ Append-only file(缩写aof)的方式]
备份数据到磁盘(快照)[ snapshotting(快照)也是默认方式]
save 900 1 #900秒内如果超过1个key被修改,则发起快照保存 save 300 10 #300秒内容如超过10个key被修改,则发起快照保存 save 60 10000
方式二、记录操作命令[ Append-only file(缩写aof)的方式](较安全持久化)
appendonly yes #启用aof 持久化方式 # appendfsync always //收到写命令就立即写入磁盘,最慢,但是保证完全的持久化 appendfsync everysec //每秒钟写入磁盘一次,在性能和持久化方面做了很好的折中
以上がRedisの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

Redisの主な機能には、速度、柔軟性、豊富なデータ構造のサポートが含まれます。 1)速度:Redisはメモリ内データベースであり、読み取り操作はほとんど瞬間的で、キャッシュとセッション管理に適しています。 2)柔軟性:複雑なデータ処理に適した文字列、リスト、コレクションなど、複数のデータ構造をサポートします。 3)データ構造のサポート:さまざまなビジネスニーズに適した文字列、リスト、コレクション、ハッシュテーブルなどを提供します。

Redisのコア関数は、高性能のメモリ内データストレージおよび処理システムです。 1)高速データアクセス:Redisはデータをメモリに保存し、マイクロ秒レベルの読み取り速度と書き込み速度を提供します。 2)豊富なデータ構造:文字列、リスト、コレクションなどをサポートし、さまざまなアプリケーションシナリオに適応します。 3)永続性:RDBとAOFを介してディスクにデータを持続します。 4)サブスクリプションを公開:メッセージキューまたはリアルタイム通信システムで使用できます。

Redisは、次のようなさまざまなデータ構造をサポートしています。1。文字列、単一価値データの保存に適しています。 2。キューやスタックに適したリスト。 3.非重複データの保存に使用されるセット。 4。ランキングリストと優先キューに適した注文セット。 5。オブジェクトまたは構造化されたデータの保存に適したハッシュテーブル。

Redisカウンターは、Redisキー価値ペアストレージを使用して、カウンターキーの作成、カウントの増加、カウントの減少、カウントのリセット、およびカウントの取得など、カウント操作を実装するメカニズムです。 Redisカウンターの利点には、高速速度、高い並行性、耐久性、シンプルさと使いやすさが含まれます。ユーザーアクセスカウント、リアルタイムメトリック追跡、ゲームのスコアとランキング、注文処理などのシナリオで使用できます。

Redisコマンドラインツール(Redis-Cli)を使用して、次の手順を使用してRedisを管理および操作します。サーバーに接続し、アドレスとポートを指定します。コマンド名とパラメーターを使用して、コマンドをサーバーに送信します。ヘルプコマンドを使用して、特定のコマンドのヘルプ情報を表示します。 QUITコマンドを使用して、コマンドラインツールを終了します。

Redisクラスターモードは、シャードを介してRedisインスタンスを複数のサーバーに展開し、スケーラビリティと可用性を向上させます。構造の手順は次のとおりです。異なるポートで奇妙なRedisインスタンスを作成します。 3つのセンチネルインスタンスを作成し、Redisインスタンスを監視し、フェールオーバーを監視します。 Sentinel構成ファイルを構成し、Redisインスタンス情報とフェールオーバー設定の監視を追加します。 Redisインスタンス構成ファイルを構成し、クラスターモードを有効にし、クラスター情報ファイルパスを指定します。各Redisインスタンスの情報を含むnodes.confファイルを作成します。クラスターを起動し、CREATEコマンドを実行してクラスターを作成し、レプリカの数を指定します。クラスターにログインしてクラスター情報コマンドを実行して、クラスターステータスを確認します。作る

Redisのキューを読むには、キュー名を取得し、LPOPコマンドを使用して要素を読み、空のキューを処理する必要があります。特定の手順は次のとおりです。キュー名を取得します:「キュー:キュー」などの「キュー:」のプレフィックスで名前を付けます。 LPOPコマンドを使用します。キューのヘッドから要素を排出し、LPOP Queue:My-Queueなどの値を返します。空のキューの処理:キューが空の場合、LPOPはnilを返し、要素を読む前にキューが存在するかどうかを確認できます。

RedisクラスターでのZsetの使用:Zsetは、要素をスコアに関連付ける順序付けられたコレクションです。シャード戦略:a。ハッシュシャーディング:ZSTキーに従ってハッシュ値を分配します。 b。範囲シャード:要素スコアに従って範囲に分割し、各範囲を異なるノードに割り当てます。操作の読み取りと書き込み:a。読み取り操作:ZSetキーが現在のノードのシャードに属している場合、ローカルで処理されます。それ以外の場合は、対応するシャードにルーティングされます。 b。書き込み操作:Zsetキーを保持しているシャードに常にルーティングされます。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

WebStorm Mac版
便利なJavaScript開発ツール

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

ドリームウィーバー CS6
ビジュアル Web 開発ツール
