| Termin | Definicja |
|---|---|
| SendPortal (Laravel | SendPortal oparty na Laravelu daje pełną kontrolę nad kodem i danymi kampanii. Aplikacja webowa na frameworku PHP — co to znaczy w praktyceRozwiązanie oparte na Laravelu to zwykła aplikacja PHP, którą stawia się na własnym serwerze: potrzebny jest interpreter PHP w odpowiedniej wersji, menedżer zależności Composer, baza danych — najczęściej MySQL lub MariaDB — oraz serwer HTTP z katalogiem głównym ustawionym na podkatalog public. Konfiguracja mieszka w pliku .env, gdzie trafiają dane dostępowe do bazy, parametry przekaźnika pocztowego i klucz aplikacji. Migracje schematu uruchamia się poleceniem artisan, a całość wymaga dwóch procesów działających w tle: harmonogramu wywoływanego co minutę przez systemowe zadanie cron oraz procesu obsługującego kolejkę zadań. To ostatnie jest najważniejsze — bez działającego workera kampania zostanie zapisana, ale nigdy nie ruszy. Pełna kontrola nad danymi i jej rzeczywisty kosztArgument za takim rozwiązaniem jest mocny: baza adresowa, treści i statystyki zostają na infrastrukturze firmy, nie ma opłaty za każdy tysiąc kontaktów, a kod można zmodyfikować pod własne potrzeby. Rachunek wystawia się jednak gdzie indziej. Aplikacja sama nie doręcza poczty — wysyła ją przez zewnętrzny przekaźnik SMTP albo usługę dostarczania wiadomości, i to ona odpowiada za reputację. Utrzymanie oznacza aktualizacje PHP i frameworka, monitorowanie kolejki, kopie zapasowe bazy oraz odbieranie informacji zwrotnych o odbiciach i skargach, zwykle przez punkt końcowy przyjmujący powiadomienia webhook. Porównanie z gotową usługą chmurową sprowadza się więc do pytania, czy w firmie jest ktoś, kto tę robotę wykona regularnie, a nie raz przy wdrożeniu. Awarie charakterystyczne dla samodzielnego hostinguNumer jeden: zatrzymany proces kolejki po restarcie serwera, bo nikt nie skonfigurował menedżera procesów pilnującego jego ciągłości — kampania stoi, w panelu wygląda na wysyłaną. Numer dwa: brak wpisu w cronie, przez co zaplanowane wysyłki nigdy nie startują. Numer trzy: zapchany dysk przez rosnące pliki dziennika w katalogu storage/logs, co potrafi wywrócić całą aplikację. Numer cztery: wygasły certyfikat protokołu HTTPS na domenie używanej w linkach śledzących, przez co odbiorcy widzą ostrzeżenie przeglądarki zamiast strony docelowej. Numer pięć: uprawnienia do katalogów storage i bootstrap/cache ustawione tak, że serwer nie może pisać, co kończy się białą stroną i wpisem o błędzie zapisu. Utrzymanie serwera aplikacji i bezpieczeństwo bazy kontaktówFirmom, które trzymają takie systemy u siebie, pomagamy poukładać zaplecze: konfigurację kopii zapasowych bazy wraz z testem odtworzenia, monitorowanie wolnego miejsca i działania procesów pomocniczych, dobór sprzętu odpornego na awarię pojedynczego nośnika. Regularnie spotykamy sytuacje, w których cała firmowa lista kontaktów żyje na jednym dysku bez żadnej kopii — i to jest ryzyko poważniejsze niż jakikolwiek problem z dostarczalnością. Obsługujemy klientów firmowych i indywidualnych o każdej porze, również w weekendy. |