分布式redis setnx lua
6.Redis,一站式高性能存储方案
1.Redis入门 Redis是一款基于键值对的NoSQL数据库,它的值支持多种数据结构: 字符串(strings)、哈希(hashes)、列表(lists)、集合(sets)、有序集合(sorted sets)等。 Redis将所有的数据都存放在内存中,所以它的读写性能十分惊人。 同时,Redis ......
Redis进阶:Lua初尝试
Lua是一门脚本语言,可以编写Lua脚本到Redis中执行 【使用Lua脚本的优点】 1.减少网络开销。Redis每条命令都需要进行网络传输,特别是命令条数很多的情况。 2.原子操作。脚本都会作为一个整体执行,中间不会有其他命令插入。 3.复用。会永远存储在Redis中 比较类似Sql里面的存储过程 ......
记录一次内存泄漏情况(lua和c#交互导致)
c#和lua的两边的GC无法同步进行导致的资源无法被释放 (C#和lua都是基于延迟清理的思路实现的GC算法,中间层(ObjectTranslator)的逻辑缓存了C#的引用)。 解决方法 在C#触发GC的时候,调用一次Lua的GC。让两边的GC同步。GC.RegisterForFullGCNoti ......
【转载】Springboot2.x 使用 Redis
参考 https://blog.csdn.net/weixin_43749805/article/details/131399516 https://juejin.cn/post/7076244567569203208 https://blog.csdn.net/oJingZhiYuan12/art ......
redis模糊删除
客户端连接redis, 查看数据 退出 执行exit,退出客户端 执行删除命令(利用xargs 命令) redis-cli -a password keys "key*" | xargs redis-cli -a password del password为密码 keys "key*" 即为模糊删除 ......
销售点分布调查
题目描述 终端部门按层级管理销售负责人,即:销售总裁直接对接公司分布在若干个国家的销售负责人,每个国家的销售负责人对接本国各大区负责人,大区负责人对接本区内各省负责人,各省负责人对接本省各市负责人等等…… 这里假设每个级别的负责人都仅向唯一的上级领导汇报。 假设共有N(N<100)位销售负责人,每人 ......
SpringBoot集成Redis
一、单体模式 1、引入依赖 <!-- 引入 redis 依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </ ......
Lua
一、Redis中为什么要使用Lua 1、Redis 运行机制 单线程,难保证原子性 多客户端请求,进入redis内置队列,执行之后与预期有偏差 可将请求打包,使用redis事务 事务增加代码复杂度 2、Lua如何解决该问题 Lua不是顺序发送单条命令 而是将多个命令组合成一个Lua脚本发送,故多个命 ......
分布式锁
一、为什么使用分布式锁 保障集群服务的一致性 二、Redis 分布式锁实现 1、Java客户端现有问题 在程序运行结束和释放锁的两步操作中会存在时间窗口,可能存在线程不安全问题 2、使用Lua脚本实现 -- 目标:获取缓存值,如值与预期相等,则释放分布式锁 -- Lua 内置了一个 redis 对象 ......
Docker安装Redis
一、拉取镜像 docker pull redis docker 二、运行Redis docker run --name myredis -p 6379:6379 -d redis 三、连接Redis-cli docker exec -it java_redis redis-cli ......
Redis Cluster 架构
一、架构类型 1、单机架构 2、分布式架构 二、Redis Cluster 架构 节点 集群模式:cluster-enable:yes meet 所有节点共享消息 指派槽 复制 1、Redis Cluster特性 主从复制 高可用 分片 三、集群伸缩 1、原理 集群伸缩实际上是哈希槽和数据移动的过程 ......
分布式架构的演变过程
1. 单应用架构 此时用户量很少,所有功能全部都在一个应用中,应用和数据库部署在一台机器上。 2. 应用服务器和数据库服务器分离 随着系统访问量的再度增加,webserver机器的压力在高峰期会上升到比较高,这个时候开始考虑增加一台服务器,将数据库分离出去。 3. 应用服务器集群 突然有一天,发现系 ......
浅谈分布式事务
事务: 事务是指由一组操作组成的一个工作单元,这个工作单元具有原子性(atomicity)、一致性(consistency)、隔离性(isolation)和持久性(durability)。 原子性:执行单元中的操作要么全部执行成功,要么全部失败。如果有一部分成功一部分失败那么成功的操作要全部回滚到执 ......
数据库的历史-分布式数据库
数据库的历史-分布式数据库 分布式数据库 数据库承载的东西越来越多. 很容易进就超过了单机能够存放的极限. 并且就算没超过单机存放的极限, 插入/查询的性能也是无法保证的. 解决单机解决不了的问题, 其实就是scale-up 和 scale-out 之争 小型机,大型机就是典型的scale-up的方 ......
redis面试题
出自黑马程序员 https://www.bilibili.com/video/BV1yT411H7YK?p=9&vd_source=5435760e0ac9ec39ec5c78b22a75c88f CAP理论 https://baijiahao.baidu.com/s?id=168769730238 ......
SpringBoot集成Redis
SpringBoot集成Redis需要的配置 RedisTemplate <?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3 ......
redis实践经验总结
Redis内存配置 当Redis内存不足时,可能导致Key频繁被删除、响应时间变长、QPS不稳定等问题。当内存使用率达到80%以上时就需要我们警惕,并快速定位到内存占用的原因。 一般来说,会有以下几种占用内存的情况: 数据内存 是Redis最主要的部分,存储Redis的键值信息。主要问题是BigKe ......
zabbix分布式proxy
1.为什么要学zabbix-proxy https://www.zabbix.com/documentation/4.0/zh/manual/distributed_monitoring/proxies zabbix除了前面于超老师讲解的 zabbix-server / zabbix-agent模式 ......
redis中的hash tag
在集群模式下,如果lua脚本同时操作多个key,可能会出现:CROSSSLOT Keys in request don't hash to the same slot的错误。 这种情况下,可以通过{...},来指定多个key使用相同的内容进行hash,例如:user:{123}:username和u ......
P2P网络下分布式文件共享场景的测试
P2P网络介绍 P2P是Peer-to-Peer的缩写,“Peer”在英语里有“对等者、伙伴、对端”的意义。因此,从字面意思来看,P2P可以理解为对等网络。国内一些媒体将P2P翻译成“点对点”或者“端对端”,学术界则统一称为对等网络(Peer-to-Peer networking)或对等计算(Pee ......
nginx+lua+redis实现灰度发布
授人以鱼不如授人以渔.先学会用,在学原理,在学创造,可能一辈子用不到这种能力,但是不能不具备这种能力。这篇文章主要是沉淀使用nginx+lua+redis实现灰度,当我们具备了这种能力,随时可以基于这种能力和思想调整实现方案:比如nginx+lua+(其他数据源)、nginx+(其他脚本语言) ......
redis 基本使用
1.原理 单线程多路复用 2.存储数据类型 3.持久化 4.锁 5.发布订阅 6.事务 7.布隆过滤器 布谷鸟 8.主从 哨兵 9.sharding 分片引入 10.集群 11. 击穿 穿透 雪崩 12.spirng 中使用 高低阶API ......
第三章 分布式配置中心
1. 简介 为什么需要分布式配置中心 分布式配置中心是为了解决在分布式系统中进行配置管理的需求而引入的。在传统的单体应用中,通常使用配置文件集中管理系统的配置信息。然而,在分布式系统中,由于系统规模变大、节点众多,并且可能部署在不同的服务器上,传统的配置文件方式会面临一些挑战。 首先,配置文件的修改 ......
Redis-缓存一致性问题
要想保证缓存和数据库「实时」一致 当数据发生更新时,我们不仅要操作数据库,还要一并操作缓存,数据库和缓存都更新,又存在先后问题,那对应的方案就有 2 个: 先更新缓存,后更新数据库 先更新数据库,后更新缓存 先不考虑并发问题,正常情况下,无论谁先谁后,都可以让两者保持一致,但现在我们需要重点考虑「异 ......
redis系列--redis单机
Redis是单线程吗? Redis的单线程主要是指Redis的网络IO和键值对读写都是由一个线程来完成的,这也是Redis对外提供键值存储服务的主要流程。但redis的其他功能,比如持久化,异步删除,集群数据同步等,其实是由额外的线程执行的。 Redis单线程为什么还能这么快? 因为它所有的数据都在 ......
Docker Compose 快速搭建 Redis 单机版
Redis 是非常流行的缓存中间件,其具有功能强大和部署简单的优势,我们在 CentOS 上使用 yum 就能够在线安装 Redis。之所以要介绍使用 Docker 进行容器化部署 Redis ,主要原因是当前容器化部署是主流,而且能够保障服务器文件系统的整洁。 本篇博客主要介绍如何使用 docke ......
使用分布式锁实现定时任务的精确调度
使用分布式锁实现定时任务的精确调度 在分布式系统中,实现定时任务的精确调度是一项具有挑战性的任务。由于分布式环境中存在多个节点,传统的定时任务可能会出现并发执行、重复执行或者错过执行的问题。为了解决这些问题,我们可以使用分布式锁来实现定时任务的精确调度。 准备工作 在开始之前,我们需要准备以下环境和 ......
推荐一款Redis可视化工具:ARDM
还是那句话:出众的软件有很多,适合自己的才是最好的。 Another Redis Desktop Manager 🚀🚀🚀 更快、更好、更稳定的Redis桌面(GUI)管理客户端,兼容Windows、Mac、Linux,性能出众,轻松加载海量键值 🇨🇳Windows •可以在github 或 ......
Redis不同版本,内存分配,硬件的性能研究
Redis不同版本,内存分配,硬件的性能研究 前言 Konw more ! Do more ! Gain more ! 骨折之后开始减肥. 前段时间跳绳导致膝盖不舒服,现在改骑车和走路. 在有限的没人有烦的时间里,还是想能够多学习一些东西. 之前了解了 isolcpus 现在突然想内存分配可能也有性 ......