Update: OpenResty vs Lua 5.4: a benchmark
This is an update to version 1 of my blog article that benchmarked Lua alternatives to OpenResty.
Several parties replied to inform me of some impressive alternatives, so I have added benchmarks for redbean
and nginx-lws
, two good options for Lua 5.4 support:
(Here's my repository for benchmarking the results. Incidentally, I found the best benchmarking tool as part of the process).
Redbean is impressively fast, with a substantial API, the fullmoon web framework, and embeds Lua 5.4. But it specialises in standalone and Lua apps – it doesn't seem to serve Python apps, for example.
Nginx-lws has great performance, akin to OpenResty but with Lua 5.4 support. It has a well-designed API and runs on Nginx which is a general-purpose web server. Plus, there's a nice monitor and profiler, and its author is planning on long-term support. But it has no web framework, preferring to let the developer select their own independent Lua modules.
My original article concluded that the modern Lua-web ecosystem is so centred on Lua 5.1 that Lua 5.4 is not the right way to go. But learning of these new services has changed my mind. They are quality products and serious contenders.
Having said that, I'm still looking forward to the LuaJIT Remake with high hopes that it will help OpenResty move to an up-to-date Lua. I'd love to see the Lua community re-converge.
Subscribe to my newsletter
Read articles from Berwyn Hoyt directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
Berwyn Hoyt
Berwyn Hoyt
I'm keen on all kinds of embedded systems. An electrical engineer by training, I've co-founded two startups and worked in agritech IoT, satellite comms, and Forth/Python/Lua language embedding. I ride a unicycle and dream of building a self-propelled, self-bouncing, autonomous basketball. But I've never gotten around to it, because I've been distracted by the way to know the Creator-God … and, me-oh-my, but that's a marvellous possibility!