Redisのストレージシステム

Redisのストレージシステム

Redisのは何1

リモート辞書サーバ(Redisの)は、キーと値のストレージシステムです。(...のpython、PHP、Java)のANSI Cで書かれて使用し、BSDタイプ、キーと値のデータベースをログに記録することができ、メモリの持続性に基づいて、契約やサポートネットワークを遵守し、多言語のAPIを提供します。

値(値)は、文字列(String)を、ハッシュ(地図)、リスト(一覧)、セット(セット)、および順序付きコレクション(ソートセット)や他のタイプのものであってよいので、それは多くの場合、サーバーのデータ構造と呼ばれています。

Redisの利点

  • 高性能 - Redisのは早く11万倍/秒、書き込み速度である81000回/秒を読むことができます
  • 豊富なデータタイプ - Redisのは、バイナリの場合文字列、リスト、ハッシュ、セットと順序セット操作のデータ型をサポートしています
  • アトミック - Redisのすべての操作が完全に実行され、実行に成功するか失敗のどちらかということを意味し、アトミックです。これは、単一の原子操作です。動作の複数はまた、ラップMULTIによってトランザクション、すなわち原子性、およびEXEC命令をサポート
  • Redisのデータバックアップデータバックアップサポート、すなわち、マスタ・スレーブモード、
  • 永続Redisのサポートデータは、メモリ内のデータがディスクに保存することができた場合、再起動が使用して再ロードすることができます

2.redisインストール

  • Pythonパッケージをインストールします。

方法1:PIP設定でpycharmは直接ダウンロードする
方法2:ダウンロードコマンド(シェルのLinuxの)

Su  #切换到超级用户
Cd /usr/local/python3/bin
./pip install redis
./pip3 install -U pip  #升级pip
  • インストールサービスのRedis

ダウンロードします。http://redis.io/downloadは、最新の安定版をダウンロード

tar zxf redis-5.0.3.tar.gz
cd redis-5.0.3/
yum install gcc -y
make
make install
cd utils/
./install_server.sh
netstat -antlp|grep 6379
redis-cli
 /etc/init.d/redis_6379 restart

3.redis接続

方法1:このメソッドは、自動的に接続を切断します

import redis
import time


redis.Redis(host='localhost',port=6379)
conn = redis.Redis()
conn.set('name','westos',3)
print(conn.get('name'))
print('等待3秒...')
time.sleep(3)
print(conn.get('name'))

ここに画像を挿入説明
方法2:最初のメソッドに対して自動的に切断されていないが、より安定しています

pool = redis.ConnectionPool(host='localhost',port=6379)
conn = redis.Redis(connection_pool=pool)
# 默认返回bytes类型 如果需要转换 要解码为utf=8编码格式
conn.set('name','粉条',4)
print(conn.get('name').decode('utf-8'))
print('等待3s....')
time.sleep(3)
print(conn.get('name'))

ここに画像を挿入説明

具体的な使用を4.redis

アップロード/取得/クリア

import redis
import time

pool = redis.ConnectionPool(host='localhost',port=6379)
conn = redis.Redis(connection_pool=pool)
conn.set('name','fentiao')
conn.set('age',10)
conn.set('score',100)

# 获取所有的key值
print(conn.keys())
print(len(conn.keys()))
# 当前redis数据库中的数据条数
print(conn.dbsize())
# 删除指定的key-value值
conn.delete('score')
print('正在删除key....')
print(conn.get('score'))

print('清除前:',conn.keys())
# 清除redis里面的所有k-v
conn.flushall()
print('清除后:',conn.keys())

ここに画像を挿入説明

公開された97元の記事 ウォン称賛22 ビュー3252

おすすめ

転載: blog.csdn.net/nigar_/article/details/104118264