首页 > 数据库 >简述redis特点及其应用场景

简述redis特点及其应用场景

时间:2023-10-07 15:37:13浏览次数:39  
标签:场景 单线程 redis Redis 支持 简述 数据结构

 

1、Redis 特点
1.1.速度快: 10W QPS,基于内存,C语言实现,而众所周知,C语言是“距离”操作系统最近的的编程语言,执行速度快

1.2.单线程:Redis采用了单线程的架构,避免了多线程的资源竞争问题

1.3.简单: 代码短小精悍(单机核心代码只有23000行左右),单线程开发容易,不依赖外部库,使用简单

1.4.持久化:Redis还支持两种方式的持久化,即将数据写入磁盘的方法,RDB和AOF,两种方法各有利弊。

1.5.支持多种数据结构:Redis的全程是Remote Dictionary Server,是集合了五种数据结构:字符串、列表、哈希、集合、有序集合,可以说五种数据结构都是围绕于key-value的形式,而value不仅仅可以是值,还能是具体的数据结构,这给予了Redis强大的变化性和灵活能力。

1.6.支持多种编程语言:Redis目前基本可以说和MySQL的知名度一样高了,太多的运用场景,太多的支持语言,常见的比如:java的jedis,Python的redis、PHP、C、C++等等。

1.7.功能丰富: 支持Lua脚本,发布订阅,事务,pipeline等功能

1.8.主从复制:数据库的主从复制、集群功能是非常重要的,可以在Redis异常挂了后不影响客户端的使用

1.9.支持高可用和分布式:Redis从2.8版本后提供了高可用实现的Redis Sentinel,即Redis的“哨兵机制”,可以保证Redis节点的故障发现和自动转移,这实现了Redis强大的分布式功能。

2、应用场景
2.1.Session 共享:常见于web集群中的Tomcat或者PHP中多web服务器session共享
2.2.缓存:数据查询、电商网站商品信息、新闻内容
2.3.计数器:访问排行榜、商品浏览数等和次数相关的数值统计场景
2.4.微博/微信社交场合:共同好友,粉丝数,关注,点赞评论等
2.5.消息队列:ELK的日志缓存、部分业务的订阅发布系统
2.6.地理位置: 基于GEO(地理信息定位),实现摇一摇,附近的人,外卖等功能

标签:场景,单线程,redis,Redis,支持,简述,数据结构
From: https://www.cnblogs.com/tanll/p/17746414.html

相关文章

  • java程序出现oom如何解决?什么场景下会出现oom?
     1、概述 OOM,全称“OutOfMemory”,翻译成中文就是“内存用完了”。当JVM因为没有足够的内存来为对象分配空间、并且垃圾回收器也已经没有空间可回收时,就会抛出这个error。2、常见OOM情况及解决方法情况一、java.lang.OutOfMemoryError:Javaheapspace——>j......
  • 对比redis的RDB、AOF模式的优缺点
     1.RDB模式优缺点1.1.RDB模式优点1.1.1.RDB快照保存了某个时间点的数据,可以通过脚本执行redis指令bgsave(非阻塞,后台执行)或者save(会阻塞写操作,不推荐)命令自定义时间点备份,可以保留多个备份,当出现问题可以恢复到不同时间点的版本,很适合备份,并且此文件格式也支持......
  • 实现redis哨兵,模拟master故障场景
     1.概述 在哨兵(sentinel)机制中,可以解决redis高可用问题,即当master故障后可以自动将slave提升为master,从而可以保证redis服务的正常使用。2.哨兵的实现 哨兵的前提是已经实现了一个redis的主从复制的运行环境,从而实现一个一主两从基于哨兵的高可用redis架构。注意:......
  • GaussDB(DWS)案例丨MERGE场景下语句不下推引起的性能瓶颈问题
    本文分享自华为云社区《GaussDB(DWS)性能调优:MERGE场景下语句不下推引起的性能瓶颈问题案例》,作者:O泡果奶~。1、【问题描述】语句执行时间过长,且该语句performance执行计划中SQLDiagnosticInformation显示SQL语句不下推,理由为:TypeofRecordindualthatisnotarealtable......
  • 简述redis集群的实现原理
     为了解决单机性能的瓶颈,提高Redis性能,可以使用分布式集群的解决方案1.所有Redis节点使用(PING机制)互联2.集群中某个节点的是否失效,是由整个集群中超过半数的节点监测都失效,才能算真正的失效3.客户端不需要proxy即可直接连接redis,应用程序中需要配置有全部的r......
  • 基于redis5的redis cluster部署
     1.创建rediscluster集群的环境准备1.1.#每个redis节点采用相同的相同的redis版本、相同的密码、硬件配置;所有redis服务器必须没有任何数据;准备六台主机,地址如下:10.0.0.15010.0.0.16010.0.0.17010.0.0.18010.0.0.19010.0.0.2002.启用redis......
  • 简述DNS服务器原理,并搭建主-辅服务器
    1)DNS简介:DNS是计算机域名系统(DomainNameSystem或DomainNameService)的缩写。域名便于人们记忆,但机器之间只认IP地址,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,DNS就是进行域名解析的服务器。上网时输入的网址通过域名解析系统解析找到了......
  • redis配置类
     EncodeImgUtil类:packagecom.dtinone.springbootredis.utils;importsun.misc.BASE64Decoder;importsun.misc.BASE64Encoder;importjava.io.*;/***图片编码工具类**@authorbinge*/publicclassEncodeImgUtil{/***读取文件返回字节数组......
  • PHP操作redis
    一、安装PHP的redis扩展1)PHP的redis扩展有2个,分别是phpredis和predis扩展;phpredis是PHP官方推荐的,是C写的;predis使用的原生的PHP代码实现的一套Redis-client程序,可以不用安装任何扩展,只引入php代码就可以很方便的使用redis。2)phpredis需要下载扩展->编译安装,而predis不用,直......
  • Redis项目搭建
    Redis项目搭建Redis下载搭建redis首先需要下载Redis,可是Redis官方并没有Windows安装,好在网上从不缺大牛,Github上可以找到Redis的Windows版下载地址:https://github.com/tporadowski/redis/releases(网速很慢)打开上述链接如下图:解压后如下图,我们只需要关注3个部分redis.win......