-
Redis是一个高性能的key-value存储系统,常用于缓存、数据库、消息队列等场景。在消息队列领域中,Redis提供了pub/sub机制来实现发布与订阅模式。本文将介绍Redis的pub/sub机制以及如何使用Redis实现消息队列。一、Redis的pub/sub机制Redis的pub/sub机制是一种典型的发布与订阅模式。它基于channel来实现消息
-
以前在使用Redis的时候,只是简单地使用它提供的基本数据类型和接口,并没有深入研究它底层的数据结构。最近打算重新学习梳理一下Redis方面的知识,所以打算从介绍Redis的基本类型及其数据
-
jedis就是基于java语言的redis客户端,集成了redis的命令操作,提供了连接池管理。
jedis连接池
预先生成一批jedis连接对象放入连接池中,当需要对redis进行操作时从连接池中借用jedis对象,操作完
-
按理来说这个系统因为受众很小,可以说基本上没并发,业务也没很复杂,但就是这么一个系统,连续2次出现数据库宕机,而导致系统无法正常运行。因为这几次事故,业务部门负责人组织这
-
分布式系统中必备的一个中间件就是消息队列,通过消息队列我们能对服务间进行异步解耦、流量消峰、实现最终一致性。
目前市面上已经有 RabbitMQ、RochetMQ、ActiveMQ、Kafka 等,有人会问
-
在具体描述这几种数据类型之前,我们先通过一张图了解下 Redis 内部内存管理中是如何描述这些不同数据类型的:
首先Redis内部使用一个redisObject对象来表示所有的key和value,redisObject最主要的信
-
缓存问题
1. 缓存穿透---查不到
缓存穿透是指用户想查询一个数据,发现Redis中没有,也就是缓存没有命中,就向持久性数据库发起查询,发现数据库也没有这个数据,于是查询失败了。
当用户
-
在很多场景中,我们为了保证数据的最终一致性,需要很多的技术方案来支持,比如分布式事务、分布式锁等。
有很多基于Redis实现的分布式锁方案或者库,但是有些库并没有解决分布式环境下
-
本文转载自微信公众号「小林coding」,作者小林coding。转载本文请联系小林coding公众号。大家好,我是小林。前几天发了一篇「为了拿捏 Redis 数据结构,我画了 20 张图」,收获了很多好
-
随着互联网技术的飞速发展和应用场景的不断扩大,分布式系统已经成为了当今互联网领域中的重要组成部分。作为分布式系统中常用的缓存数据库,Redis通过其高效、可靠的特性,受到了越来越多开发者和企业的青睞。但是,对于一个分布式系统而言,安全与隐私保护同样是必不可少的,本文将在此背景下探讨Redis的安全与隐私保护策略。Redis的安全威胁在分布式系统中,安全问题一
-
1. 什么是分布式锁
当我们在编写多线程代码的时候,不同的线程可能会发生资源的争夺,为了避免资源争夺造成的错误,我们会对资源上锁,只有获得锁的线程才能继续往下执行。
进程中的锁
-
Redis是一款开源的键值对存储数据库,能够支持多种数据结构,并且具有高性能和高可用性。在高并发场景下,Redis的性能优化策略显得格外重要。本文将介绍一些Redis在高并发场景下的性能优化策略。一、Redis内置命令的优化Redis内置命令是使用最为频繁的操作,优化Redis内置命令的执行效率是提高Redis性能的重要手段之一。1.选用合适的数据类型Red
-
概述简介RedisGeospatial是Redis3.2版本新增的数据类型,主要用于存储地理位置信息,并对存储的信息进行操作。在日常生活中,我们越来越依赖搜索“附近的餐馆”、在打车软件上叫车,这些都离不开基于位置信息服务(Location-BasedService,LBS)的应用。LBS应用访问的数据是和人或物关联的一组经纬度信息,而且要能查询相邻的经纬度范围,GEO就非常适合应用在LBS服务的场景中。内部实现GEO本身并没有设计新的底层数据结构,而是直接使用了SortedSet集合类型。GEO类型使用G
-
写在前面
一般来说,REDIS部署有三种模式。
单实例模式,一般用于测试环境。哨兵模式集群模式
后两者用于生产部署
哨兵模式
在redis3.0以前,要实现集群一般是借助哨兵sentinel工具来监控master
-
将 StringRedisTemplate 封装成一个缓存工具类,方便以后重复使用。
1. 方法要求
在这个工具类中我们完成四个方法:
方法①:将任意Java对象序列化为json并存储在string类型的key中,并且可以设置TTL