Назад | Перейти на главную страницу

Высокопроизводительное решение POP3, которое может обрабатывать несколько учетных записей с миллионами электронных писем

В соответствии с правилами мы должны создать решение, которое обменивается данными только через smtp / pop3 (в основном RPC через SMTP / POP3).

Сообщения отправляются из одного приложения с помощью SMTP, доставляются в почтовый ящик и принимаются другим приложением с помощью POP3, после чего оно доставляет ответ с помощью SMTP, и это происходит по кругу.

Расчетный средний размер сообщения составляет 40 КБ, а расчетное количество сообщений в день - 12–15 миллионов. Это будет распространено на небольшое количество учетных записей пользователей, примерно 10. Никакая почта не должна храниться долгое время, она доставляется, забирается, удаляется.

Мы планируем использовать оборудование с хранилищем fusionio и postfix для части SMTP, но ищем, желательно, программное обеспечение POP3 с открытым исходным кодом, которое может обрабатывать эти тома.

Я смотрел на Dovecot, и это могло быть лучшим решением, но меня беспокоит, что из-за того, что он в первую очередь ориентирован на IMAP, есть некоторые недостатки производительности для POP3.

Dovecot будет в порядке.

Производительность будет только ухудшаться (я имею в виду не очень хорошо), если много сообщений будет накапливаться в одном почтовом ящике. Если вы удалите их в ближайшее время, все будет в порядке.

Другое дело использовать maildir. Избегайте использования mbox, поскольку у него есть проблемы с одновременным доступом.

Я думаю, что если у вас есть 2 критерия, вы можете использовать Dovecot в качестве эффективного сервера POP3. Во-первых, самые большие накладные расходы для POP3 связаны с получением размеров файлов, если для каталога не существует индекса. Обязательно используйте Dovecot LDA, поскольку он будет вести очень эффективный подсчет размеров и номеров сообщений каждый раз, когда обновляет каталог, а это означает, что процессу POP3, подключающемуся к maildir, не придется сначала сканировать весь каталог. Во-вторых, если вы используете несколько серверов, внимательно присмотритесь к Director, так как он гарантирует, что пользователи всегда будут подключаться к одному и тому же серверу, что сведет к минимуму операции индексирования и извлечение почты.

Вы также можете обнаружить, что индексация бесполезна, если клиенты подключаются достаточно часто, чтобы количество сообщений в maildir / mbox оставалось небольшим (я уверен, что есть сладкий момент между стоимостью сканирования каталога и меньшими дополнительными затратами. обновления индекса, я бы не рискнул догадаться, где ..)