Как организовать хранение email-сообщений email-модуля CRM-системы?
Задача - хранить все email-сообщения почтового ящика у себя на сервере с возможностью полнотекстового поиска по текстам сообщений.
Реализовал изначально в mysql, но так как писем много, то база начинает весить десятки гигабайт. Не покидает ощущение, что должно быть более подходящее решение для данной задачи.
Что-то можете порекомендовать? Может быть есть информация, как обычно реализуют данный функционал в CRM-системах...
iamoskvin2, не совсем имап предполагает слишком сложный протокол , например эксченж выдаёт поток на каждое письмо, все это учитывается краулером и ограничивается в доступе.
iamoskvin2, другой вариант например постфикс может хранить письма в бд вы настраиваете поиск через эластик и выдаёте ссылки на почту типа mailserver/read/Korotenko/233456788953326788
Владимир Коротенко, у нас ящики на gmail все. Он умеет IMAP и GMAIL API. Но обращаться по API в реальном времени что-то не очень нравится по скорости работы. Постфикс мне, думаю, не нужен, в такой связке, так как сервером является gmail. Про эластик понятно, вероятно, попробую при тормозах поиска в mysql.
iamoskvin2, Как вариант независимый обходчик, который имеет акаунт для всей почты и индексирует все. Потом на уровне выдачи сортируете результат что кому выдавать.
Но это все же предположение, нужно попробовать. Как по мне там задержки на поиск в пределах 0.3 сек