1. redis緩存原理
redis緩存原理是sql語句時key值,查詢結果resultSet是value,當同一個查詢語句訪問時(select * from t_proct),只要曾經查詢過,調用緩存直接返回resultSet,節省了資料庫讀取磁碟數據的時間。
redis的存儲分為內存存儲、磁碟存儲和log文件三部分,配置文件中有三個參數對其進行配置。
save seconds updates,save配置,指出在多長時間內,有多少次更新操作,就將數據同步到數據文件。這個可以多個條件配合,比如默認配置文件中的設置,就設置了三個條件。
appendonly yes/no ,appendonly配置,指出是否在每次更新操作後進行日誌記錄,如果不開啟,可能會在斷電時導致一段時間內的數據丟失。因為redis本身同步數據文件是按上面的save條件來同步的,所以有的數據會在一段時間內只存在於內存中。
(1)redis緩存管理器擴展閱讀
redis的出現,很大程度補償了memcached這類key/value存儲的不足,在部 分場合可以對關系資料庫起到很好的補充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客戶端,使用很方便。
Redis支持主從同步。數據可以從主伺服器向任意數量的從伺服器上同步,從伺服器可以是關聯其他從伺服器的主伺服器。這使得Redis可執行單層樹復制。
存檔可以有意無意的對數據進行寫操作。由於完全實現了發布/訂閱機制,使得從資料庫在任何地方同步樹時,可訂閱一個頻道並接收主伺服器完整的消息發布記錄。同步對讀取操作的可擴展性和數據冗餘很有幫助。
redis的官網地址,redis.io。(域名後綴io屬於國家域名,是british Indian Ocean territory,即英屬印度洋領地)
2. 使用redis作為緩存伺服器,怎麼無時間差更新list裡面的值
redis不是資料庫,只是一種緩存軟體,為了緩解伺服器頻繁讀資料庫帶來的內存資源消耗,redis將需要和資料庫交互的信息暫存,當下次同樣的http請求,就能直接讀取redis裡面的內容,而不用讀資料庫。這樣減少了資料庫壓力又能提高伺服器響應時間。...
3. redis做游戲伺服器的緩存效率低怎麼解決
因此,對於函數文件,運行結果除輸出變數返回到基本工作空間或者其父工作空間(調用該函數的程序的工作空間)之外
其他中間變數不在基本工作空間或者其父工作空間保留。而對於腳本M文件,其工作空間與基本工作空間'base'是共享的,其運算過程中所用到的中間變數也將在基本工作空間'base'中保留。
4. 如何django中用redis緩存伺服器,求詳細教程。
django-redis 中文文檔
Andrey Antukh, [email protected] 4.7.0
翻譯: RaPoSpectre
1. 介紹
django-redis 基於 BSD 許可, 是一個使 Django 支持 Redis cache/session 後端的全功能組件.
1.1 為何要用 django-redis ?
因為:
持續更新
本地化的 redis-py URL 符號連接字元串
可擴展客戶端
可擴展解析器
可擴展序列器
默認客戶端主/從支持
完善的測試
已在一些項目的生產環境中作為 cache 和 session 使用
支持永不超時設置
原生進入 redis 客戶端/連接池支持
高可配置 ( 例如模擬緩存的異常行為 )
默認支持 unix 套接字
支持 Python 2.7, 3.4, 3.5 以及 3.6
1.2 可用的 django-redis 版本
穩定版本: 4.7.0
穩定版本: 3.8.4
1.3 我該使用哪個版本
版本號像 3.6, 3.7 … 等的是主要發行版本, 會包含向後不兼容的內容. 跟多信息請在升級前閱讀升級日誌.
版本號像 3.7.0, 3.7.1… 等的是小更新或者 bug 修復版本, 一般只會包含 bug 修復, 沒有功能更新.
1.4 依賴
1.4.1 Django 版本支持
django-redis 3.8.x 支持 django 1.4, 1.5, 1.6, 1.7 (或許會有 1.8)
django-redis 4.4.x 支持 django 1.6, 1.7, 1.8, 1.9 和 1.10
1.4.2 Redis Server 支持
django-redis 3.x.y 支持 redis-server 2.6.x 或更高
django-redis 4.x.y 支持 redis-server 2.8
5. redis緩存工具裡面有什麼方法
對於變化頻率非常快的數據來說,如果還選擇傳統的靜態緩存方式(Memocached、File System等)展示數據,可能在緩存的存取上會有很大的開銷,並不能很好的滿足需要,而Redis這樣基於內存的NoSQL資料庫,就非常適合擔任實時數據的容器。
6. redis 緩存伺服器 怎麼給外部系統用
Redis介紹
Redis本質上一個Key/Value資料庫,與Memcached類似的NoSQL型資料庫,但是他的數據可以持久化的保存在磁碟上,解決了服務重啟後數據不丟失的問題,他的值可以是string(字元串)、list(列表)、sets(集合)或者是ordered sets(被排序的集合),所有的數據類型都具有push/pop、add/remove、執行服務端的並集、交集、兩個sets集中的差別等等操作,這些操作都是具有原子性的,Redis還支持各種不同的排序能力
Redis 2.0更是增加了很多新特性,如:提升了性能、增加了新的數據類型、更少的利用內存(AOF和VM)
Redis支持絕大部分主流的開發語言,如:C、Java、C#、PHP、Perl、Python、Lua、Erlang、Ruby等等
官網:http://code.google.com/p/redis/
Redis性能
根據Redis官方的測試結果:在50個並發的情況下請求10w次,寫的速度是110000次/s,讀的速度是81000次/s
地址:http://code.google.com/p/redis/wiki/Benchmarks
一、安裝過程:
最新穩定版,Redis 2.0.4 stable
wget http://redis.googlecode.com/files/redis-2.6.7.tar.gz (其他版本到官網下載即可)
tar zxf redis-2.6.7.tar.gz
cd redis-2.6.7
與其它軟體不同的是,不需要configure。
make
裝完了。
創建一個目錄
mkdir /usr/local/redis2
cd src
cp redis-server redis-benchmark redis-cli ../redis.conf /usr/local/redis2
二、啟動與停止:
cd /usr/local/redis2
啟動 ./redis-server > /dev/null & 或者 ./redis-server redis.conf 或者 ./redis-server redis.conf 1>log.log 2>errlog.log (1為標准輸出,2為錯誤輸出)
停止 ./redis-cli shutdown
客戶端連接 ./redis-cli
三、測試:
存值:
./redis-cli set hx value
取值:
./redis-cli get hx
> quit
退出連接
> dbsize
(integer) 12
當前資料庫中key的數量
> info
伺服器基本信息
monitor
實時轉儲收到的請求
config get
獲取伺服器的參數配置
flushdb
清空當前資料庫
flushall
清除所有資料庫
四、附註
redis.conf配置文件:
引用
#是否作為守護進程運行
daemonize yes
#配置pid的存放路徑及文件名,默認為當前路徑下
pidfile redis.pid
#Redis默認監聽埠
port 6379
#客戶端閑置多少秒後,斷開連接
timeout 300
#日誌顯示級別
loglevel verbose
#指定日誌輸出的文件名,也可指定到標准輸出埠
logfile stdout
#設置資料庫的數量,默認連接的資料庫是0,可以通過select N來連接不同的資料庫
databases 16
#保存數據到disk的策略
#當有一條Keys數據被改變是,900秒刷新到disk一次
save 900 1
#當有10條Keys數據被改變時,300秒刷新到disk一次
save 300 10
#當有1w條keys數據被改變時,60秒刷新到disk一次
save 60 10000
#當mp .rdb資料庫的時候是否壓縮數據對象
rdbcompression yes
#mp資料庫的數據保存的文件名
dbfilename mp.rdb
#Redis的工作目錄
dir /home/falcon/redis-2.0.0/
########### Replication #####################
#Redis的復制配置
# slaveof <masterip> <masterport>
# masterauth <master-password>
############## SECURITY ###########
# requirepass foobared
############### LIMITS ##############
#最大客戶端連接數
# maxclients 128
#最大內存使用率
# maxmemory <bytes>
########## APPEND ONLY MODE #########
#是否開啟日誌功能
appendonly no
# 刷新日誌到disk的規則
# appendfsync always
appendfsync everysec
# appendfsync no
################ VIRTUAL MEMORY ###########
#是否開啟VM功能
vm-enabled no
# vm-enabled yes
vm-swap-file logs/redis.swap
vm-max-memory 0
vm-page-size 32
vm-pages 134217728
vm-max-threads 4
############# ADVANCED CONFIG ###############
glueoutputbuf yes
hash-max-zipmap-entries 64
hash-max-zipmap-value 512
#是否重置Hash表
activerehashing yes
7. redis緩存什麼情況下用怎末使用
redis是一個key-value存儲系統。和Memcached類似,它支持存儲的value類型相對更多,包括string(字元串)、list(鏈表)、set(集合)、zset(sorted set --有序集合)和hash(哈希類型)。這些數據類型都支持push/pop、add/remove及取交集並集和差集及更豐富的操作,而且這些操作都是原子性的。在此基礎上,redis支持各種不同方式的排序。與memcached一樣,為了保證效率,數據都是緩存在內存中。區別的是redis會周期性的把更新的數據寫入磁碟或者把修改操作寫入追加的記錄文件,並且在此基礎上實現了master-slave(主從)同步。
Redis 是一個高性能的key-value資料庫。 redis的出現,很大程度補償了memcached這類key/value存儲的不足,在部 分場合可以對關系資料庫起到很好的補充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客戶端,使用很方便。
Redis支持主從同步。數據可以從主伺服器向任意數量的從伺服器上同步,從伺服器可以是關聯其他從伺服器的主伺服器。這使得Redis可執行單層樹復制。存檔可以有意無意的對數據進行寫操作。由於完全實現了發布/訂閱機制,使得從資料庫在任何地方同步樹時,可訂閱一個頻道並接收主伺服器完整的消息發布記錄。同步對讀取操作的可擴展性和數據冗餘很有幫助。
8. redis緩存伺服器 建議內存多大
緩存每個電腦都會自動設置,一般不用設置;如果要設置,可以設置到2g以上,設置方法「我的電腦」點右鍵,系統屬性中選擇高級,點擊性能。然後再點擊高級,在虛擬內存框中點更改,把要設置的虛擬內存大小更改上。然後點確定,重啟計算機就可以了