Mam tę aplikację szyny, która działa w naszym lokalnym intranecie z tysiącem zwykłych użytkowników. Szukam integracji z naszym serwerem e-mail (MS Exchange). Zasadniczo -Pobieranie wiadomości e-mail w szynach za pośrednictwem IMAP
1) Dla każdego użytkownika aplikacja powinna pobrać wszystkie nowe wiadomości w swojej skrzynce odbiorczej z serwera pocztowego, przeanalizować je i umieścić w bazie danych.
Mogę to zaimplementować za pomocą ruby / net-imap, ale martwię się o wydajność. Jak już wspomniałem, istnieje tysiąc użytkowników, każdy z innym adresem e-mail. Odpytywanie serwera poczty e-mail co x minut nie pozwoliłoby tysiącom użytkowników radykalnie zmniejszyć wydajności.
Wygląda na to, że może być opcja IMAP IDLE with ruby/net-imap, serwer pocztowy przesyła powiadomienie do mojej aplikacji za każdym razem, gdy pojawi się nowa poczta (styl IPhone/Outlook). Ale wygląda na to, że będę musiał utrzymywać połączenie IMAP z serwerem. Jeśli więc zalogowanych jest jednocześnie 100 użytkowników, oznacza to 100 połączeń z serwerem pocztowym. Czy to drastycznie spowolni aplikację?
Albo czy ktoś wie o wszelkich innych opcji (Btw, nie mam kontroli nad poczty serwer)
Jesteśmy przy użyciu MRI, ale może z łatwością przełączać się jruby też.
Zobacz: http://stackoverflow.com/questions/1076116/support-for-imap-idle-in-ruby/1818718#1818718 –