Redis
2015-09-04 13:33
621 查看
Redis是一个开源,先进的key-value存储,并用于构建高性能,可扩展的Web应用程序的完美解决方案。
Redis从它的许多竞争继承来的三个主要特点:
Redis数据库完全在内存中,使用磁盘仅用于持久性。
相比许多键值数据存储,Redis拥有一套较为丰富的数据类型。
Redis可以将数据复制到任意数量的从服务器。
支持丰富的数据类型:Redis支持最大多数开发人员已经知道像列表,集合,有序集合,散列数据类型。这使得它非常容易解决各种各样的问题,因为我们知道哪些问题是可以处理通过它的数据类型更好。
操作都是原子性:所有Redis操作是原子的,这保证了如果两个客户端同时访问的Redis服务器将获得更新后的值。
多功能实用工具:Redis是一个多实用的工具,可以在多个用例如缓存,消息,队列使用(Redis原生支持发布/订阅),任何短暂的数据,应用程序,如Web应用程序会话,网页命中计数等。
mac安装 直接解压redis的压缩包,进入解压后的文件夹,然后:
sudo make
之后出现一堆信息,最后是这个:
Hint: To run 'make test' is a good idea ;)
按照这个提示,再运行一下make test
make test
又是一堆信息…… 结尾是这样的:
\o/ All tests passed without errors!
似乎没有错误。去src下面运行redis-server,可以运行!似乎是好使了。
安装完Redis后,在终端中输入:
$src/redis-server
即可启动Redis服务。
要关闭Redis服务也很简单,先用Redis客户端连上Redis服务,用SHUTDOWN命令即可关闭服务。
$src/redis-cli
redis 127.0.0.1:6379> SHUTDOWN
入门教程 http://www.yiibai.com/redis/redis_quick_guide.html http://www.tuicool.com/articles/nM73Enr
import java.util.ArrayList;
import java.util.List;
import redis.clients.jedis.JedisPoolConfig;
import redis.clients.jedis.JedisShardInfo;
import redis.clients.jedis.ShardedJedis;
import redis.clients.jedis.ShardedJedisPool;
/**
* 集群式的连接池
*
*/
public class ShardedJedisPoolDemo {
public static void main(String[] args) {
// 构建连接池配置信息
JedisPoolConfig poolConfig = new JedisPoolConfig();
// 设置最大连接数
poolConfig.setMaxTotal(50);
// 定义集群信息
List<JedisShardInfo> shards = new ArrayList<JedisShardInfo>();
shards.add(new JedisShardInfo("127.0.0.1", 6379));
// 定义集群连接池
ShardedJedisPool shardedJedisPool = new ShardedJedisPool(poolConfig, shards);
ShardedJedis shardedJedis = null;
try {
// 从连接池中获取到jedis分片对象
shardedJedis = shardedJedisPool.getResource();
// 从redis中获取数据
String value = shardedJedis.get("mytest");
System.out.println(value);
} catch (Exception e) {
e.printStackTrace();
} finally {
if (null != shardedJedis) {
// 关闭,检测连接是否有效,有效则放回到连接池中,无效则重置状态
shardedJedis.close();
}
}
// 关闭连接池
shardedJedisPool.close();
}
}
Redis从它的许多竞争继承来的三个主要特点:
Redis数据库完全在内存中,使用磁盘仅用于持久性。
相比许多键值数据存储,Redis拥有一套较为丰富的数据类型。
Redis可以将数据复制到任意数量的从服务器。
Redis 优势
异常快速:Redis的速度非常快,每秒能执行约11万集合,每秒约81000+条记录。支持丰富的数据类型:Redis支持最大多数开发人员已经知道像列表,集合,有序集合,散列数据类型。这使得它非常容易解决各种各样的问题,因为我们知道哪些问题是可以处理通过它的数据类型更好。
操作都是原子性:所有Redis操作是原子的,这保证了如果两个客户端同时访问的Redis服务器将获得更新后的值。
多功能实用工具:Redis是一个多实用的工具,可以在多个用例如缓存,消息,队列使用(Redis原生支持发布/订阅),任何短暂的数据,应用程序,如Web应用程序会话,网页命中计数等。
mac安装 直接解压redis的压缩包,进入解压后的文件夹,然后:
sudo make
之后出现一堆信息,最后是这个:
Hint: To run 'make test' is a good idea ;)
按照这个提示,再运行一下make test
make test
又是一堆信息…… 结尾是这样的:
\o/ All tests passed without errors!
似乎没有错误。去src下面运行redis-server,可以运行!似乎是好使了。
安装完Redis后,在终端中输入:
$src/redis-server
即可启动Redis服务。
要关闭Redis服务也很简单,先用Redis客户端连上Redis服务,用SHUTDOWN命令即可关闭服务。
$src/redis-cli
redis 127.0.0.1:6379> SHUTDOWN
入门教程 http://www.yiibai.com/redis/redis_quick_guide.html http://www.tuicool.com/articles/nM73Enr
import java.util.ArrayList;
import java.util.List;
import redis.clients.jedis.JedisPoolConfig;
import redis.clients.jedis.JedisShardInfo;
import redis.clients.jedis.ShardedJedis;
import redis.clients.jedis.ShardedJedisPool;
/**
* 集群式的连接池
*
*/
public class ShardedJedisPoolDemo {
public static void main(String[] args) {
// 构建连接池配置信息
JedisPoolConfig poolConfig = new JedisPoolConfig();
// 设置最大连接数
poolConfig.setMaxTotal(50);
// 定义集群信息
List<JedisShardInfo> shards = new ArrayList<JedisShardInfo>();
shards.add(new JedisShardInfo("127.0.0.1", 6379));
// 定义集群连接池
ShardedJedisPool shardedJedisPool = new ShardedJedisPool(poolConfig, shards);
ShardedJedis shardedJedis = null;
try {
// 从连接池中获取到jedis分片对象
shardedJedis = shardedJedisPool.getResource();
// 从redis中获取数据
String value = shardedJedis.get("mytest");
System.out.println(value);
} catch (Exception e) {
e.printStackTrace();
} finally {
if (null != shardedJedis) {
// 关闭,检测连接是否有效,有效则放回到连接池中,无效则重置状态
shardedJedis.close();
}
}
// 关闭连接池
shardedJedisPool.close();
}
}
相关文章推荐
- Redis命令
- Redis安装
- redis 集群部署(二)
- redis 学习笔记
- window下php5.6-x64-ts可用php_redis.dll文件
- 使用Spring-Data-Redis存储对象(redisTemplate)
- redis 集群部署(一)
- 在Ubuntu中安装Redis
- redis运维常用命令
- 关于redis的python客户端程序
- Nosql技术--redis系列--redis的数据类型 及相应的命令--String类型
- redis主从复制
- Redis零起点-探索Redis,学习Redis基础用法
- Redis优化之CPU充分利用
- java对redis的基本操作
- Redis安装
- 关于redis集群的一些事
- redis事务及锁应用
- Redis笔记
- redis notes