Redis lua cuando realmente usarlo?

He comenzado a investigar y jugar un poco con lua y he encontrado que es genial cuando quiero agarrar rangos de teclas. Ex:

business:5:visits:2013-11-12
business:5:visits:2013-11-13
etc

Con lua solo tengo que enviar un comando a redis en lugar del rango completo de fechas.

Ahora estoy pensando en convertir más de nuestra lógica y moverla a Redis.

Tome nuestro proceso de almacenamiento de mensajes que actualmente se ve así:

// create a new unique id
redisClient.incr(Config.messageId, function(err, reply) {
    var messageId = reply.toString();
    var timestmp = Date.now();

    // push message
    redisClient.zadd(Config.history + ':' + obj.uid + ':' + obj.channel.replace(/\s+/g, ''), timestmp, messageId);

    // store the message data by messageId
    redisClient.hmset(Config.messageHash + ':' + messageId, {
        'user_id': obj.uid,
        'text_body': "some text",
        'text_date': timestmp,
    });


    // set expires
    redisClient.expire(Config.history + ':' + obj.uid + ':' + obj.channel.replace(/\s+/g, ''), Config.messageExpire);
    redisClient.expire(Config.messageHash + ':' + messageId, Config.messageExpire);


    // add to mysql-sync queue
    redisClient.RPUSH(Config.messageMySQLSyncQueue, Config.messageHash + ':' + messageId);

});

Lo anterior podría convertirse fácilmente en lua, pero ¿vale la pena por su rendimiento?

¿Sería más rápido escribir esto en Lua y solo tener que emitir 1 comando a Redis? ¿Causaría problemas al bloquear otros comandos?

Respuestas a la pregunta(5)

Su respuesta a la pregunta