10 hours ago
- Lua脚本是Redis最成功的特性,它支持可编程且快速的脚本,这些脚本被缓存并使用相同的解释器执行。
- 用户提出的两个关键需求是合适的Lua调试器和脚本效果复制,这两项均由作者实现。
- 该调试器是一个远程交互式客户端-服务器工具,它使用fork()来避免阻塞服务器,并支持数据集更改的回滚。
- 调试器的主要功能包括断点、单步执行、变量检查、回溯以及自定义Lua函数,如redis.breakpoint()和redis.debug()。
- 脚本效果复制允许仅复制脚本产生的写命令,从而提高效率,并支持使用非确定性命令(如TIME)。
- 该功能通过redis.replicate_commands()选择性启用,并利用redis.set_repl()进行高级控制,以排除某些命令的复制。
- 这两项功能将在2015年12月发布的Redis 3.2中提供。