配置php擴展redis


 

環境說明:

系統版本    CentOS 6.9 x86_64        

軟件版本    nginx-1.12.2        php-5.5.38        yum安裝redis3.2.11    

php擴展redis 2.2.8    

Redis是一個key-value存儲系統。和Memcached類似,它支持存儲的value類型相對更多,包括string(字符串)、 list(鏈表)、set(集合)和zset(有序集合)。這些數據類型都支持push/pop、add/remove及取交集並集和差集及更豐富的操作,而且這些操作都是原子性的。在此基礎上,redis支持各種不同方式的排序。與memcached一樣,為了保證效率,數據都是緩存在內存中。區別的是redis會周期性的把更新的數據寫入磁盤或者把修改操作寫入追加的記錄文件,並且在此基礎上實現了master-slave(主從)同步,當前 Redis的應用已經非常廣泛,國內像新浪、淘寶,國外像 Flickr、Github等均在使用Redis的緩存服務。

1、數據庫服務器配置redis

[root@db01 ~]# yum install -y redis

[root@db01 ~]# vim /etc/redis.conf    #修改配置文件,設置數據庫服務器的地址已經密碼

61 bind 192.168.1.51

480 requirepass 123456

[root@db01 ~]# /etc/init.d/redis start        #啟動服務

Starting redis-server: [ OK ]

[root@db01 ~]# netstat -lntup|grep 6379    #檢查,默認使用6379端口

tcp 0 0 192.168.1.51:6379 0.0.0.0:* LISTEN 1978/redis-server

可以使用命令行查看相關緩存信息

[root@db01 ~]# redis-cli -h 192.168.1.51 -p 6379 -a 123456

192.168.1.51:6379> info

# Server

redis_version:3.2.11

redis_git_sha1:00000000

redis_git_dirty:0

redis_build_id:6ad59081ae574f13

redis_mode:standalone

os:Linux 2.6.32-696.el6.x86_64 x86_64

arch_bits:64

multiplexing_api:epoll

gcc_version:4.4.7

process_id:1978

run_id:9a86c3672b97884d10e0b67f767cde1d96334405

tcp_port:6379

uptime_in_seconds:557

2、web服務器配置redis

從官方網站下載源碼包或本地上傳http://pecl.php.net/package/redis其中版本號為3以上的是用於php7以上的,這里我們下載2.2.8版本

[root@Web01 html]# cd /service/tools/

[root@Web01 html]# wget http://pecl.php.net/package/redis/2.2.8     #下載源碼包

[root@Web01 tools]# tar xf redis-2.2.8.tgz    #解壓

[root@Web01 tools]# cd redis-2.2.8

[root@Web01 redis-2.2.8]# ls

arrays.markdown config.m4 library.c redis_array.h redis_cluster.h tests

cluster_library.c config.w32 library.h redis_array_impl.c redis_commands.c

cluster_library.h COPYING php_redis.h redis_array_impl.h redis_commands.h

cluster.markdown crc16.h README.markdown redis.c redis_session.c

common.h CREDITS redis_array.c redis_cluster.c redis_session.h

[root@Web01 redis-2.2.8]# /application/php/bin/phpize

#檢查編譯環境,不做檢查不能執行./configure

Configuring for:

PHP Api Version: 20121113

Zend Module Api No: 20121212

Zend Extension Api No: 220121212

[root@Web01 redis-2.2.8]# ./configure --with-php-config=/application/php/bin/php-config --enable-redis    #編譯

[root@Web01 redis-2.2.8]# make && make install

[root@Web01 ~]# ls /application/php5.5.38/lib/php/extensions/no-debug-non-zts-20121212/

memcache.so opcache.a opcache.so redis.so

[root@Web01 memcache-2.2.7]# find /application/php5.5.38/ -name "php.ini"

/application/php5.5.38/etc/php.ini    #找出php配置文件php.ini的路徑,默認在etc下,需要拷貝至lib

[root@Web01 memcache-2.2.7]#

cp /application/php5.5.38/etc/php.ini /application/php5.5.38/lib/php.ini

[root@Web01 ~]# vim /application/php5.5.38/lib/php.ini        #修改配置文件

修改718行的內容指定擴展模塊的路徑並添加一行指定擴展模塊名稱

718 extension_dir = "/application/php5.5.38/lib/php/extensions/no-debug-non-zts-20121212/"

719 extension = "redis.so"

[root@Web01 tools]# pkill php-fpm

[root@Web01 tools]# /application/php/sbin/php-fpm

[root@Web01 tools]# /application/php/bin/php -m|grep redis

redis

3、瀏覽器端檢查

以discuz為例

重新訪問刷新,進入管理中心——>全局———>性能優化——>內存優化,可以看到已經生效

4、配置開啟服務器優化

編輯站點目錄下config_global.php文件

[root@Web01 discuz]# pwd

/application/nginx/html/discuz

[root@Web01 discuz]# vim config/config_global.php

$_config['memory']['redis']['server'] = '192.168.1.51';        #指定服務器地址

$_config['memory']['redis']['requirepass'] = '123456';        #指定密碼

瀏覽器刷新再次訪問,此時已經可以支持redis

5、安裝並配置redis管理界面phpRedisAdmin

5.1、下載安裝包並解壓到站點目錄

官方地址位於github上面https://github.com/ErikDubbelboer/phpRedisAdmin

可以使用github的下載方式git clone到本地,或者直接下載zip包到本地都可以,在使用git clone命令前需要執行

yum install git -y安裝git

[root@Web01 phpredisadmin]# unzip phpRedisAdmin-master.zip

下載完成這個包並沒有完全下載,我們可以查看README.markdown文件內容,里面有指出還需要下載另外一個包

[root@Web01 phpredisadmin]# cat README.markdown

git clone https://github.com/ErikDubbelboer/phpRedisAdmin.git

cd phpRedisAdmin

git clone https://github.com/nrk/predis.git vendor

5.2、修改配置文件

[root@Web01 phpredisadmin]# cd includes/

[root@Web01 includes]# cp config.sample.inc.php config.inc.php

[root@Web01 includes]# vim config.inc.php    可以在此配置管理多台服務器(即重復相同選項,修改服務器ip及密碼)

'host' => '192.168.1.51',    #指定主機地址

'auth' => '123456'    #指定密碼

5.3、修改nginx配置文件指定站點目錄及域名並平滑重啟

[root@Web01 memadmin]# nginx -t

nginx: the configuration file /application/nginx-1.12.2/conf/nginx.conf syntax is ok

nginx: configuration file /application/nginx-1.12.2/conf/nginx.conf test is successful

[root@Web01 memadmin]# nginx -s reload

5.4、瀏覽器訪問

 

 

博主原創文章,轉載請務必注明出處


免責聲明!

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



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