===========================
In the PowerDNS Recursor, it is possible to modify resolving behaviour using simple scripts written in the `Lua <http://www.lua.org>`_ programming language.
-**Note**: This describes the Lua scripts as supported by 4.x. They are very different than the ones from 3.x, but tend to be faster and more correct.
-
These scripts can be used to quickly override dangerous domains, fix things that are wrong, for load balancing or for legal or commercial purposes.
The scripts can also protect you or your users from malicious traffic.
For extra performance, a Just In Time compiled version of Lua called `LuaJIT <http://luajit.org/>`_ is supported.
+.. note::
+ PowerDNS Recursor is capable of handling many queries simultaneously using cooperative user space multi-threading.
+ Blocking functions called from Lua are not cooperative, they will monopolize a worker thread while being blocked.
+ Avoid blocking calls.
+
.. toctree::
:maxdepth: 2