2009-07-01 12 views
7

Ich habe diesen Schienen-App, die auf unserem lokalen Intranet läuft, mit tausend regelmäßigen Nutzer. Ich möchte es mit unserem E-Mail-Server (MS Exchange) integrieren. Grundsätzlich -Fetching E-Mails in Schienen per IMAP

1) Für jeden Benutzer sollte die App holt alle neue Nachrichten in ihrem Posteingang aus dem E-Mail-Server, analysieren, und es in der Datenbank-Datei.

ich es mit Ruby/net-imap implementieren könnte, aber ich mache mir Sorgen über die Leistung. Wie ich bereits erwähnt habe, gibt es tausend Benutzer mit unterschiedlichen E-Mail-Adressen. Wenn Sie den E-Mail-Server alle x Minuten abfragen, würde das die Leistung drastisch reduzieren.

Es sieht aus wie IMAP IDLE with ruby/net-imap könnte eine Option sein, der Mail-Server eine Benachrichtigung an meine App drängen, wenn es eine neue E-Mail (IPhone/Outlook-Stil) ist. Aber es scheint, dass ich dafür eine imap-Verbindung mit dem Server offen halten muss. Wenn also jeweils 100 Benutzer angemeldet sind, bedeutet dies 100 Verbindungen zum Mail-Server. Wird das die App drastisch verlangsamen?

Oder weiß jemand von irgendwelchen anderen Optionen (Btw, ich habe keine Kontrolle über den Mail-Server)

Wir MRI verwenden, könnte aber leicht zu jruby wechseln zu.

+0

sehen: http://stackoverflow.com/questions/1076116/support-for-imap-idle-in-ruby/1818718#1818718 –

Antwort

1

This könnte helfen ... Ich weiß, es ist für Google Mail oder nicht genau das, was Sie suchen, aber Sie könnten in der Lage sein, es an Ihr Problem anzupassen.

Es gibt auch einige Bibliotheken imap mit Ruby wie Chilkat Ruby IMAP Library 2.1 zu handhaben, aber ich habe nicht noch versucht.