本章涵盖
在过去的几章中,你已经积累了一套可用于
现有应用程序的工具,同时也遇到了可以用来解决
各种问题的技术。本章的内容与此类似,但会颠覆你的一些
固有观念。从 Redis 2.6 版本开始,Redis 包含了使用 Lua 编程语言的服务器端脚本
功能。这使你可以在 Redis 内部执行各种操作,
既可以简化代码,又可以提高性能。
在本章中,我们将首先讨论 Lua 相对于在客户端执行操作的一些优势,
并展示第 8 章社交网络中的一个示例。然后,我们将回顾第 4 章和第 6 章的两个问题,展示使用 Lua 如何
消除对 WATCH/MULTI/EXEC 事务的需求。
之后,我们将重新审视第 6 章中的锁和信号量,展示如何使用 Lua 实现它们,以便
公平地让多个客户端访问并提高性能。
最后,我们将使用 Lua 构建一个分片的 LIST,它支持许多(但不是所有)标准的
LIST 命令的等效功能。
让我们开始学习一些我们可以使用 Lua 脚本实现的
功能。
信任