redis的介紹及django使用redis


redis數據庫

為什么要學習redis
"""
1、redis是內存 no-sql 數據庫,相比mysql等硬盤數據庫效率高
2、在內存值配置數據庫使用,而不直接使用內存,redis存儲的數據是可以管理的
3、memcache也是內存數據庫,且django默認采用的就是memcache數據庫,用redis替換memcache的路由很簡單,后者更強大
	redis支持更多的數據類型
	redis自帶緩存機制,出現數據庫系統崩潰數據也是可以有找回的可能
	redis可以主動完成數據持久化(自帶數據持久化功能)
	redis的數據過期時間機制也可以自身完成


使用redis有哪些好處?

(1) 速度快,因為數據存在內存中,類似於HashMap,HashMap的優勢就是查找和操作的時間復雜度都是O(1)

(2) 支持豐富數據類型,支持string,list,set,sorted set,hash

(3) 支持事務,操作都是原子性,所謂的原子性就是對數據的更改要么全部執行,要么全部不執行

(4) 豐富的特性:可用於緩存,消息,按key設置過期時間,過期后將會自動刪除


"""
redis安裝
注:在官網安裝系統版本,下載對應安裝包安裝即可
redis數據類型
"""
支持的數據類型:String、Hash、List、Set、Sorted Set

String:存儲其他類型不能存的所有數據
Hash:存儲 key-value 形式數據,類似於字典
List:存儲 一系列有序value 形式數據,列表(數組)
Set:存儲 一系列無序value 形式數據,集合
Sorted Set:存儲 有排列標號value 形式數據,排行
"""

python使用redis

依賴
>: pip3 install redis
直接使用
import redis
r = redis.Redis(host='127.0.0.1', port=6379)
連接池使用(連接池可以設置最大連接數)
import redis
pool = redis.ConnectionPool(host='127.0.0.1', port=6379)
r = redis.Redis(connection_pool=pool)
緩存使用:要額外安裝 django-redis
# 1.將緩存存儲位置配置到redis中:settings.py
CACHES = {
    "default": {
        "BACKEND": "django_redis.cache.RedisCache",
        "LOCATION": "redis://127.0.0.1:6379",
        "OPTIONS": {
            "CLIENT_CLASS": "django_redis.client.DefaultClient",
            "CONNECTION_POOL_KWARGS": {"max_connections": 100}
        }
    }
}

# 2.操作cache模塊直接操作緩存:views.py
from django.core.cache import cache  # 結合配置文件實現插拔式
# 存放token,可以直接設置過期時間
cache.set('token', 'header.payload.signature', 10)
# 取出token
token = cache.get('token')


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM