php redis 主从配置,Redis主从及其PHP扩展安装配置
1.Redis簡介Redis是一個key-value存儲系統。和Memcached類似,它支持存儲的value類型相對更多,包括string(字符串)、list(鏈表)、set(集合)和zset(有序集合)。這些數據類型都支持push/pop、add/remove及取交集并集和差集及更豐富的操作,而且這些操作都是原子性的。在此基礎上,redis支持各種不同方式的排序。與memcached一樣,為了保證效率,數據都是緩存在內存中。區別的是redis會周期性的把更新的數據寫入磁盤或者把修改操作寫入追加的記錄文件,并且在此基礎上實現了master-slave(主從)同步。
Redis 是一個高性能的key-value數據庫。 redis的出現,很大程度補償了memcached這類keyvalue存儲的不足,在部 分場合可以對關系數據庫起到很好的補充作用。它提供了Python,Ruby,Erlang,PHP客戶端,使用很方便。
2.物理環境
Master:192.168.1.249 ? ? Centos 5.5
Slave:192.168.1.244 ? ? ?Centos 5.5
3.獲取redis軟件包
在redis的官方網站(http://www.redis.io)下載最新的穩定版本redis-2.6.4.tar.gz。
4.安裝配置Redis主服務。
4.1用tar -zxvf解壓軟件包。
4.2用make && make install 編譯安裝Redis服務。
4.3創建Redis主配置文件目錄,并復制redis.conf到該目錄下面。
4.4編輯Redis主配置文件。1cat?/etc/redis/redis.conf
#redis?以后臺進程運行,默認為NO
daemonize?yes
#如果已后臺程序運行,則需要制定一個PID
pidfile?/data/logs/redis/redis.pid
#redis服務綁定的主機IP
bind?192.168.1.249
#redis監聽的端口,默認為6379
port?6379
#客戶端連接超時時間,默認為300秒
timeout?600
#日志級別,分為debug,verbose(default),notice,waring
loglevel?notice
#日志文件存放位置,默認為stdout
logfile?/data/logs/redis/redis.log
#可用數據庫數,默認為16
databases?16
#900秒內至少有一個key被改變
save?900?1
#300秒內至少有十個key被改變
save?300?10
#60秒內只要有一萬個key被改變
save?60?10000
#存儲到本地數據庫是否壓縮,默認為yes
rdbcompression?yes
#本地數據庫文件名,默認為dump.rdb
dbfilename?yanzi_dump.rdb
#本地數據庫存放路徑
dir?/data/redis/
#客戶端最大連接數,默認不限制
maxclients?128
#是否每次日志更新操作后進行日志記錄
appendonly?yes
#更新日志文件名,默認為appendonly.aof
appendfilename?yanzi_update.aof
#verysec表示每秒鐘同步一次數據到磁盤(默認值)。
appendfsync?everysec
#redis?slave連接密碼
#requirepass?sfzhang
no-appendfsync-on-rewrite?no
auto-aof-rewrite-percentage?100
auto-aof-rewrite-min-size?64mb
slowlog-log-slower-than?10000
slowlog-max-len?1024
really-use-vm?yes
#是否使用虛擬內存,默認為no
vm-enabled?yes
#虛擬內存文件路徑,默認值為/tmp/redis.swap
vm-swap-file?/tmp/redis.swap
#默認值為零,所有的values存儲在磁盤
vm-max-memory?0
#虛擬內存文件以塊存儲,每塊32bytes
vm-page-size?32
#虛擬內存文件的最大數
vm-pages?134217728
#設置訪問swap文件的線程數
vm-max-threads?4
#指定在超過一定數量或者最大元素超過某一臨界時,采用一種特殊的哈希算法
hash-max-zipmap-entries?512
hash-max-zipmap-value?64
list-max-ziplist-entries?512
list-max-ziplist-value?64
set-max-intset-entries?512
zset-max-ziplist-entries?128
zset-max-ziplist-value?64
#是否重置Hash表
activerehashing?yes
4.5啟動Redis主服務,并設置開機自動重啟。
4.5查看Redis端口是否監聽。
5.安裝配置Redis從服務器。
只需把主服務器/etc/redis/redis.conf配置文件復制到從服務器的/etc/redis/目錄里面,把配置文件的bind地址修改成主服務器的IP地址,并添加下面兩行即可。
6.Redis 主從配置測試。
在Redis主服務器上面用redis-cli登陸服務器,用set命令給sfzhang賦值一串字符,可以用get命令獲取該字符串的值。
在從服務器上面直接用get獲取該字符串的值,如果沒有報錯且兩者的值相同,說明Redis主從配置是OK的,其中的-a參數表示連接密碼,密碼為sfzhang。
7.Redis PHP擴展phpredis的安裝配置。7.1獲取phpredis軟件包,在redis官方網站clients里面下載PHP擴展所需要的軟件包(https://github.com/owlient/phpredis/downloads)phpredis-master.zip。
7.2安裝配置phpredis。
[root@Redis249 software]# unzip phpredis-master.zip
[root@Redis249 software]# cd phpredis-master
[root@Redis249 software]#/usr/bin/phpize
[root@Redis249 software]#./configure -with-php-config=/usr/bin/php-config
[root@Redis249 software]#make && make install
7.3php.ini中添加extension=redis.so,然后重啟PHP的php-fpm服務。
7.4編寫PHP測試頁,測試php和redis是否能協同工作。
7.5瀏覽器訪問測試,如果出現I am sfzhang,I come from ningxia!!,說明PHP連接Redis 成功。
總結
以上是生活随笔為你收集整理的php redis 主从配置,Redis主从及其PHP扩展安装配置的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php简单网页制作代码,用HTML和CS
- 下一篇: java hibernate sql,J