2011-08-24 5 views
17

Aviso legalimplementación de la arquitectura y diseño de un sistema de notificación usando Node.js Socket.IO y mensajes entrantes

  • no he trabajado con Node.js antes
  • No he utilizado antes socket.io

Estoy buscando implementar un sistema de notificación de estilo Google Plus, Facebook, StackOverflow. No soy un desarrollador inexperto, y eventualmente lo resolveré, pero solo estoy buscando un empuje en la dirección correcta.

Lo que quiero es que los usuarios que estén navegando en mi sitio reciban una notificación durante su sesión de navegación cuando reciban un mensaje nuevo.

Actualmente, todos mis mensajes se almacenan en una sola tabla.

| id | messageSubject | messageBody  | hasRead | readDate | sentDate | sentToUser | sentFromUser | 
    | 1 | HelloWorld  | Nada   | 0  | `null`  | `null  |  1  |  10  | 

Ahora, todos mis mensajes se recuperan de decenas de diferentes fuentes.

  • Un mensaje se puede introducir a través de una API por terceros
  • mensaje está retirado de la red Enviar
  • mensajes pueden ser enviados a través de los controladores de mensajes privados.
  • , etc, etc

Lo que quiero es tener una manera de ser capaz de notificar a los usuarios cuando se recibe un nuevo mensaje. Me complace refactorizar mi código de cualquier manera que permita notificar a mi node.js cuando reciba un mensaje de inserción si eso es lo que tengo que hacer.

Pero no estoy muy seguro de por dónde empezar.

Mi problema es que todos mis mensajes se ingresan en mysql a través de docenas de fuentes diferentes, mis declaraciones Insert están en muchas áreas. Entonces, no sé cuál es la mejor forma de proceder.

Gracias.

Respuesta

13

Intente ver la presentación Why databases suck for messaging que es sobre por qué no debe utilizar bases de datos como MySQL para enviar mensajes. Messaging y sistemas de notificaciones funciona bien con Event Driven Architecture y yo recomendaría ver this presentación o para obtener más información sobre este tema de here con el fin de obtener una visión más amplia sobre el evento "ecosistema".

+0

¿Qué pasa si los enlaces caducan? – JerryGoyal

Cuestiones relacionadas