Tengo esta aplicación de rieles que se ejecuta en nuestra intranet local, con mil usuarios regulares. Estoy buscando integrarlo con nuestro servidor de correo electrónico (MS Exchange). Básicamente -Recuperación de correos electrónicos en rieles a través de IMAP
1) Para cada usuario, la aplicación debe buscar cualquier mensaje nuevo en su bandeja de entrada del servidor de correo, analizarlo y archivarlo en la base de datos.
Podría implementarlo con ruby / net-imap, pero me preocupa el rendimiento. Como he mencionado, hay miles de usuarios, cada uno con una dirección de correo electrónico diferente. Sondear el servidor de correo electrónico cada x minutos para miles de usuarios podría reducir drásticamente el rendimiento.
Parece que IMAP IDLE with ruby/net-imap podría ser una opción, el servidor de correo envía una notificación a mi aplicación cada vez que hay un nuevo correo (estilo de iPhone/Outlook). Pero parece que para eso tendré que mantener una conexión imap abierta con el servidor para eso. Entonces, si hay 100 usuarios conectados a la vez, eso significaría 100 conexiones al servidor de correo. ¿Eso ralentizará drásticamente la aplicación?
O ¿alguien sabe de cualquier otra opción (Por cierto, que no tienen control sobre el servidor de correo)
Estamos utilizando resonancia magnética, pero fácilmente podría cambiar a jruby también.
Ver esto: http://stackoverflow.com/questions/1076116/support-for-imap-idle-in-ruby/1818718#1818718 –