Mysterious Code przebudował platformę e-commerce Integriser na AWS Fargate, obsługując czterokrotnie większy ruch przy porównywalnym koszcie i o połowę zmniejszając liczbę typów kontenerów do utrzymania.
Aplikacja e-commerce Integriser zmagała się ze skalowalnością i rosnącym zapotrzebowaniem na zasoby w wyniku szybkiego wzrostu. We współpracy z Mysterious Code i AWS firma wdrożyła solidne rozwiązanie oparte na zgodnej z PostgreSQL bazie Amazon Aurora, Amazon CloudFront, Application Load Balancer i AWS Fargate. Takie podejście umożliwiło automatyczne skalowanie, uprościło zarządzanie kontenerami i wprowadziło niezawodny proces testów i wdrożeń. W efekcie Integriser sprawnie obsługuje skoki zapotrzebowania, na przykład w Black Friday, i utrzymuje czterokrotnie większy ruch niż wcześniej, przy porównywalnym koszcie. Rozwiązanie znacząco usprawniło rozwój, ograniczając złożoność i optymalizując wykorzystanie zasobów.
Integriser to system zarządzania zamówieniami, dostarczany w modelu SaaS dla magazynów realizujących wysyłki (fulfilment) i ich klientów e-commerce.
System zarządzania zamówieniami Integriser szybko się rozwijał, co prowadziło do wzrostu ruchu i zapotrzebowania na zasoby. Firma potrzebowała infrastruktury, która skaluje się efektywnie, aby obsłużyć nowych klientów i utrzymać wzrost.
Początkowo infrastruktura działała w kontenerach na pojedynczej maszynie wirtualnej hostowanej w Google Cloud Platform (GCP). Taka konfiguracja nie zapewniała jednak skalowalności potrzebnej do obsługi większego ruchu, co mogło ograniczać rozwój firmy i jej zdolność do obsługi większej bazy klientów.
Kontenery Docker aplikacji, zarządzane przez Docker Swarm, nie skalowały się łatwo w zależności od ruchu i obciążenia. Złożone wymagania dotyczące równoważenia obciążenia, oparte na routingu po ścieżkach dla przychodzących żądań, dodatkowo komplikowały zarządzanie kontenerami i ich konfigurację.
Dodatkowo baza danych PostgreSQL hostowana w GCP miała trudności ze skalowaniem do potrzeb aplikacji. Brak powtarzalnego procesu testów i niezawodnej procedury wdrożeń jeszcze bardziej utrudniał programistom wprowadzanie innowacji i sprawne wydawanie zmian w kodzie.
Integriser wybrał AWS i Mysterious Code, by sprostać tym wyzwaniom. Choć aplikacje kontenerowe można hostować na różnych platformach, zgodna z PostgreSQL baza Amazon Aurora oferowała solidne rozwiązanie problemów z bazą danych. Automatyczne skalowanie pamięci i operacji wejścia-wyjścia w Aurora, zależne od liczby zapytań i ilości danych, wraz z wglądem w wydajność, pozwoliło programistom skupić się na rozwoju aplikacji zamiast na infrastrukturze.
Wykorzystując Amazon CloudFront i Application Load Balancer, Mysterious Code uprościł konfigurację kontenerów i wyeliminował potrzebę złożonego routingu po ścieżkach. Hosting kontenerów na AWS Fargate pozwolił Integriserowi skalować każdy komponent aplikacji niezależnie.
Mysterious Code usprawnił proces tworzenia kontenerów, redukując zbędną złożoność. Wprowadziliśmy też niezawodny i powtarzalny proces testów i wdrożeń w oparciu o GitLab Pipelines, dzięki czemu programiści szybko otrzymują informację zwrotną o zmianach i mogą błyskawicznie wdrażać nowe funkcje.
Aplikacja korzysta teraz z AWS CloudFormation do wdrażania wielu usług ECS działających na AWS Fargate, wykorzystując Fargate Spot dla kontenerów roboczych działających w tle, aby obsłużyć rosnące potrzeby przetwarzania danych. Paradygmat infrastruktury jako kodu, zrealizowany przez AWS CloudFormation, ułatwił wdrożenie dodatkowego środowiska przedprodukcyjnego (staging), dającego programistom platformę do testowania i dopracowywania zmian przed wydaniem. Zapewnia to także powtarzalne i przewidywalne wdrożenia, zwiększając niezawodność i bezpieczeństwo aplikacji.
Dzięki wdrożonemu rozwiązaniu Integriser sprawnie obsługuje skoki zapotrzebowania, w tym te wywołane okresami, które bywają problematyczne dla wielu platform e-commerce, takimi jak Black Friday czy święta. Proces rozwoju stał się mniej złożony, a liczba różnych typów kontenerów do utrzymania spadła o połowę. Aplikacja obsługuje teraz czterokrotnie większy ruch niż wcześniej, przy porównywalnym koszcie, dzięki lepszemu doborowi zasobów i wykorzystaniu Fargate Spot.