lua redis
- 使用过 Redis 做异步队列么,你是怎么用的?
-
我使用过Redis做异步队列,并且在不同的场景下采用过不同的方式。Redis因其高性能、易用性和丰富的数据结构,非常适合作为异步队列的解决方案。以下是我使用Redis做异步队列的一些常见方式和经验:1.基于List数据结构的简单队列(最常用)这是最简单也是最常用的方式,利用Re...
- Nginx/OpenResty详解,Nginx Lua编程,重定向与内部子请求
-
重定向与内部子请求Nginx的rewrite指令不仅可以在Nginx内部的server、location之间进行跳转,还可以进行外部链接的重定向。通过ngx_lua模块的Lua函数除了能实现Nginx的rewrite指令的功能之外,还能顺利完成内部子请求、并发子请求等复杂功能。实战案例运行准备:本节...
- 终于靠这篇文章学透了Nginx/OpenResty详解,NginxLua编程
-
NginxLua编程经过合理配置,Nginx毫无疑问是高性能Web服务器很好的选择。除此之外,Nginx还具备可编程能力,理论上可以使用Nginx的扩展组件ngx_lua开发各种复杂的动态应用。不过,由于Lua是一种脚本动态语言,因此不太适合做复杂业务逻辑的程序开发。但是,在高并发场景下,Ngin...
- 为什么Lua脚本可以保证原子性?(lua脚本可以用来干什么)
-
前言:原子性在并发编程中,和在数据库中是两种不同的概念。但是都是有着相似的核心思想,即确保操作的不可分割性。Lua保证原子性在数据库中,事务的ACID中原子性指的是“要么都执行要么都回滚”。在并发编程中,原子性指的是“操作不可拆分、不被中断"。Redis既是一个数据库,又是一个支持并发编程的系统,所...
- 订单转手 redis与lua结合实现订单转手功能#编程
-
今天给大家分享redis和Lua脚本整合,实现订单转手功能。这边有一个接口,有三个入餐,一个是订单ID,还有一个是当前的拥有者,还有个是新的拥有者。这边有一个Lua脚本。·首先有一个订单的key,然后有当前的拥有者ID和新的拥有者ID,分别是一个数组给它传过来的。·首先获得到当前的一个拥有者,如果当...
- 主从架构&lua脚本-Redis(四)(redis主从模式主挂掉)
-
上篇文章介绍了rdb、aof持久化。一、redis数据备份策略1、写job每小时copy一份到其他目录。2、目录里可以保留最近一个月数据。3、把目录日志保存到其他服务器,防止机器损坏。二、主从复制第一步:复制一份redis.conf第二步:将相关配置修改如下Port6380#把pid进程号写入p...
- 聊聊 Redis Lua 脚本模式 #程序员日常
-
今天我们来聊聊Redis的Lua脚本模式。官方文档中提到,Lua脚本是另一种形式的事务,可以利用Lua胶水语言的特性实现复杂的功能。在Java领域,redisson是一款非常优秀的Java客户端,其中分布式锁、延迟队列、布隆过滤器等功能都采用了Lua脚本。在实际业务中,我们常常利用Lua脚本实现抢红...
- Nginx+Lua+Redis实现高性能缓存数据读取
-
引子前些日子,入手了本开涛写的《亿级流量网站架构核心技术》,里面提到nginx+lua相结合开发高并发、高负载下的服务,看着手痒就立个task,有时间尝试一翻,随手也把操作步骤记录下来,有兴趣的朋友也可以试试。不采用lua之前,我们从redis获取数据的路径与采用lua之后获取数据的路径对比,明显可...
- 高并发秒杀场景下,基于Redis、LUA防止商品超卖
-
关联阅读秒杀场景设计的总结简单列一下分布式高并发要做的事情与超卖问题对应的是商品热Key的解决方案:高并发下热Key解决方案总结基于SpringBoot和ZK的热Key解决方案的代码实现高并发情况下,库存扣减、查询等操作就不要考虑用数据库了,Redis是比较常用的解决方案,主要是基于Redi...
- Redis+Lua脚本实现接口限流:深入实践与自动过期机制
-
引言在现代分布式系统中,接口限流是一项至关重要的性能优化策略。通过限制一定时间窗口内的请求频率,可以有效保护后端服务免受过载冲击,保持系统的稳定性和响应速度。Redis因其高性能和丰富的数据结构特性,成为了实现限流功能的理想选择。结合Lua脚本,我们可以实现原子性的限流操作,并为存储的限流状态设置过...