Recientemente intenté profundizar en la base de código para averiguar el ID del cliente en el endpoint /message-bus/{client-id}/poll. ¿Alguien podría brindarme alguna orientación o dirigirme al código o documentación relevante que explique qué representa exactamente este ID de cliente y cómo se establece?
Podría estar equivocado, pero es probable que el clientId sirva para identificar a quién debe entregar el MessageBus un mensaje X.
Imagínalo como una conversación en la que cada X cantidad de tiempo, el cliente le pregunta al servidor: “Oye, tengo el ID XYZ, ¿tienes algún mensaje para mí?”
El clientId parece generarse automáticamente cada vez que se carga el script (no sé si en el caso de Discourse este clientId generado persiste de alguna manera en el cliente).
Si es lo primero, tal vez describa lo que está intentando ver y lo que está haciendo que no funciona. Lo que hago es buscar MessageBus en los plugins de GitHub - discourse/all-the-plugins.
Para dar un poco más de contexto, observamos un gran número de llamadas de sondeo del bus de mensajes en nuestro hosting de Discourse. Quisiera comprobar si existe alguna correlación entre los IDs de cliente y los usuarios actuales. Si existe tal conexión, podría ayudarnos a identificar patrones y definir reglas efectivas de limitación de velocidad para gestionar el tráfico.
Mayormente no lo entiendo, pero puedes mirar las herramientas de desarrollador del navegador y ver que cada ventana abierta está consultando regularmente el bus de mensajes. Así es como suceden las cosas sin recargar la página, como ver publicaciones editadas, contadores de mensajes actualizados, etc. Se espera que sea mucho. Parece que está consultando un número aleatorio, por lo que tú (o al menos yo) no puedes decir (fácilmente) qué usuario es.
Sí, un gran número de llamadas de sondeo de message-bus representa muchos usuarios simultáneos, donde cada ID de cliente único representa una sesión de navegador.
No, este es tráfico necesario, es esencial para que tu foro funcione. Si ves mucho, ¡también es una señal de éxito!