Redis缓存(笔记一:缓存介绍和数据库启动)

目录

1、NoSQL数据库简介

2、Redis介绍

3、Redis(win系统、linux系统中操作)

[3.1 win版本Redis启动](#3.1 win版本Redis启动)

[3.2 linux版本Redis启动](#3.2 linux版本Redis启动)


1、NoSQL数据库简介

技术的分类:(发展史)

1、解决功能性的问题:Java、Jsp、RDBMS、Tomcat、HTML、Linux、JDBC、SVN

2、解决扩展性的问题:Struts、Spring、SpringMVC、Hibernate、Mybatis

3、解决性能的问题:NoSQL、Java线程、Hadoop、Nginx、MQ、ElasticSearch

主流关系型数据库:

NoSql概念及作用:

  • NoSql打破了传统关系型数据库以业务逻辑为依据的存储模式,而针对不用数据结构类型改为以性能为最优先的存储方式;
  • 减少IO的读操作;

NoSql数据库概述及特点:

NoSql(NoSql = Not Only SQL),意即"不仅仅是SQL",泛指非关系的数据库;

NoSql不依赖业务逻辑方式存储,而以简单的key-value模式存储。因此大大的增加了数据库的扩展能力;

  • 不遵循SQL标准;
  • 不支持ACID;(不是不支持事务,而是不支持数据库的ACID原则:一致性,原子性,隔离性,持久性)
  • 远超与SQL的性能;

NoSql适用场景

  • 对数据高并发的读写;
  • 海量数据的读写;
  • 对数据高可扩展性;

NoSql不适用场景

  • 需要事务支持;
  • 基于sql的结构化查询存储,处理复杂的关系,需要即席查询;
  • 用不着sql和用了sql也不行的情况,请考虑用NoSql;

Redis特点(Redis也是NoSQL)

  • 几乎覆盖了Memcached的绝大部分功能;
  • 数据都在内存中,支持持久化,主要用作备份恢复;
  • 处理支持简单的key-value模式,和支持多种数据结构的存储,比如:lsit,set,hash,zset等;
  • 一般是作为缓存数据库辅助持久的数据库;

2、Redis介绍

Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

定义:

redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。

在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

Redis支持主从同步。数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得Redis可执行单层树复制。存盘可以有意无意的对数据进行写操作。由于完全实现了发布/订阅机制,使得从数据库在任何地方同步树时,可订阅一个频道并接收主服务器完整的消息发布记录。同步对读取操作的可扩展性和数据冗余很有帮助。

redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

作用:

  1. 内存存储。持久化,因为内存都是断电即失、所以持久化很重要(rdb、aof);
  2. 效率高,可以用于高速缓存;
  3. 发布订阅系统;
  4. 地图信息分析;
  5. 计时器、计数器(可计算浏览量);
  6. ....

Redis相关知识:

  1. Redis默认有16个数据库,类似数组下标从0开始,初始默认使用0号库,使用命令 select来切换数据库;如:select 8
  2. 所有库都是同样密码,统一密码管理;
  3. dbsize 查看当前数据库的 key 的数量;
  4. flushdb 清空当前库;
  5. flushal 通杀全部库;(清空整个 Redis 服务器的数据)

3、Redis(win系统、linux系统中操作)

Redis安装参考:Redis安装教程(Win+Linux)

3.1 win版本Redis启动
  1. 运行redis-server.exe(运行redis服务 )
  1. 运行完后运行redis-cli.exe(可写命令行)
3.2 linux版本Redis启动

前提运行了Redis容器,可以使用以下命令来连接到Redis服务器:

bash 复制代码
docker exec -it redis redis-cli

这将打开一个交互式的Redis命令行界面,我们可以在这里执行各种Redis命令来管理和操作Redis数据库。例如,可以使用SET命令来设置键值对,使用GET命令来获取值,使用DEL命令来删除键等等。更多Redis命令可以参考Redis官方文档。(或参考:Redis常用命令大全

启动成功:

相关推荐
极客天成ScaleFlash5 小时前
极客天成NVFile:无缓存直击存储性能天花板,重新定义AI时代并行存储新范式
人工智能·缓存
morris1316 小时前
【redis】redis实现分布式锁
数据库·redis·缓存·分布式锁
这个懒人7 小时前
深入解析Translog机制:Elasticsearch的数据守护者
数据库·elasticsearch·nosql·translog
爱的叹息8 小时前
spring boot集成reids的 RedisTemplate 序列化器详细对比(官方及非官方)
redis
weitinting9 小时前
Ali linux 通过yum安装redis
linux·redis
纪元A梦9 小时前
Redis最佳实践——首页推荐与商品列表缓存详解
数据库·redis·缓存
爱的叹息17 小时前
Java 连接 Redis 的驱动(Jedis、Lettuce、Redisson、Spring Data Redis)分类及对比
java·redis·spring
松韬18 小时前
Spring + Redisson:从 0 到 1 搭建高可用分布式缓存系统
java·redis·分布式·spring·缓存
天上掉下来个程小白18 小时前
Redis-14.在Java中操作Redis-Spring Data Redis使用方式-操作列表类型的数据
java·redis·spring·springboot·苍穹外卖
·云扬·18 小时前
深度剖析 MySQL 与 Redis 缓存一致性:理论、方案与实战
redis·mysql·缓存