Moja instancja mikro Amazon EC2 bardzo często używa procesora w 100%. Mam tylko instalację Wordpress. Nadal jestem w trybie produkcyjnym, więc nie ma użytkowników, ale mam 100% użycia procesora.
Czy ktoś wie, jak to zmniejszyć? Otrzymuję powiadomienia Amazon e-mail co godzinę, ponieważ trwa to ponad 300 sekund.
Przenosiłem już bazę danych do RDS, ale nie rozwiązałem tego problemu. To tylko sprawiło, że było trochę lepiej. Przed przejściem do RDS z moją bazą danych moja witryna zawsze ulegała awarii podczas ładowania tylko jednej strony internetowej.
Mój mysqld.log podaje błąd errno 12, dlatego też zrobiłem innodb_buffer_pool_size = 256M w pliku my.cnf, ale nic nie przyniosłem.
Byłbym wdzięczny za każdą wskazówkę.
amazon-ec2
central-processing-unit
Jaba L.
źródło
źródło
Odpowiedzi:
Pamiętaj, że
m2.micro
instancje są po prostu takie - są małe. Każda rzeczywista ilość obciążenia zmaksymalizuje je.Jak zauważył @zvik w swoich komentarzach, powinieneś dowiedzieć się, jakie procesy zużywają najwięcej pamięci i / lub cykli procesora. Zalecił uruchomienie
top
, które jest poleceniem znajdującym się w dystrybucjach Linuksa. NaciskającShift-P
, posortuje je według zużycia procesora. Musisz użyć tych informacji, aby dowiedzieć się, gdzie jest wąskie gardło. Na przykład, jeśli działa Apache, domyślną konfiguracją Apache może być uruchomienie większej liczby procesów, niż jest w stanie zrobić serwer.Spróbuj uruchomić
top
i zobaczyć, które polecenia zużywają najwięcej zasobów.źródło
Twój problem może w rzeczywistości polegać na „kradzieży procesora”, która ma miejsce na stosie Amazon (a właściwie w każdej zwirtualizowanej infrastrukturze). Możesz przeczytać więcej o kradzieży procesora tutaj .
Zasadniczo maszyna wirtualna jest bezczynna, a Amazon „pożycza” niektóre cykle procesora, aby dać ją komuś, kto jej potrzebuje - jest to standardowa praktyka w zwirtualizowanym środowisku, w którym zasoby serwerów fizycznych, takie jak użycie pamięci RAM i cykle procesora, są często nadmiernie nadmiernie zaangażowane .
Aby sprawdzić kradzież procesora, uruchom
top
i sprawdź%st
wartość wyróżnioną tutaj:Jeśli ta wartość jest inna niż zero, oznacza to, że cykle procesora maszyny wirtualnej są „pożyczane”.
źródło