Redis01——Redis介绍

1、NoSQL数据库概述

  NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,泛指非关系型的数据库。

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

  **特点:**不遵循SQL标准,不支持ACID,远超于SQL的性能

  **适用场景:**对数据高并发的读写,海量数据的读写,对数据高可扩展性的

**不适用场景:**需要事务支持,基于sql的结构化查询存储,处理复杂的关系,即席查询

2、session共享问题如何解决?

  • 存在cookie中——不安全,网络负担,效率低
  • 存在文件服务器或者数据库——导致大量的io操作,效率低
  • session复制——会导致每个服务器之间必须将session广播到集群内的每个节点,数据冗余,节点浪费,存在广播风暴问题
  • 存在Redis中——服务器从内存中读取数据,速度快,结构简单

3、Redis是什么?

  Redis是一个开源的key-value存储系统

  操作原子性,支持的存储类型多:字符串String、链表list、集合set、有序集合zset、哈希类型hash

  周期性将更新的数据存储修改追加,实现主从同步(master-slave)

4、Redis的应用场景(配合关系型数据库做高速缓存-高频次,热门访问,降低数据库IO)

  • 最新N个数据 è 通过List实现按自然事件排序的数据
  • 排行榜,TopN è 利用zset(有序集合)
  • 时效性的数据,比如手机验证码è Expire过期
  • 计数器,秒杀 è 原子性,自增方法INCR、DECR
  • 去除大量数据中的重复数据è 利用set集合
  • 构建队列è利用list集合
  • 发布订阅消息系统 è pub/sub模式
点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

Python3:sqlalchemy对mysql数据库操作,非sql语句

Python3:sqlalchemy对mysql数据库操作,非sql语句python3authorlizmdatetime2018020110:00:00coding:utf8'''

KVM调整cpu和内存

一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid