Lua 5.1的确不分代,不过GC一般发生在一个worker处理结束后,并不会影响响应速度。当然对并发有影响,不过GC是分步进行,不能说影响很大,相对连接数据库访问资源之类的消耗来说可以忽略不计了。
更进一步的问题是,每个worker都是独立的,如果你要常驻大量数据,要么每个worker独立一份(显然不合适),要么通过share dict共享,但这个并不适合存储过大的数据。而且,如果服务器重启,共享数据消失,重建也需要时间。
如果常驻,本地走一个redis服务估计更好些,虽然进程间访问有通信消耗,但维护还是方便的。毕竟提高并发可以靠多服务器解决,但数据都常驻各个服务器,一致性就不好保证了,服务器尽可能无状态好一些。