5.1.xshell传输文件命令快捷键:alt+p
2.当运行一个程序时,想退出按ctrl+c退出
3.给用户权限:chmod 777 redis.conf 另一种方式:chmod –x
4.
5.查看redis是否在后端运行:ps –aux|grep redis
6.这样关闭不会丢数据
-------------------------------------------------------------------------------------------------------------
- jedis做测试
- 命令
4.Arraylist底层实现:数组,优点查询快,因为是一窜。增删改查慢。Linkedlist底层实现双向循环链表。查询慢,增删改快
*下图开启持久化aof
1. 什么是redis
redis是一个nosql(not only sql不仅仅只有sql)数据库.翻译成中文叫做非关系型型数据库.
关系型数据库:以二维表形式存储数据
非关系型数据库: 以键值对形式存储数据(key, value形式)
是一家意大利的创业公司出的,然后后来这家公司被VMware赞助. redis底层用C语句编写.
redis是将数据存放到内存中,由于内容存取速度快所以redis被广泛应用在互联网项目中,
redis有点:存取速度快,官方称读取速度会达到30万次每秒,写速度在10万次每秒最有,具体限制于硬件.
缺点:对持久化支持不够良好,
所以redis一般不作为数据的主数据库存储,一般配合传统的关系型数据库使用.
2. redis应用领域
分布式缓存
分布式session
保存博客或者论坛的留言回复等.
总之是用在数据量大,并发量高的情况下
3. 怎么用
redis主要就是使用命令来进行操作,java端在代码中可以使用Jedis来操作redis服务器
redis数据类型
字符串String
列表list redis 中使用的是双向循环链表来实现的list,在redis中更像栈
散列Hash 一般应用于将redis作为分布式缓存,存储数据库中的数据对象
集合set set 中数据是无序的并且不允许重复
有序集合zset redis 会根据分数自动排序,这里可以使用在学生成绩排序,
或者是手机应用商店流行软件排名等需求中
4.redis持久化方案:
rdb:可以设置间隔多长时间保存一次(Redis不用任何配置默认的持久化方案)
有点:让redis的数据存取速度变快
缺点:服务器断电时会丢失部分数据(数据的完整性得不到保证)
aof:可以设置实时保存
优点:持久化良好,能包装数据的完整性
缺点:大大降低了redis系统的存取速度
5. 主从复制:
这里使用了心跳检测机制,主从复制必须使用rdb持久化方式
从服务器一般是只读的,保证主服务器和从服务器的数据一致性
import org.junit.Test; import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool; public class JedisTest { @Test
public void testJedis1() throws Exception{
//创建和redis的连接
Jedis jedis = new Jedis("192.168.93.88", ); //存入
jedis.set("key2", "");
//取出
System.out.println(jedis.get("key2"));
//关闭
jedis.close();
} @Test
public void testJedisPool() throws Exception{
//创建连接池
JedisPool pool = new JedisPool("192.168.93.88", );
//获取连接
Jedis jedis = pool.getResource();
//存入
jedis.set("key3", "aaa");
//取出
System.out.println(jedis.get("key3"));
//使用连接时,连接使用完后一定要关闭,关闭后连接会自动回到连接池供别人使用,如果一直不关闭则连接被耗尽之后就会死机
jedis.close();
//关闭连接池
pool.close();
}
}