网络缓存Redis的介绍及使用

一、Redis介绍     

Redis是一个开源的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。它支持多种类型的数据结构,例如:字符串、列表、集合等。Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。它支持数据的备份,即master-slave模式的数据备份。


二、Redis使用

Redis的使用分为Linux下的使用的Windows下的使用两部分进行介绍。

1、首先是Linux下的安装和使用。

(1)下载上传解压安装Redis


(2)启动服务端和客户端


(3)简单测试



2、Windows下Redis的安装就不多说了,直接上java客户端的测试代码

【pom.xml】

<!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
	<dependency>
      <groupId>redis.clients</groupId>
      <artifactId>jedis</artifactId>
      <version>2.9.0</version>
	</dependency>

【java客户端测试代码】

package com.xzw.redis;

import java.util.ArrayList;
import java.util.List;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
import redis.clients.jedis.JedisShardInfo;
import redis.clients.jedis.ShardedJedis;
import redis.clients.jedis.ShardedJedisPool;
/**
 * 
 * @author xzw
 *
 */
public class RedisClient {
	private Jedis jedis;//非切片客户端连接
	private JedisPool jedisPool;//非切片连接池
	private ShardedJedis shardedJedis;//切片客户端连接
	private ShardedJedisPool shardedJedisPool;//切片连接池
	
	public RedisClient(){
		initialPool();
		initialShardedPool();
		shardedJedis = shardedJedisPool.getResource();
		jedis = jedisPool.getResource();
	}
	
	/**
	 * 初始化非切片池
	 */
	private void initialPool(){
		//池基本设置
		JedisPoolConfig config = new JedisPoolConfig();
		config.setMaxIdle(5);
		config.setMaxTotal(20);
		config.setMaxWaitMillis(1000l);
		config.setTestOnBorrow(false);

		jedisPool = new JedisPool(config, "127.0.0.1", 6379);
	}
	
	/**
	 * 初始化切片池
	 */
	private void initialShardedPool(){
		//池基本设置
		JedisPoolConfig config = new JedisPoolConfig();
		config.setMaxIdle(5);
		config.setMaxTotal(20);
		config.setMaxWaitMillis(1000l);
		config.setTestOnBorrow(false);
		//slave链接
		List<JedisShardInfo> shards = new ArrayList<JedisShardInfo>();
		shards.add(new JedisShardInfo("127.0.0.1", 6379, "master"));
		
		//构造池
		shardedJedisPool = new ShardedJedisPool(config, shards);
	}
	
	public void show(){
		jedisPool.returnResource(jedis);
		shardedJedisPool.returnResource(shardedJedis);
	}
	
	public static void main(String[] args) {
		new RedisClient().show();
	}
	
}

猜你喜欢

转载自blog.csdn.net/gdkyxy2013/article/details/79766859