读多写多的服务中,实时交互类服务非常多,对数据的实时性要求也很高,用集中型缓存很难满足服务所需。为此,行业里多数会通过服务内存数据来提供实时交互服务,但这么做维护起来十分麻烦,重启后需要恢复数据。为了实现业务逻辑无重启的更新,行业里通常会使用内嵌脚本的热更新方案。 常见的通用脚本引擎是 lua,这是一个十分流行且方便的脚本引擎,在行业中,很多知名游戏及服务都使用 lua 来实现高性能服务的定制化业务功能,比如 Nginx、Redis 等。 把 lua 和我们的定制化缓存服务结合起来,即可制作出很多强大的功能来应对不同的场景。由于 lua 十分节省内存,我们在进程中开启成千上万的 lua 小线程,甚至一个用户一个 LState 线程对客户端提供状态机一样的服务。 用上面的方法,再结合 lua 和静态语言交换数据相互调用,并配合上我们的任务管理以及各种数据驱动,就能完成一个几乎万能的缓存服务
相关推荐
好家伙VCC14 分钟前
区块链双向支付通道实战:从签名到结算我登哥MVP1 小时前
Spring Boot 从“会用”到“精通”:参数解析原理JustHappy1 小时前
古法编程秘籍(五):什么是进程和线程?从软件到 CPU 的一次完整旅程BLSxiaopanlaile2 小时前
关于常见 map的一些比较探究花大师2 小时前
基于深度学习的鼠标轨迹真实性检测系统小江的记录本2 小时前
【Spring全家桶】Spring Cloud 2023.0.x:微服务核心理论、CAP/BASE定理(附《思维导图》+《面试高频考点清单》)我登哥MVP3 小时前
Spring Boot 从“会用”到“精通”:Model-Map原理㳺三才人子3 小时前
初探 Flask-WTF