Redis3集群安装

1 什么是Redis

Redis是目前一个非常优秀的key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set有序集合)和hash(哈希类型)。

2 为什么要安装Redis3集群

Redis3.x支持集群模式,更加可靠!

3 安装Redis3

参考文章:http://blog.csdn.net/myrainblues/article/details/25881535

  1. 下载redis3的稳定版本,下载地址http://download.redis.io/releases/redis-3.2.11.tar.gz
  2. 上传redis-3.2.11.tar.gz到服务器
  3. 解压redis源码包

tar -zxvf redis-3.2.11.tar.gz -C /usr/local/src/

  1. 进入到源码包中,编译并安装redis

cd /usr/local/src/redis-3.2.11/
make && make install

  1. 报错,缺少依赖的包

缺少gcc依赖(c的编译器)

  1. 配置本地YUM源并安装redis依赖的rpm包

yum -y install gcc

  1. 编译并安装

make && make install

  1. 报错,原因是没有安装jemalloc内存分配器,可以安装jemalloc或直接输入

make MALLOC=libc && make install

  1. 重新编译安装

make MALLOC=libc && make install

  1. 在所有机器的/usr/local/下创建一个redis目录,然后拷贝redis自带的配置文件redis.conf到/usr/local/redis

mkdir /usr/local/redis
cp /usr/local/src/redis-3.2.11/redis.conf /usr/local/redis

  1. 修改所有机器的配置文件redis.conf | daemonize yes #redis后台运行
    appendonly yes #开启aof日志,它会每次写操作都记录一条日志
    bind 192.168.1.207 | | —- |

  2. 启动所有的redis节点

cd /usr/local/redis
redis-server redis.conf

  1. 查看redis进程状态

ps -ef | grep redis

  1. 使用命令行客户的连接redis

redis-cli -p 6379

  1. 关闭redis

redis-cli shutdown
17.配置redis密码
config set requirepass 123

添加redis的java依赖


redis.clients
jedis
2.9.0

java操作Redis:Jedis
http://blog.csdn.net/xyang81/article/details/51918129

| package cn.edu360.game
import redis.clients.jedis.{Jedis, JedisPool, JedisPoolConfig}

object JedisConnectionPool{

val config = new JedisPoolConfig()
//最大连接数,
__config
.setMaxTotal(20)
//最大空闲连接数,
__config
.setMaxIdle(10)
//当调用borrow Object方法时,是否进行有效性检查 —>
__config
.setTestOnBorrow(true)
//10000代表超时时间(10秒)
val pool = new JedisPool(config, “192.168.1.210”, 6379, 10000, “123568”)

def getConnection(): Jedis = {
pool.getResource
}
// def main(args: Array[String]) {
//
//
// val conn = JedisConnectionPool.getConnection()
//
// val r1 = conn.get(“xiaoniu”)
//
// println(r1)
//
// conn.incrBy(“xiaoniu”, -50)
//
// val r2 = conn.get(“xiaoniu”)
//
// println(r2)
//
//// val r = conn.keys(“*”)
//// import scala.collection.JavaConversions.

//// for(p <- r) {
//// println(p + “ : “ + conn.get(p))
//// }
// }
_} | | —- |