redis服务搭建及简单使用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Hi_TYSONZHANG/article/details/78134657

redis服务搭建及简单使用

获取官网redis安装包,最新版本3.2.8

$ wget http://download.redis.io/releases/redis-3.2.8.tar.gz
解压包
$ tar xzf redis-3.2.8.tar.gz
进入目录
$ cd redis-3.2.8
安装
$ make
启动redis服务器
$ src/redis-server
启动redis客户端
$ src/redis-cli

测试
redis> set foo bar
OK
redis> get foo
"bar"

注意:服务器的redis搭建好后,需要开放防火墙端口,并且设置验证密码,java客户端才能连接
开放6379端口
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT
重启防火墙
[root@admin java]# service iptables restart


设置验证密码
cd /usr/local/redis-3.2.8
vim redis.cof
#requirepass foobared去掉注释,foobared改为自己的密码,比如 requirepass 123456

重设密码
config set requirepass yourPassword

java客户端jedis示例代码

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

public class RedisTest {  
      
    private static JedisPool pool;

    /**
 * 建立连接池 真实环境,一般把配置参数缺抽取出来。
 *
 */
    private static void createJedisPool() {

        // 建立连接池配置参数
        JedisPoolConfig config = new JedisPoolConfig();

        // 设置最大连接数
        config.setMaxActive(500);

        // 设置最大阻塞时间,记住是毫秒数milliseconds
        config.setMaxWait(10000);

        // 设置空间连接
        config.setMaxIdle(10);
       
        //在borrow一个jedis实例时,是否提前进行validate操作;如果为true,则得到的jedis实例均是可用的
        config.setTestOnBorrow(true);  
        

        // 创建连接池
        pool = new JedisPool(config, "服务器IP",6379,10000,"密码");

    }

    /**
 * 在多线程环境同步初始化
 */
    private static synchronized void poolInit() {
        if (pool == null)
            createJedisPool();
    }

    /**
 * 获取一个jedis 对象
 *
 * @return
 */
    public static Jedis getJedis() {

        if (pool == null)
            poolInit();
        return pool.getResource();
    }

    /**
 * 归还一个连接
 *
 * @param jedis
 */
    public static void returnRes(Jedis jedis) {
        pool.returnResource(jedis);
    }
    
    
    public static void main(String[] args) {
        Jedis jedis = getJedis();
          //开始前,先移除所有的内容  
        jedis.del("java framework");  
        System.out.println(jedis.lrange("java framework",0,-1));  
        //先向key java framework中存放三条数据  
        jedis.lpush("java framework","spring");  
        jedis.lpush("java framework","struts");  
        jedis.lpush("java framework","hibernate");  
        //再取出所有数据jedis.lrange是按范围取出,  
        // 第一个是key,第二个是起始位置,第三个是结束位置,jedis.llen获取长度 -1表示取得所有
        List<String> list = jedis.lrange("java framework",0,-1);
        System.out.println(jedis.lrange("java framework",0,-1));  
        
        jedis.del("java framework");
        jedis.rpush("java framework","spring");  
        jedis.rpush("java framework","struts");  
        jedis.rpush("java framework","hibernate");
        System.out.println(jedis.lrange("java framework",0,-1));
    }
}

猜你喜欢

转载自blog.csdn.net/Hi_TYSONZHANG/article/details/78134657
今日推荐