Direi che sei sulla strada dell'ottimizzazione prematura (che di solito non è la migliore).
Qualsiasi linguaggio di scripting con un client Redis che supporta il pipelining dovrebbe essere in grado di inviare almeno 50.000 comandi/s al server Redis. Il codice sarà semplice, senza la necessità di codificare manualmente il protocollo Redis. Certo, l'enorme trucco dell'inserto è più veloce, ma ne hai davvero bisogno?
Ora, se vuoi ancora attenerti all'inserimento massiccio, devi codificare un comando Redis corretto. L'esempio che hai fornito è sbagliato per diversi motivi:
-
il numero di argomenti è sbagliato (il tuo esempio dovrebbe iniziare con *3)
-
la lunghezza dell'ultimo argomento è errata (1,2,34 la lunghezza è 6 byte non 5).
-
nel comando SADD, è necessario un argomento per elemento del set (cioè per Redis 1,2,34 sarà un singolo elemento, non tre).
Il comando corretto preferirebbe essere qualcosa del genere:
"*5\r\n$4\r\nSADD\r\n$2\r\n80\r\n$1\r\n1\r\n$1\r\n2\r\n$2\r\n34\r\n"
Il protocollo Redis è descritto qui:http://redis.io/topics/protocol