读多写多的服务中,实时交互类服务非常多,对数据的实时性要求也很高,用集中型缓存很难满足服务所需。为此,行业里多数会通过服务内存数据来提供实时交互服务,但这么做维护起来十分麻烦,重启后需要恢复数据。为了实现业务逻辑无重启的更新,行业里通常会使用内嵌脚本的热更新方案。 常见的通用脚本引擎是 lua,这是一个十分流行且方便的脚本引擎,在行业中,很多知名游戏及服务都使用 lua 来实现高性能服务的定制化业务功能,比如 Nginx、Redis 等。 把 lua 和我们的定制化缓存服务结合起来,即可制作出很多强大的功能来应对不同的场景。由于 lua 十分节省内存,我们在进程中开启成千上万的 lua 小线程,甚至一个用户一个 LState 线程对客户端提供状态机一样的服务。 用上面的方法,再结合 lua 和静态语言交换数据相互调用,并配合上我们的任务管理以及各种数据驱动,就能完成一个几乎万能的缓存服务
相关推荐
忧郁的Mr.Li12 分钟前
SpringBoot中实现多数据源配置暮色妖娆丶1 小时前
SpringBoot 启动流程源码分析 ~ 它其实不复杂Coder_Boy_1 小时前
Deeplearning4j+ Spring Boot 电商用户复购预测案例中相关概念Java后端的Ai之路1 小时前
【Spring全家桶】-一文弄懂Spring Cloud Gateway野犬寒鸦1 小时前
从零起步学习并发编程 || 第七章:ThreadLocal深层解析及常见问题解决方案Honmaple2 小时前
OpenClaw 实战经验总结golang学习记3 小时前
Go 嵌入结构体方法访问全解析:从基础到进阶陷阱NAGNIP3 小时前
程序员效率翻倍的快捷键大全!qq_256247053 小时前
从“人工智障”到“神经网络”:一口气看懂 AI 的核心原理无心水3 小时前
分布式定时任务与SELECT FOR UPDATE:从致命陷阱到优雅解决方案(实战案例+架构演进)