zl程序教程

Redis实战(1)

  • 7.Redis数据库容灾备份企业实战

    7.Redis数据库容灾备份企业实战

    [TOC]前置知识学习补充 Redis数据库基础入门介绍与安装 - https://blog.weiyigeek.top/2019/4-17-49.htmlRedis数据库基础数据类型介绍与使用 - https://blog.weiyigeek.top/2020/5-17-50.htmlRedis基础运维之原理介绍和主从配置 - https://blog.weiyigeek.top/2019/4-

    日期 2023-06-12 10:48:40     
  • Redis 实战(一)AOF 持久化配置和数据恢复

    Redis 实战(一)AOF 持久化配置和数据恢复

    真枪实弹:AOF 持久化配置和数据恢复大家好,我是悟空呀。如果你曾经背过 RDB 和 AOF 的面试八股文,那么对 AOF 肯定不陌生,但如果只停留在应付面试阶段,对于提高自己的技术是远远不够的,今天,悟空就带大家来真枪实弹来看看 AOF 的持久化是怎么配置的,以及如何应用 AOF 文件进行数据恢复。开启持久化配置什么是 AOF 持久化以独立日志的方式记录每次写命令。重启时再执行 AOF 文件中的

    日期 2023-06-12 10:48:40     
  • Redis实战(二)Redis 的 RDB 配置和数据恢复

    Redis实战(二)Redis 的 RDB 配置和数据恢复

    RDB 配置解释在 redis.conf 文件中,默认有 RDB 持久化配置:save 900 1 save 300 10 save 60 10000复制解释: 这些配置称为检查点。 每隔 900s,如果有至少 1 个 key发生了变更,就生成一个新的 dump.rdb 文件,这个 dump.rdb 文件就是 redis 内存中完整的数据快照,也叫做 snapshotting。 同上,每隔

    日期 2023-06-12 10:48:40     
  • Redis中scan命令实战

    Redis中scan命令实战

    1. 介绍#scan命令和作用和keys *的作用类似,主要用于查找redis中的键,但是在正式的生产环境中一般不会直接使用keys *这个命令,因为他会返回所有的键,如果键的数量很多会导致查询时间很长,进而导致服务器阻塞,所以需要scan来进行更细致的查找scan总共有这几种命令:scan、sscan、hscan、zscan,分别用于迭代数据库中的:数据库中所有键、集合键、哈希键、有序集合键,命

    日期 2023-06-12 10:48:40     
  • Redis实战9-全局唯一ID

    Redis实战9-全局唯一ID

    发布优惠券的时候,每个店铺都可以发布优惠券,当用户抢购的时候,优惠券表中的id如果使用数据库的自增长ID会存在以下问题:1:id的规律太明显,容易被刷2:当数据量很大的时候,会受到单表数据的限制缺点场景分析:id规律场景:如果我们的id具有太明显的规则,用户或者说商业对手很容易猜测出来我们的一些敏感信息,比如商城在一天时间内,卖出了多少单,这明显不合适。单表限制:随着我们商城规模越来越大,mysq

    日期 2023-06-12 10:48:40     
  • Redis实战11-实现优惠券秒杀下单

    Redis实战11-实现优惠券秒杀下单

    本篇,咱们来实现优惠券秒杀下单功能。通过本篇学习,我们将会有如下收获:1:优惠券领券业务逻辑;2:分析在高并发情况下,出现超卖问题产生的原因;3:解决超卖问题两种方案:版本号法及CAS法4:乐观锁弊端改进方案;本文涉及内容比较多,篇幅会比较长,同时有大量截图。希望大家能耐心看完。凯哥推荐:推荐:凯哥推荐文章好了,话不对说,咱们开始go go go~一:基本的秒杀实现下单时候需要判断:1:秒杀是否开

    日期 2023-06-12 10:48:40     
  • SpringBoot整合Redis实现分布式缓存、分布式锁等,实战分享!

    SpringBoot整合Redis实现分布式缓存、分布式锁等,实战分享!

    一、摘要在前几篇文章中,我们详细介绍了 redis 的一些功能特性以及主流的 java 客户端 api 使用方法。在当前流行的微服务以及分布式集群环境下,Redis 的使用场景可以说非常的广泛,能解决集群环境下系统中遇到的不少技术问题,在此列举几个使用 redis 经常用到的功能!分布式缓存:在分布式的集群架构中,将缓存存储在内存中会出现很多的问题,比如用户回话信息,因为这部分信息需要与其他机器共

    日期 2023-06-12 10:48:40     
  • Redis实战13-集群下线程并发安全问题

    Redis实战13-集群下线程并发安全问题

    通过前面两篇(Redis实战11-实现优惠券秒杀下单 Redis实战12-优惠券实现一人一单功能)的学习,我们已经解决了单机情况下优惠券秒杀及一人一单功能。其中,在优惠券秒杀时候,使用到了乐观锁处理的,在一人一单功能时候,使用了悲观锁,synchronized关键字及处理了spring事务失效情况。但是随着业务的增长,单机服务已经不能满足我们需求了,这个时候,需要多台机器来支撑。这就构成了集群,那

    日期 2023-06-12 10:48:40     
  • 基于Redission的分布式锁实战

    基于Redission的分布式锁实战

    一、为什么需要分布式锁 在系统中,当存在多个进程和线程可以改变某个共享数据时,就容易出现并发问题导致共享数据的不一致性。 单体系统:如果多个线程要访问共享资源的时候,我们通常线程间加锁的机制,在某一个时刻,只有一个线程可以对这个资源进行操作,其他线程需要等待锁的释放,Java中也有一些处理锁的机制,比如synchronized。 分布式系统:当某个资源可以被多个系统访问使用到的时候,为了保证

    日期 2023-06-12 10:48:40     
  • Redis优惠券秒杀企业实战

    Redis优惠券秒杀企业实战

    每个店铺都可以发布优惠券: 当用户抢购时,就会生成订单并保存到tb_voucher_order这张表中,而订单表如果使用数据库自增ID就存在一些问题: id的规律性太明显 受单表数据量的限制 所以tb_voucher_order表的主键不能用自增ID: create table tb_voucher_order ( id bigint not null comment 主键

    日期 2023-06-12 10:48:40     
  • redis lua脚本实战秒杀和减库存的实现

    redis lua脚本实战秒杀和减库存的实现

    我们都知道redis是高性能高并发系统必不可少的kv中间件,它以高性能,高并发著称,我们常常用它做缓存,将热点数据或者是万年不变的数据缓存到redis中,查询的时候直接查询redis,减轻db的压力,分布式系统中我们也会拿它来做分布式锁,分布式id,幂等来解决一些分布式问题,redis也支持lua脚本,而且能够保证lua脚本执行过程中原子性,这就使得它的应用场景很多,也很典型,在redisson这

    日期 2023-06-12 10:48:40     
  • Redis实战之百度首页新闻热榜的实现代码

    Redis实战之百度首页新闻热榜的实现代码

    新闻排行榜以热度为指标降序排序,这里假设热度就是评论数量且统计的热度时间范围以当天为准;根据新闻的时效性,这里假设每15分钟刷新一次新闻榜单。 分析 Zset数据类型:一个有序集合最多 个元素,集合元素有序不可重复,每个元素都会关联一个double类型的分数。元素根据分数从小到大的排序,分数可以重复。zscore命令可以对分数实现增量,且如果该Zset中没有该元素,则会创建该条数据。可以将

    日期 2023-06-12 10:48:40     
  • 基于redis实现世界杯排行榜功能项目实战

    基于redis实现世界杯排行榜功能项目实战

    小编先给大家推荐一个不错的微信公众号: 感兴趣的朋友可以关注小编的微信公众号【码农那点事儿】,更多网页制作特效源码及学习干货哦!!! 需求 前段时间,做了一个世界杯竞猜积分排行榜。对世界杯64场球赛胜负平进行猜测,猜对+1分,错误+0分,一人一场只能猜一次。 1.展示前一百名列表。 2.展示个人排名(如:张三,您当前的排名106579)。 分析 一开始打算直接使用mysql数据库来做

    日期 2023-06-12 10:48:40     
  • 一次关于Redis内存诡异增长的排查过程实战记录

    一次关于Redis内存诡异增长的排查过程实战记录

    内存一分钟增长2G.png 二、Redis内存分析 1. 内存组成 上图中的内存统计的是Redis的info memory命令中的used_memory属性,例如: redis infomemory#Memoryused_memory:9195978072used_memory_human:8.56Gused_memory_rss:9358786560used_memory_peak:

    日期 2023-06-12 10:48:40     
  • Redis实战:只为提高你的技术水平。(redis那本书好)

    Redis实战:只为提高你的技术水平。(redis那本书好)

    Redis实战:只为提高你的技术水平 近几年来,Redis作为一种灵活的内存键值对存储引擎,被众多应用广泛地使用,以为行业提供了极高的性能和可用性。它拥有着复杂的数据类型,包括字符串、哈希、列表、集合和有序集合。由于它拥有良好的特性,Redis得到了大量社区支持,以及信仰者的怀着。以上的说明介绍下,让我们开始看看怎样使用Redis来提高你的技术水平吧。 首先,Redis推荐使用客户端来操作,

    日期 2023-06-12 10:48:40     
  • Redis在项目中的实践经验(Redis在项目中实战)

    Redis在项目中的实践经验(Redis在项目中实战)

    现如今,Redis已经成为一种必不可少的缓存技术,在开发项目中有着重要的地位。本文将介绍在项目中实践Redis的经验。 Redis作为一种键值(key-value)数据库,拥有快速读写,可扩展,持久性和高可用性等优点,比其他数据库更加适用于高性能缓存场景,所以在开发项目中可以将Redis用作高效的缓存工具。 首先,在应用中搭建Redis实例是需要考虑的细节,比如支持的数据类型,支持的格式,安

    日期 2023-06-12 10:48:40     
  • Redis 实战第二版:掌握革新性缓存技术(redis实战第二版)

    Redis 实战第二版:掌握革新性缓存技术(redis实战第二版)

    Redis已经成为业界广受欢迎的高性能面向Key-Value存储的Nosql系统。Redis 不仅可以用作缓存,还可以用于排序、队列、日志记录和数据交换等。所有这些都是Redis的一些基本的功能①。 Redis实战第二版正是为了满足用户对革新性缓存技术应用的需求而制作的。它具有以下几个最大的优势: 首先,它介绍了Redis常见的企业应用模式,解决了如何将其用于现实世界在应用中的问题;其次,

    日期 2023-06-12 10:48:40     
  • Redis开发实战:精通全流程(redis具体开发流程)

    Redis开发实战:精通全流程(redis具体开发流程)

    Redis可以说是目前数据库领域最具发展潜力的开源软件之一,在企业数据库中拥有较大应用范围,可以实现快速高效读写和持久化处理,且其开发过程简单,性能强劲。学习了Redis,我们可以为企业中的系统开发提供更好的支持。 因此,下面就以Redis实战为主,来简单介绍一下开发的全部流程。 首先,我们需要合理安装Redis,通过一些配置文件来启动Redis服务,这样我们就可以使用它来实现自己所需要的功

    日期 2023-06-12 10:48:40     
  • Redis多机部署实战,助您打造万象数据库(redis多实例)

    Redis多机部署实战,助您打造万象数据库(redis多实例)

    随着互联网发展的日益多样化,数据库的使用也逐渐发展出来,如redis、mongodb、Hbase等,为了解决单机处理数据量的瓶颈,很多互联网公司开始在部署多台机器,采用redis的多机部署将数据分散到多台机器上,从而有效的满足数据量的需求。那么,如何才能够部署redis多机?下面就让我们一起来实践一下: 1.下载并安装Redis:首先,我们需要从官方网站上下载Redis,将其安装出来,以供按照

    日期 2023-06-12 10:48:40     
  • 监控Redis连接池的实战经验(redis连接池监控)

    监控Redis连接池的实战经验(redis连接池监控)

    监控Redis连接池的实战经验 Redis连接池是在应用中Redis集群连接和管理的一种解决方案,提高了Redis连接和管理的灵活性和性能,可以极大程度地改善服务器延迟和redis使用体验。使用Redis连接池监控应用有许多经验,以下是我学习和实践过程中总结出来的一些经验: 一、引入Redis连接池 首先,要根据项目需要选择合适的连接池,对于Redis,可以考虑引入Jedis,而且使用它,

    日期 2023-06-12 10:48:40     
  • Redis实战:从实例学习如何提高性能(redis例子)

    Redis实战:从实例学习如何提高性能(redis例子)

    Redis是目前非常流行的一个基于内存的NoSQL数据库,它能够取代常规的MySQL数据库,为应用程序提供高性能访问数据。为了达到最高性能,使用Redis之前,我们必须对性能优化做出一些实践。这里介绍了几种方法,来帮助提高Redis的性能。 首先,使用连接池技术。在我们的应用中,使用Redis连接池会得到更高的性能表现。例如,与直接从Redis实例创建连接相比,使用连接池可以提高多线程操作的效

    日期 2023-06-12 10:48:40     
  • 优化:Redis缓存配置实战(redis缓存配置)

    优化:Redis缓存配置实战(redis缓存配置)

    随着网络及数据处理技术的发展,网站程序被要求呈现更高的性能以满足用户体验,而这正离不开对系统的优化,现在的一个热点技术就是基于Redis的缓存配置实践,它使用高效的数据结构,如字符串、列表、散列、集合和有序集合,在应用中储存数据,以实现异步调用和缓解数据库的压力,以达到优化系统性能的目的。 首先,确定缓存需求,也就是确定数据处理哪些部分才需要缓存,一般来说,只需要缓存不经常改变的部分和频繁但数

    日期 2023-06-12 10:48:40     
  • 实战Redis开发实战:实现高效的分布式缓存(credis开发)

    实战Redis开发实战:实现高效的分布式缓存(credis开发)

    随着互联网行业的发展,用户对网站服务的要求越来越高,为提高网站响应速度和满足用户的需求,需要实现高效的缓存系统,目前在实现分布式缓存方面,Redis已经成为一种被广泛使用的键值存储系统。 首先,我们可以在redis中设置不同的key-value对,这样就实现了高效的缓存数据,而且它设计得够高效,能够轻松地处理海量数据,可以非常有效地访问数据。另外,Redis支持多种数据结构,比如哈希表,链表,

    日期 2023-06-12 10:48:40     
  • 利用Redis实现快速可靠的应用程序部署(redis实战应用)

    利用Redis实现快速可靠的应用程序部署(redis实战应用)

    随着软件系统规模的不断扩大,单台服务器的性能无法满足巨大的应用需求,所以需求采用分布式技术来支撑应用部署。分布式技术有许多不同的数据存储技术供我们使用,这其中包括MySQL,MongoDB等等。但是,对于实现快速可靠的应用程序部署,Redis是一个更优的选择。 Redis是一个开源的内存数据库,可提供快速的读取与编写操作,具备持久性能。它具有许多优点:首先,它的速度极快,由于Redis是基于内

    日期 2023-06-12 10:48:40     
  • Redis实战案例:基于Redis 5 的 Redis cluster

    Redis实战案例:基于Redis 5 的 Redis cluster

    实战案例:基于Redis 5 的 redis cluster 部署 官方文档:https://redis.io/topics/cluster-tutorial redis cluster 相关命令 [root@redis-node1 ~]# redis-cli --cluster help Cluster Manager Commands: create host1:port1 ...

    日期 2023-06-12 10:48:40     
  • Redis实战案例:基于Redis 4 的 Redis Cluster

    Redis实战案例:基于Redis 4 的 Redis Cluster

    每个redis 节点采用相同的硬件配置、相同的密码、相同的redis版本 所有redis服务器必须没有任何数据 先启动为单机redis且没有任何key value 准备三台CentOS 7 主机,已编译安装好redis,各启动两个redis实例,分别使用6379和6380端口,从而模拟实现6台redis实例 10.0.0.7:6379|6380 10.0.0.17:6379|6380

    日期 2023-06-12 10:48:40     
  • 揭秘Redis:多服务器配置实战(redis多服务器配置)

    揭秘Redis:多服务器配置实战(redis多服务器配置)

    Redis是一种开源的使用ANSI C语言编写、支持网络、可基于内存的键值数据存储系统,可用于实现缓存、持久存储、消息传递等功能,是现在应用非常广泛的一种高性能数据存储解决方案。 Redis支持多种数据类型,可在其中存储键值对、字符串、哈希视图和数组等多种数据结构,非常适合做缓存、Web静态内容或键值存储等操作。 针对数据存储场景,Redis有一些非常实用的特性,比如支持master/sla

    日期 2023-06-12 10:48:40     
  • Redis配置文件解析:实战指南(redis配置文件详解)

    Redis配置文件解析:实战指南(redis配置文件详解)

    Redis是一种快速和可扩展的存储层,它可以灵活地配置,以满足各种类型应用程序的需求。Redis的功能强大之处在于,它可以通过一个可扩展的配置文件控制其行为。解析Redis配置文件有助于更好地理解存储层行为,并在实现关键业务流程时发挥出最大的作用。 首先介绍一下什么是Redis配置文件。配置文件是Redis的一种可扩展性的组成部分,它定义了Redis的行为、语法和语义。 该文件位于安装Redis

    日期 2023-06-12 10:48:40     
  • 基于Redis集群的消息队列服务实战(redis集群 消息队列)

    基于Redis集群的消息队列服务实战(redis集群 消息队列)

    消息队列(Message Queue,简称MQ)是在分布式系统中应用比较广泛的一种解决方案,它可以缓冲应用间不可预测的差异化负荷,提高系统性能以及可用性,是构建高可用应用程序的基础设施。本文将介绍基于Redis实现消息队列服务的实战,以及在线上应用的一些选型考虑。 一、Redis的消息队列服务实战 Redis是一款高性能的Key-Value数据库,最典型的应用场景可以用来当做缓存,但它也可以

    日期 2023-06-12 10:48:40     
  • Redis从异常到恢复:一个实战的故事(redis异常恢复)

    Redis从异常到恢复:一个实战的故事(redis异常恢复)

    Redis作为一款基于内存的键值存储系统,可以为我们构建高性能的Web应用提供良好的支持。在一次不幸的实践开发过程中,出现了redis异常,系统无法正常使用,信息没有及时清理,导致了数据丢失等各种潜在问题,我们必须尽快完成redis异常到恢复的整个过程: 首先,我们需要查看redis日志,以找出引起异常的原因。我们可以使用以下命令查看redis日志: $ grep --color "erro

    日期 2023-06-12 10:48:40     
  • Redis锁注解应用实战如何添加有效的分布式锁(怎么加redis锁的注解)

    Redis锁注解应用实战如何添加有效的分布式锁(怎么加redis锁的注解)

    Redis锁是一种分布式锁系统,可以帮助我们管理分布式系统中的并发访问。它可以帮助我们实现分布式环境中的线程安全,同时也可以避免竞态条件和部分无效更新(dirty write)问题。它可以帮助我们更好地管理分布式系统中的资源访问,从而提升系统的安全性和可靠性。 Redis锁也有一种特殊的应用,即注解模式。注解模式可以帮助我们实现在Java开发项目中自动锁定某些流程,类似于代码设置某些事物,而无

    日期 2023-06-12 10:48:40