Usunięcie problemów z czasem reakcji
Klient zgłosił, że jego strona internetowa zaczęła działać wolno. Moim zadaniem było przeprowadzenie szczegółowej analizy infrastruktury i usług projektu, a także zaproponowanie rozwiązań dotyczących optymalizacji lub zmiany konfiguracji w celu poprawy prędkości ładowania strony.
Co zrobiłem:
Wykonałem kompleksową analizę konfiguracji serwera WWW i bazy danych.
W trakcie analizy bazy danych MySQL zidentyfikowano następujące problemy:
Konfiguracja była nieoptymalna: używane były zbyt małe bufory i cache dla objętości danych. Skorygowałem parametry, aby efektywniej wykorzystać zasoby serwera.
Podczas analizy wolnych zapytań odkryto, że niektóre zapytania znacznie zwiększają obciążenie serwera i jego podsystemu dyskowego. Te zapytania zostały przekazane programistom do dalszej analizy i optymalizacji.
Optymalizowałem ustawienia serwera WWW i skonfigurowałem optymalną liczbę workerów Nginx do obsługi zapytań i efektywnego wykorzystania zasobów serwera. Ustawiono również cache w Nginx dla danych statycznych i części treści dynamicznej.
Kolejnym problemem było częste użycie rozwiązywania DNS w często wykonywanych zapytaniach, co dodawało opóźnienia rzędu kilku milisekund. Zaleciłem, gdzie to możliwe, zastąpienie użycia nazw domen bezpośrednim wskazaniem adresów IP.
Obserwowano również wysokie obciążenie dysku spowodowane przechowywaniem plików sesji przez serwer WWW na dysku. Do obsługi sesji zainstalowano i skonfigurowano Redis.
Wszystkie te działania pozwoliły zwiększyć prędkość ładowania strony o 30–50% i zmniejszyć ogólne obciążenie serwerów, zapewniając klientowi zapas zasobów do dalszej skalowania projektu.
#MySQL/MsSQL/NoSQL #DevOps #Apache/Nginx/PhpFPM
Co zrobiłem:
Wykonałem kompleksową analizę konfiguracji serwera WWW i bazy danych.
W trakcie analizy bazy danych MySQL zidentyfikowano następujące problemy:
Konfiguracja była nieoptymalna: używane były zbyt małe bufory i cache dla objętości danych. Skorygowałem parametry, aby efektywniej wykorzystać zasoby serwera.
Podczas analizy wolnych zapytań odkryto, że niektóre zapytania znacznie zwiększają obciążenie serwera i jego podsystemu dyskowego. Te zapytania zostały przekazane programistom do dalszej analizy i optymalizacji.
Optymalizowałem ustawienia serwera WWW i skonfigurowałem optymalną liczbę workerów Nginx do obsługi zapytań i efektywnego wykorzystania zasobów serwera. Ustawiono również cache w Nginx dla danych statycznych i części treści dynamicznej.
Kolejnym problemem było częste użycie rozwiązywania DNS w często wykonywanych zapytaniach, co dodawało opóźnienia rzędu kilku milisekund. Zaleciłem, gdzie to możliwe, zastąpienie użycia nazw domen bezpośrednim wskazaniem adresów IP.
Obserwowano również wysokie obciążenie dysku spowodowane przechowywaniem plików sesji przez serwer WWW na dysku. Do obsługi sesji zainstalowano i skonfigurowano Redis.
Wszystkie te działania pozwoliły zwiększyć prędkość ładowania strony o 30–50% i zmniejszyć ogólne obciążenie serwerów, zapewniając klientowi zapas zasobów do dalszej skalowania projektu.
#MySQL/MsSQL/NoSQL #DevOps #Apache/Nginx/PhpFPM