Zostałem ostatnio poproszony o rozwiązanie problemu jednego z serwisów internetowych, wysyłającego co tydzień newsletter do swoich użytkowników. Problemem był czas wysyłki newslettera – łącze internetowe tego serwisu (nie chcę tutaj wchodzić w skomplikowaną sytuację prawno-techniczną umowy z providerem) pozwalało wysyłać zaledwie kilkadziesiąt tysięcy maili dziennie, co przy liczbie maili liczonych w setkach tysięcy powodowało, że wysyłanie trwało dniami i nocami. To czasami owocowało „zazębianiem się” wysyłki – serwis nie zdążył jeszcze przesłać całego newslettera, a już trzeba było wysyłać następny.
Najprostszym, i najtańszym (150pln miesięcznie) rozwiązaniem okazało się… przeprowadzenie całego procesu wysyłania maili do Francji. Wynajęcie jednej małej maszyny w innej serwerowni (tutaj pozdrowienia dla ovh.pl) całkowicie uzdrowiło sytuacje – obecnie raz na tydzień maszyna ta wysyła kilka maili na sekundę, a cała wysyłka trwa zaledwie kilka godzin. Dodatkowo, mogąc dosyć precyzyjnie sterować czasem wysyłki, serwis zwiększył ilość rzeczywiście czytanych maili. W tym konkretnym przypadku, należało przenieść wysyłanie maili na niedzielny wieczór, bo w poniedziałek rano użytkownicy byli bardziej zainteresowani mailami niż np. w poranek środowy.
Jeśli już przy newsletterach jesteśmy, drobne spostrzeżenie: specjalizacja firm informatycznych postępuje w postępie geometrycznym. Są już także na polskim rynku firmy wyspecjalizowane tylko w wysyłaniu mailingu. Okazuje się, że przy odpowiednio dużej skali wysyłki, warto wiedzieć na ten temat dużo. A oni wiedzą: jak wysyłać maile, żeby nie były traktowane jako spam, do kogo i kiedy wysyłać, co wysyłka może zawierać, co można podpinać do statystyk i w jaki sposób to robić… lista ciągnie się w nieskończoność. Miałem okazję spytać kiedyś przedstawiciela takiej firmy, czy istnieje jakiś rozsądny limit prędkości wysyłania. Usłyszałem, że tak: należy robić przerwy pomiędzy kolejnymi mailami, przynajmniej… 1ms :)