(一)Redis实战教程之redis简介
1、Redis是什么?
Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据,并提供了丰富的命令。Redis支持存储的类型非常丰富,常用的包括string、list、set、zset和hash等类型,还有bitmaps和hyperloglogs。而且redis还提供了两种持久化功能aof和rdb。为数据的安全性提供了可靠的方案。Redis提供了多种集群方式,主从模式、哨兵模式、clustor模式等。
2、Redis的诞生
Merzia的创始人Salvatore Sanfilippo不满意基于mysql的网站的实时统计系统lloogg,为了提高性能,09年开发了Redis。
3、Redis的特点
- C语言开发,基于内存存储,吞吐量高
- 支持两种持久化方式AOF、RDB
- 提供丰富的数据类型。
- 支持丰富的客户端调用语言API
- 支持主从、哨兵和clustor等多种集群模式
- 可作为消息队列使用
- 包含像setnx、incrby的原子性特性。
4、Redis使用场景
热点数据缓存,热点数据访问是业务压力的主要来源,可利用redis访问数据快,丰富的存储类型等特点,实现特点数据的存储。另外可以给热点数据做一个过期时间,防止长期占用内存。
限时业务的运用,可以利用redis的定时过期删除的特性,实现一些手机验证码、限时优惠的活动信息、有时间限制的内容投放业务等场景。
计数器,redis有一个incrby的命令,可以实现原子性的递增。所以在高并发的活动场景、分布式的序列号生成、限制手机号发送短信数量、接口调用次数等等场景。
排行榜,借助Redis的zsort的顺序不重复存储的特性,可以进行排行数据的存储。比如对世界杯竞猜积分,每个人猜1次,对了+1分,错了+0分,展示得分最高的前一百名。建立一个zset,给每个人建立一个分数和用户ID,通过使用zincrby对每个用户的分数+1。最后通过zrangebyscore命令获取当前用户的排行榜竞猜排行。
分布式锁,这个主要是使用setnx命令的一次性写入不可修改的特性来实现的。当然这个setnx设置完之后
(一)Redis实战教程之redis简介相关推荐
- java+mysql性能优化_Java培训实战教程之mysql优化
Java培训实战教程之mysql优化 更新时间:2015年12月29日13时30分 来源:传智播客Java培训学院 浏览次数: 1. mysql引擎 1.1. 引擎类型 MySQL常用的存储引擎 ...
- Redis实战之征服 Redis + Jedis + Spring (三)
一开始以为Spring下操作哈希表,列表,真就是那么土.恍惚间发现"stringRedisTemplate.opsForList()"的强大,抓紧时间恶补下. 通过spring-d ...
- 4. Vue入门实战教程之vue-element-admin后端API适配
Vue入门实战教程之vue-element-admin后端API适配 1.1 前言 1.2 分析框架 1.1.1 第一个接口:根据账号密码登陆获取token 1.1.2 第二个接口:根据token获取 ...
- 叩丁狼—Java培训实战教程之mysql优化
Java培训实战教程之mysql优化 Java培训过程中精点.难点知识解析 1. mysql引擎1.1. 引擎类型MySQL常用的存储引擎为MyISAM.InnoDB.MEMORY.MERGE,其中I ...
- redis实战之使用redis实现排行榜
转载:http://blog.csdn.net/u011250882/article/details/48632379 设想在一个游戏中,有上百万的玩家数据,如果现在需要你根据玩家的经验值整理一个前2 ...
- 【Redis实战】认识Redis中的全局哈希表
文章目录 Redis是如何支持基于Key的快速访问的 全局哈希表 哈希表结构 哈希冲突 一张图 相关源码 Redis是如何支持基于Key的快速访问的 一谈到Redis,马上能想到的就是:"快 ...
- redis实战(12):Redis性能监控指标汇总
1. 添加依赖 <parent><groupId>org.springframework.boot</groupId><artifactId>sprin ...
- Python基础教程之Python简介
#「笔耕不辍」–生命不息,写作不止# 1. Python是什么? (1)在介绍Python之前,先和大家聊一聊什么是编程语言.大家或许都知道,要让计算机为我们干活,就需要给计算机下指令,那么编程语言就 ...
- 前端学习(1615):前端系列实战课程之javascript简介
- 51单片机实战教程之C语言基础(五 C语言函数及其定义)
虽然部分C语言函数的返回值与其参数存在对应关系,但是它与数学里的函数不是同一概念.有的书上把它定义为完成特定任务的代码集合. C语言函数的格式为:返回值数据格式 函数名(参数列表){函数体}, 函数 ...
最新文章
- 2022-2028年中国UTM市场投资分析及前景预测报告
- Problems you may meet
- 软件工程学习笔记《四》需求分析
- c# msi中加入驱动_MSI微星:给你的CPU装上热交换气缸活塞,不用电也能驱动风扇降温...
- 【案例】复制静止问题一则
- 把块存放在页高速缓存中
- java中使用activiti(工作流)
- 微信小程序.阿里巴巴矢量图标库iconfont使用
- 微软bi报表服务器,什么是 Power BI 报表服务器?
- R_展示变量之间关系的图形
- 赛尔号周五几点服务器维护完,赛尔号手游几点刷新游戏 | 手游网游页游攻略大全...
- 四象限分析法分析你是否适合做管理
- 微信公众平台开发之签到积分查询功能
- Qt报错 converting to execution character set:illegal byte sequence
- clang++ exe error unable to execute command Couldnt execute program文件名或扩展名太长
- 美国科技界是如何帮助解决贩卖儿童的?
- OP-TEE 简易驱动编写:启动TZPC与TZPCDEP
- android 获取文件大小
- 程序开发小白需了解的一些概念
- 曾经vb,c ,c++,python,写过的杨辉三角,致敬杨老前辈