当前位置: 首页 > redis, 分布式系统, 缓存系统 > 正文

Redis及PHP扩展安装

关键字:
1 星2 星3 星4 星5 星 (1 次投票, 评分: 5.00, 总分: 5)
Loading ... Loading ...
baidu_share

最近要做的项目中有两个场景(好友动态、数据排行榜)我们决定使用Redis,关于哪些场景适合用Redis可以看看这些文章,Redis作者谈Redis应用场景,Redis能干啥?细看11种Web应用场景,几点建议,让Redis在你的系统中发挥更大作用。虽然Redis在有些地方还不是特别完善,如一些网友所说的Master\Slave、Sharding、多线程等,但是已经足够强大。目前国内在Redis上摸索最多的应该是新浪微博团队了,也看了 TimYang 及其团队关于Redis的一些分享。这是网友对Tim提的的两个提问:
1:Redis的复制机制不完善,失步之后要重新同步所有数据。
Tim:可以架两级slave解决
2:Redis的操作时单线程的,没有办法利用多核的优势。
Tim:通过单服务器多端口刚好发挥这种优势。

今天就先在本地搭建试试,当然安装步骤大部分是来源网络,以后在使用的过程用有什么心得会继续记录下来。
1:安装Redis

wget http://redis.googlecode.com/files/redis-2.4.14.tar.gz
tar zxvf redis-2.4.14.tar.gz
cd redis-2.4.14
make

2:配置Redis
配置文件:

cp redis.conf /etc/ #这个文件时redis启动的配置文件

以下的配置文件的解释:

#!/bin/sh
#
# redis - this script starts and stops the redis-server daemon
#
# chkconfig: - 85 15
# description: Redis is a persistent key-value database
# processname: redis-server
# config: /etc/redis.conf
# config: /etc/sysconfig/redis
# pidfile: /var/run/redis.pid
 
# Source function library.
. /etc/rc.d/init.d/functions
 
# Source networking configuration.
. /etc/sysconfig/network
 
# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0
 
redis="/usr/local/redis-2.4.14/src/redis-server"
prog=$(basename $redis)
 
REDIS_CONF_FILE="/etc/redis.conf"
 
[ -f /etc/sysconfig/redis ] && . /etc/sysconfig/redis
 
lockfile=/var/lock/subsys/redis
 
start() {
[ -x $redis ] || exit 5
[ -f $REDIS_CONF_FILE ] || exit 6
echo -n $"Starting $prog: "
daemon $redis $REDIS_CONF_FILE
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}
 
stop() {
echo -n $"Stopping $prog: "
killproc $prog -QUIT
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
}
 
restart() {
stop
start
}
 
reload() {
echo -n $"Reloading $prog: "
killproc $redis -HUP
RETVAL=$?
echo
}
 
force_reload() {
restart
}
 
rh_status() {
status $prog
}
 
rh_status_q() {
rh_status >/dev/null 2>&1
}
 
case "$1" in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart|configtest)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
exit 2
esac

启动Redis,还有其它操作命令{start|stop|restart|force-reload}

/etc/init.d/redis start

3.安装PHP扩展
Redis官网上推荐了5种PHP扩展: Predis 、 Phpredis 、Rediska 、RedisServer 、Redisent .
我选择的是Phpredis

unzip owlient-phpredis-2.1.1-1-g90ecd17.zip
cd owlient-phpredis-2.1.1-1-g90ecd17
/usr/bin/phpize
./configure -with-php-config=/usr/bin/php-config
make && make install

php.ini中添加extension=redis.so,重启Nginx。

$redis = new Redis();
$redis->connect('127.0.0.1',6379);
$redis->set('foo','This Is Test String! ');
echo $redis->get('foo');

本文固定链接: http://www.chepoo.com/redis-phpredis-install.html | IT技术精华网

Redis及PHP扩展安装:等您坐沙发呢!

发表评论