¿Cómo podría reutilizar la conexión redis en los procesos creados con Childprocess.fork() en nodeJs?
Por ejemplo, tendría un archivo redis-config.js donde creo una instancia de RedisClient y me conecto al servidor redis. Entonces, después de eso, tendría otro archivo, test.js por ejemplo, y dentro de ese archivo test, js accedería a la instancia de redis a través de la importación y luego podría, por ejemplo, insertar una clave en redis. Pero esto sin crear otra conexión al servidor redis.
Por ejemplo
redis-conf.js
const Redis = require('redis'); const redisClient = Redis.createClient({name:'test-conecction'}); module.exports = {redisClient:Object.freeze(redisClient)}principal.js
const cp = require('node:child_process'); const {redisClient} = require('./redis'); redisClient.connect().then(()=>{ <<=== this is want i want, this does not work, i want to connect only once. const c1 = cp.fork('./child.js'); const c2 = cp.fork('./child.js'); })niño.js
const {redisClient} = require('./redis'); redisClient.info().then((data)=>{ <<== when i try this, nodeJs tells that the client is disconnected console.log(data); })En resumen. No es posible. Porque cuando nodeJs crea un childPorcess, todo se vuelve a crear y todos los recursos se reasignan.