Sklep na Magento: z hostingu współdzielonego na AWS
Sklep na Magento przeniesiony z hostingu współdzielonego na AWS bez przestoju. Strony ładują się około 3× szybciej. Celem była skalowalność i odporność na awarie, nie oszczędność.
W skrócie, bez żargonu
- Sklep internetowy przeniosłem ze wspólnego hostingu do chmury AWS. Klienci nie zauważyli przeprowadzki: sklep działał przez cały czas.
- Strony sklepu otwierają się teraz około 3 razy szybciej.
- Sklep jest przygotowany na duży ruch w czasie kampanii, ma kopie zapasowe i plan na wypadek awarii.
- Hosting kosztuje teraz więcej niż wcześniej, celowo: za te pieniądze sklep ma zapas na wzrost i szybki powrót po awarii.
- Branża
- E-commerce
- Stack
- EC2, RDS MySQL, OpenSearch, CDN, Varnish, Redis, Magento
- szybsze ładowanie
- 3×
- przestoju przy migracji
- ani minuty
infrastruktura
- Przed: hosting współdzielony, aplikacja i baza w jednym miejscu
- Po: AWS: aplikacja oddzielona od bazy i wyszukiwarki
- Po: RDS MySQL zamiast bazy obok aplikacji
- Po: Varnish (cache całych stron) i Redis
- Po: OpenSearch dla wyszukiwarki produktów
- Po: CDN dla zdjęć i plików statycznych
wynik
- Przed: czas ładowania strony: 1×
- Po: czas ładowania strony: ok. 3× szybciej
- przełączenie bez ani minuty przestoju
Uwaga: rachunek za hosting wzrósł. Celem była skalowalność i odporność na awarie, nie oszczędność.
Przed
Sklep na Magento działał na hostingu współdzielonym: aplikacja i baza w jednym miejscu, bez możliwości dołożenia mocy na kampanię i bez planu na awarię.
- Hosting
- współdzielony
- Osobne usługi obok aplikacji
- 0
- Czas ładowania strony
- 1× (punkt odniesienia)
Co zrobiłem
- Migracja z hostingu współdzielonego na AWS bez przestoju.
- EC2 z PHP-FPM i Nginx, baza w RDS MySQL.
- Varnish jako cache całych stron, Redis.
- OpenSearch do wyszukiwania w sklepie.
- CDN dla plików statycznych.
- Infrastruktura przygotowana na szczyty ruchu w czasie kampanii i odporna na awarie.
- Kopie zapasowe i monitoring.
- Automatyczne wdrożenia.
Po
Sklep działa na AWS, a baza, cache, wyszukiwarka i pliki statyczne mają osobne usługi. Przełączenie przeszło bez ani minuty przestoju. Rachunek za hosting jest wyższy niż przedtem: celem była skalowalność i odporność na awarie, nie oszczędność.
- Hosting
- AWS
- Osobne usługi obok aplikacji
- 5
- Czas ładowania strony
- ok. 3× szybciej
- Przestój przy przełączeniu
- ani minuty
- Rachunek za hosting
- wyższy niż przed migracją
Masz podobny problem? Opisz go w dwóch zdaniach.
Albo napisz na przemek@codelevel.pl.
Odpowiadam w ciągu 1 dnia roboczego.