redis介绍、单机安装以及java调用
什么是redis
Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库。和传统的关系型数据库不一样,不一定遵循传统数据库的一些基本要求(非关系型的、分布式的、开源的。水平可扩展的)。
优点:
对数据高并发读写
对海量数据的高效率存储和访问
对数据的可扩展性和高可用性
缺点:
redis (对事务的处理非常简单)
无法做到太复杂的关系数据库模型
Redis是以key-value store 存储,data structure service 数据结构服务器。键可以包含:(string)字符串,哈希,(list)链表,(set)集合,(zset)有序集合。这些数据集合都支持push/pop、add/remove及取交集和并集以及更丰富的操作,redis支持各种不同的方式排序,为了保证效率,数据都是缓存在内存中,它也可以周期性的把更新的数据写入磁盘或者把修改操作写入追加到文件记。
redis的应用场景
缓存(数据查询、短连接、新闻内容、商品内容等等)。(最常见的应用场景)
分布式集群架构中的session分离。
任务队列。(秒杀、抢购、12306等等)
应用排行榜。
网站访问统计。
数据过期处理(可以精确到毫秒)
Redis的安装
redis是C语言开发, 安装redis需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc,安装命令是:yum install gcc-c++
1、redis下载:http://download.redis.io/releases/redis-3.2.8.tar.gz
2、将redis-3.2.8.tar.gz拷贝到/home目录下
3、解压: tar -zxvf redis-3.2.8.tar.gz
4、进入解压后的目录进行编译
cd /home/redis-3.2.8
make
5、进入到src下进行安装:make install
6、创建两个文件夹存放redis的命令和配置文件
mkdir -p /home/redis/bin
mkdir -p /home/redis/etc
7、把redis-3.2.8下的redis.conf移动到/home/redis/etc
8、把redis-3.2.8/src中的mkreleasehdr.sh、redis-benchmark、redis-check-aof、redis-cli、redis-server移动到/home/redis/bin目录下,命令:
mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-cli redis-server /home/redis/bin
9、启动时需要指定配置文件:
./bin/redis-server etc/redis.conf
10、出现下图所示表示redis启动成功

11、若要将redis改成后台启动,需要修改redis.conf配置文件,将daemonize的值改为yes
通过jedis连接redis单机
1、依赖的jar包:
commons-pool2-2.4.2.jar
jedis-2.9.0.jar
2、通过创建jedis对象,连接redis服务,代理如下:
public static void testJedisSingle() {
Jedis jedis = new Jedis("192.168.2.120", 6379);//创建jedis对象
jedis.set("name", "zhangsan");//设置数据
String name = jedis.get("name");//获取数据
System.out.println(name);
jedis.close();//关闭连接
}
注:外部链接连接redis失败的解决办法。一般情况下出现这种情况是因为防火墙,将防火墙关闭或者将6379端口加到防火墙中。
3、使用连接池连接redis,代码如下:
public static void redisPool() {
JedisPoolConfig config = new JedisPoolConfig();
//最大连接数
config.setMaxTotal(30);
//最大连接空闲数
config.setMaxIdle(2);
JedisPool pool = new JedisPool(config, "192.168.2.120", 6379);
Jedis jedis = null;
try {
jedis = pool.getResource();
jedis.set("name", "lisi");
String name = jedis.get("name");
System.out.println(name);
}catch(Exception ex){
ex.printStackTrace();
}finally{
if(jedis != null){
//关闭连接
jedis.close();
}
}
}
redis介绍、单机安装以及java调用的更多相关文章
- Redis介绍以及安装(Linux)
Redis介绍以及安装(Linux) redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcached类似,但很大程度补偿了memcached的不足,它支持存储的 ...
- Redis介绍以及安装(Linux)
Redis介绍以及安装(Linux) redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcached类似,但很大程度补偿了memcached的不足,它支持存储的 ...
- Redis介绍、安装部署、操作
学习连接:http://www.runoob.com/redis/redis-tutorial.html 一.Redis介绍 Redis是NoSql的一种. NoSql,全名:Not Only Sql ...
- ElasticSearch5在Ubuntu系统下的安装和Java调用
ElasticSearch是开源搜索平台的新成员,实时数据分析的神器.可以理解为作为搜索的数据库,可以提供搜索功能.对比关系型数据库,具有以下的相似关系: 关系型数据库 数据库 表 行 列 Elast ...
- redis介绍、安装、redis持久化、redis数据类型
1.redis介绍 2.安装管网:https://redis.io/下载:wget -c http://download.redis.io/releases/redis-4.0.11.tar.gz解 ...
- redis介绍以及安装
一.redis介绍 redis是一个key-value存储系统.和Memcached类似,它支持存储的values类型相对更多,包括字符串.列表.哈希散列表.集合,有序集合. 这些数据类型都支持pus ...
- 1.Redis介绍以及安装
Redis介绍 Redis是一个开源的(BSD开源协议),内存数据结构存储,被用于作为数据库,缓存和消息代理. Redis支持如下数据结构: string(字符串) hashes(哈希) lists ...
- redis介绍和安装(一)
Redis介绍:redis是一个key-value存储系统. 和Memcached类似,它支持存储的value类型相对更多,包括 string(字符串). list(链表).set(集合).zset( ...
- Redis介绍、安装、配置
NoSQL介绍 NoSQL(NoSQL=Not Only SQL),意为反SQL运动,是一项全新的数据库革命性运动.指的是非关系型数据库,解决了传统的关系型数据库,难以解决的超大规模和高并发的的问题 ...
随机推荐
- python,装饰器带参数,原理
import time # 函数装饰器传参 def zhuang1(hao): def zhuang2(func1): def funczhuang(*args, **kw): print(time. ...
- 13-Java-JSP知识梳理
一.JSP了解 JSP(java server pages,服务器页面),可理解为HTML+ Java = = JSP,它可生成动态的HTML(拼标签).是以.jsp为后缀的文件, 内容是以标签为主体 ...
- 解决VS2013报错fopen、sprintf等函数安全的问题
VS2013中使用fopen.sprintf等函数是会出现安全问题: error C4996: 'fopen': This function or variable may be unsafe. Co ...
- SpringBoot:静态资源的访问和配置(转载)
默认静态资源访问Spring Boot的默认静态资源的路径为: spring.resources.static-locations=classpath:/META-INF/resources/,cla ...
- 马路 树链剖分/线段树/最近公共祖先(LCA)
题目 [问题描述] 小迟生活的城市是⼀棵树(树指的是⼀个含有 \(n\) 个节点以及 \(n-1\) 条边的⽆向连通图),节点编号从 \(1\) 到 \(n\),每条边拥有⼀个权值 \(value\) ...
- Codeforces Round #619 (Div. 2)C(构造,容斥)
#define HAVE_STRUCT_TIMESPEC #include<bits/stdc++.h> using namespace std; int main(){ ios::syn ...
- MySql 怎么存取 Emoji
01.前言 Emoji 在我们生活中真的是越来越常见了,几乎每次发消息的时候不带个 Emoji,总觉得少了点什么,似乎干巴巴的文字已经无法承载我们丰富的感情了.对于我们开发者来说,如何将 Emoji ...
- HTTP状态码详解(下)
接上文 HTTP状态码详解(上). 详细的描述状态码之(3**) 300:被请求的资源有一系列可供选择的回馈信息,每个都有自己特定的地址和浏览器驱动的商议信息.用户或浏览器能够自行选择一个首选的地址进 ...
- redis常用配置参数
首先弄清楚当前redis读取的是哪个配置文件,然后去配置文件修改,例如windows 打开服务列表,点击Redis,右键属性 "D:\Program Files\Redis\redis-se ...
- CDH仅完成 0/3 个步骤。首个失败:主机 node6 (id=2) 上的客户端配置 (id=1) 已使用 1 退出,而预期值为 0。
CDH仅完成 0/3 个步骤.首个失败:主机 node6 (id=2) 上的客户端配置 (id=1) 已使用 1 退出,而预期值为 0 javaHome出现了问题 JAVA_HOME并不是根据环境 ...