草庐IT

Redis_Proxy

全部标签

Docker-compose 安装 redis

1.创建目录,赋予权限mkdir-p/usr/local/redis/data/usr/local/redis/logs/usr/local/redis/confchmod-R777/usr/local/redis/data*chmod-R777/usr/local/redis/logs*2.创建redis.conf文件2.1创建文件cd/usr/local/redis/confvimredis.conf这里需要修改requirepass,也就是你的密码。2.2复制如下内容进入文件并保存#Redisconfigurationfileexample.##Notethatinordertoread

Lua+Redis:分布式锁解决方案分享

介绍当我们涉及到多进程或多节点的分布式系统时,传统的单机锁机制不再足够应对并发控制的需求。这是因为在分布式环境中,多个进程或节点同时访问共享资源,传统锁无法有效地协调这种复杂的并发情况,这就引入了分布式锁,本文将一步一步引导大家使用lua脚本和redis实现分布式锁。理解分布式锁1、什么是分布式锁?分布式锁的是确保在多个进程或多个节点之间对共享资源的访问是有序、互斥和原子的,以避免竞态条件和数据不一致性问题。在多进程或多节点环境中,分布式锁广泛应用于协调共享资源的安全访问。2、Redis作为分布式锁的选择Redis(RemoteDictionaryServer)是一种高性能的开源内存数据库,因

nginx proxy_pass to to Elb具有可变

我正在尝试为NGINX设置一个代理规则,该规则将击中某些节点盒前面的内部负载显示器。我想在地址中使用一个变量来迫使其解决,因为地址在AWS中的动态程度。原始设置运行良好,但偶尔指出的地址不再存在,该地址会像预期的那样引起间歇性问题:location/protected/{proxy_passhttp://my-internal-aws-loadbalancer.com:8083/protected/;}但是,当我碰到同一路线时,这会产生404的错误:location/protected/{set$node"my-internal-aws-loadbalancer";proxy_passhttp

redis实战-redis实现好友关注&消息推送

关注和取消关注在查看笔记详情时,会自动发送请求,调用接口来检查当前用户是否已经关注了笔记作者,我们要实现这两个接口需求:基于该表数据结构,实现两个接口:关注和取关接口判断是否关注的接口 关注是User之间的关系,是博主与粉丝的关系,数据库中有一张tb_follow表来标识,我们要将用户与博主关联起来,只需要向这张表插入数据即可,需要将主键设为自增加,降低开发难度  FollowController//关注@PutMapping("/{id}/{isFollow}")publicResultfollow(@PathVariable("id")LongfollowUserId,@PathVaria

即时通讯系统为什么选择GaussDB(for Redis)?

摘要:如果你需要一款稳定可靠的高性能企业级KV数据库,不妨试试GaussDB(forRedis)。每当网络上爆出热点新闻,混迹于各个社交媒体的小伙伴们全都开启了讨论模式。一条消息的产生是如何在群聊中传递的呢?让我们一起来探索即时通讯系统(IM)的原理。IM系统架构的原理当你在群聊“相亲相爱一家人”中,发送了一条“我找到女朋友了,今天带回家吃饭”,你自然是希望全家人都收到你的喜讯,为你女朋友的到来分头准备。那么正常的流程应该是这样:遍历群成员、查询每个成员的在线状态、如果小伙伴们在线则实时进行推送,如果小伙伴们不在线则暂存至离线库待上线后主动拉取。这种模式就是传统的IM架构,由于发送成功的消息不

Redis原理(一):Redis数据结构(上)

文章目录1、Redis数据结构-动态字符串2、Redis数据结构-intset3、Redis数据结构-Dict4、Redis数据结构-ZipList5、Redis数据结构-ZipList的连锁更新问题6、Redis数据结构-QuickList1、Redis数据结构-动态字符串我们都知道Redis中保存的Key是字符串,value往往是字符串或者字符串的集合。可见字符串是Redis中最常用的一种数据结构。不过Redis没有直接使用C语言中的字符串,因为C语言字符串存在很多问题:获取字符串长度的需要通过运算非二进制安全不可修改Redis构建了一种新的字符串结构,称为简单动态字符串(SimpleDy

关于redis使用Jackson2JsonRedisSerializer序列化,反序列化时权限模块报错的问题

报错内容:Causedby:com.fasterxml.jackson.databind.exc.MismatchedInputException:Cannotdeserializevalueoftype`org.springframework.security.core.authority.SimpleGrantedAuthority`fromArrayvalue(token`JsonToken.START_ARRAY`)redis里存的对应的json格式:"authorities":["java.util.ArrayList",[["org.springframework.security

Docker 启动Redis

dockerrun\-d\-p6379:6379\--nameredis\-v/home/cgt/redis/data:/data\-v/home/cgt/redis/redis.conf:/etc/redis.conf\redis:7.0redis-server/etc/redis.conf两个数据卷分别挂载持久化数据和配置;挂载配置文件后需要告诉redis用指定配置文件运行,所以在命令最后加上了redis-server/etc/redis.conf。文章最后附redis的默认配置文件。修改配置文件redis.conf修改以下配置,以允许外部连接redis,本地练习的忽略。vim redis

Redis未授权访问漏洞复现与利用

目录一、漏洞简介及危害1.1什么是redis未授权访问1.2漏洞的危害:1.3漏洞影响:二、漏洞复现:三、未授权访问漏洞测试3.1利用redis写webshell3.2利用"公私钥"认证获取root权限3.3利用crontab反弹shell四、脚本自动化测试五、解决方案一、漏洞简介及危害1.1什么是redis未授权访问Redis默认情况下,会绑定在 0.0.0.0:6379,如果没有进行采用相关的策略,比如添加防火墙规则避免其他非信任来源ip访问等,这样将会将Redis服务暴露到公网上,如果在没有设置密码认证(一般为空)的情况下,会导致任意用户在可以访问目标服务器的情况下未授权访问Redis以

sprringboot3整合springsecurity6.0(只做token权限验证)+redis+自定义权限验证+自定义操作日志

1.引入pom.xmldependency>groupId>org.springframework.bootgroupId>artifactId>spring-boot-starter-securityartifactId>dependency>dependency>groupId>org.springframework.bootgroupId>artifactId>spring-boot-starter-data-redisartifactId>dependency>2.RedisConfig@ConfigurationpublicclassRedisConfig{/****redis序列化