daaawno temu zastanawiałem się ze znajomymi nad napisaniem serwera pocztowego który trzymałby wszystko – włącznie z mailami – w bazie danych.
mieliśmy kilka pomysłów, ale finalnie brak czasu projekt zabił na etapie gdy jeszcze nie było nawet linijki kodu.
dziś przeczytałem o projekcie archiveopteryx.
jest to rozwiązanie służące zasadniczo do tego co my chcieliśmy. ale z kilkoma rozwiązaniami zaczerpniętymi z gmaila (labele).
co większe feature'y:
- zaprojektowany tak by nie wprowadzać żadnych sztucznych ograniczeń na maile
- skalowalny. w tym – obsługujący jakąś (nie testowałem jeszcze więc nie znam szczegółów) formę clustrowania
- maile (i załączniki jak rozumiem) są przechowywane w mocno znormalizowanej postaci dla uniknięcia duplikatów (ma znaczenie przy oparciu o to np. list mailingowych)
- obsługa folderów pocztowych
- obsługa folderów “wirtualnych" – zapisanych reguł filtrowania maili. przykładowo:
- wszystkie maile do/od pana x
- wszystkie listy z listy mailingowej y
- nowe maile do mnie
- pojedynczy mail może należeć do wielu folderów
- obsługuje praktycznie wszystkie istotne standardy: smtp, imap, pop3, sasl, tls, sieve, lmtp
- przezroczysta obsługa funkcji “undelete"
standardowa instalacja obejmuje jakiś front-endowy serwer pocztowy zajmujący się np. tagowaniem spamu, relayowaniem czy odsiewaniem wirusów. dopiero potem, maile lokalne, trafiają do archiveopteryxa.
system jest zaprojektowany pod długotrwałą archiwizację.
całość działa na postgresie (stąd się o tym dowiedziałem) i podobno jest bardzo sympatyczne – aczkolwiek posługuję się tu opiniami osób trzecich – sam nie miałem okazji potestować.
Jakby tak jeszcze napisali coś nt. wydajności i ile TB rozumieją przez “długotrwałą archiwizację” to byłoby miło.
Bo jakoś nie zauważyłem.
ja też – a sam nie miałem okazji potestować. ale *wydaje się* być fajne.
Dbmail?