Earlier in this chapter, server-side Lua scripting was identified as a feature of Redis. This feature allows you to[2] create scripted extensions to the Redis database. In this section, we'll explore this functionality along with some short and simple scripts.
Let's start by expanding on our hello world example and write a short script to query that message. Lua code can be invoked with the EVAL command from the redis-cli:
127.0.0.1:6379> EVAL 'local text="Hello world!" return text' 0 "Hello world!"
The zero 0 on the end of the EVAL command tells Redis that we are not passing any keys to be used by Lua (more on that in a moment).
Lua scripts can invoke commands typically used in the redis-cli. This can be done with the redis.call()