Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

158
Vistas
Cómo hacer que dos servidores backend nodejs se comuniquen entre sí para manejar diferentes tareas con k8s en mente

Tengo un servidor express que maneja toda la autenticación (usando token auth y tengo sesiones de almacenamiento redis para controlar la cantidad de inicios de sesión por dispositivo) y lectura/escritura en mongoDB.

Quiero agregar chat para mis usuarios (usando socket.io y socket.io-redis) y en lugar de codificarlo dentro del backend actual, me preguntaba cómo podría mantenerlo separado o si eso es incluso una buena idea.

Pensé que sería porque estoy implementando en un clúster k8s, pero me preguntaba cómo realizar la comunicación entre estos dos servidores.

Estoy usando el controlador nginx de ingreso donde abro el tráfico al backend en el balanceador de carga. Al principio pensé que enrutaría todo el tráfico desde el servidor entre el servidor de chat y los usuarios. ¿Pero ese no es el caso ya que el servidor de chat necesita conectarse directamente con los usuarios? Entonces, ¿cómo aseguraría la comunicación entre el backend y el servidor de chat, así como la comunicación entre el servidor de chat y los usuarios?

Tal vez estoy pensando demasiado en esto, pero se agradece cualquier idea.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Lo que terminé haciendo fue crear un servidor de autenticación, un servidor de API principal y un servidor de chat. La interfaz que apunta a auth.domain.com, api.domain.com, chat.domain.com.

El servidor de autenticación genera un JWT que se almacena en redis cuando un usuario inicia sesión. El servidor de API principal y el servidor de chat verifican redis para asegurarse de que el JWT sea válido y luego se ejecuta.

Debido a que todo esto se ejecuta en un clúster k8s y puede tener varias instancias, utilicé Pub/Sub, por lo que incluso si un usuario no está en el mismo servidor websocket (servidor de chat), aún recibirá.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda