您的位置:首页 > 数据库 > Redis

redis服务搭建及简单使用

2017-09-29 15:52 357 查看
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
4000
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));

    }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: