Przejdź do treści

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
sklep-magento.diffZmiana: 6 linii dodanych, 2 usuniętych

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.