Jump to content
sojkis

Problemy Z Pamięcią

Recommended Posts

cześć

jestem nowym użytkownikiem zarówno fedory jak i tego forum. Więc najpierw się przywitam i proszę mnie zrozumieć.

 

W pracy mamy klika serwerów i jednym z nich jest serwerek HP Proliant ML350 i 2GB pamięci ram z systemem fedora i programem do obiegu dokumentów na którym pracuje ok 30 osób. Swap jest ustawiony bardzo wysoko na 7GB. Sprzęt ten został dostarczony z nagraną fedorą i tak dziwnie ustawionym SWAP.

 

Mój problem polega na tym że w godzinach szczytu aplikacja zaczyna się wieszać, komputer pracuje bardzo wolno, SWAP rośnie do granicy 2GB od godziny 7:30 gdzie jest 0 (ponieważ dałem do crona restart). Jeden proces zużywa od 70-90% MEM według programu top

 

gotoweps2.jpg

 

Moje pytania:

1)dlaczego SWAP rośnie aż do takiej wielkości

2)czy można zmniejszyć ilość SWAP bez reinstalacji fedory, jeżeli tak to gdzie to zrobić i na jaką wartość ustawić

3)czy dokupienie pamięci RAM np: 2GB polepszy pracę sprzętu i tego badziewia (obieg dokumentów)

4)czy jeżeli jest taki wielki wykorzystany SWAP oznacza żę systemowi brakuje pamięci

5)czy jest to prawda że jeżeli fedora widzi wolną pamięć to ją zapełni

6)czy jeżeli SWAP ma 2GB to może tak przymulić sprzęt czy po prostu coś innego jest skopane

7)czy jest na fedorze program do testowania sprzętu np: pamięć, procek, dysk może coś jest ubite

 

 

sojkis

Share this post


Link to post
Share on other sites

Witam,

 

może rozpocznę od tego, że pamięć SWAP dla każdego serwera jest rzeczą indywidualną, na pewno nie należy stosować bzdurnych rad w stylu że SWAP powinien mieć wielkość 2 x RAM czy coś podobnego,

 

wielkość SWAP dobierana jest indywidualnie dla każdego serwera, a dokładniej dla usług które są na nim instalowane, w skrócie można powiedzieć, że SWAP powinien mieć taką wielkość jaka jest nam potrzebna (dla ciekawostki serwery obliczeniowe mają po 64 GB SWAP, więc jak widać to nic niezwykłego)

 

co do procesu, to na zrzucie ekranu jest proces "idle" (czyli tak zwany proces bezczynności) - taka metoda w systemach operacyjnych na zarządzanie wykorzystaniem CPU,

 

ponadto jeżeli jakiś proces podejrzewasz to możesz za pomocą top śledzić tylko jeden proces (zapraszam do lektury man top ;) )

 

Ad.1. odpowiedź jest banalna - bo tyle potrzebują usługi które są uruchomione na serwerze, ja widzisz na zrzucie ekranu, Twoja pamięć fizyczna RAM jest kompletnie zajęta, więc serwer korzysta ze SWAP (na szczęście SWAP jest wystarczająco duży)

 

Ad.2. Można. Możesz do tego użyć oprogramowania GParted (lub płytki LiveCD), polecam użyć płytki livecd. Pamięć SWAP jest po prostu partycją na dysku, więc można ją zmniejszyć (resize).

 

Ad.3. Dokupienie pamięci na pewno polepszy sprawę. Ponieważ nie będzie używany SWAP usługi które są uruchomione na serwerze nie będą musiały operować na pamięci dyskowej (która jest wolna) tylko na szybkiej pamięci RAM, co przyniesie wzrost wydajności serwera.

 

Ad.4. Tak jak powiedziałem wcześniej, SWAP używany jest wtedy kiedy cała pamięc fizyczna RAM jest zajęta, więc można powiedzieć że serwerowi brakuje trochę pamięci.

 

Ad.5. Tak. Fedora używa wolnej pamięci fizyczne RAM do tworzenia buforów, które przyspieszają pracę usług uruchomionych na serwerze. Działa to tak że jeżeli jest wolne miejsce w pamięci RAM to tworzony jest tam bufor, natomiast kiedy pamięci RAM zaczyna brakować bufor jest zmniejszany lub zupełnie nieużywany. Czyli kiedy system używa SWAP to wtedy bufory nie są używane, ponieważ również pamięć RAM jest całkowicie używana.

 

Ad.6. Używanie dysku twardego jako pamięci zawsze niesie spowolnienie pracy (w końcu dysk twardy jest 1000 razy wolniejszy od pamięci RAM), jednak Fedora potrafi sprytnie zarządzać pamięcią, do SWAP umieszczane są rzeczy które nie są używane, natomiast dane z których system korzysta przechowywane są w tym czasie w pamięci RAM. Dlatego spadki wydajności nie są tak bardzo odczuwalne.

 

Ad.7. Jest kilka programów do testowania, poszukaj na forum, chyba jest nawet kilka moich postów. Jednak mimo wszystko do testów użyłbym jakiegoś dysku w stylu Hirens BootCD.

 

OT: widzę, że masz na serwerze uruchomiony elektroniczny obieg dokumentów, czyżbyś pracował w jakimś Urzędzie? :)

 

Share this post


Link to post
Share on other sites

cześć

tak pracuje w Urzędzie Gminy ale nie tylko jeszcze mam inne miejsca pracy, tak to już jest w POLSCE.

 

Bardzi Ci dziękuję za pomoc

Share this post


Link to post
Share on other sites

skąd macie ten elektroniczny obieg dokumentów?

 

pracuje na jbossie?

 

ja będę na koniec tego miesiąca trenował ten temat, ponieważ obecnie uczestniczę we wdrożeniu EOD w Wojewódzkim Urzędzie Pracy, więc wtedy dopiszę coś więcej do tego tematu (nasz jest aplikacją webową, chodzi na jbossie i postgresql, na Red Hat Enterprise 5 - jako maszyna wirtualna, pracują w tym: siedziba + 3 filie, ok. 220 osób, spięte jest to wszystko vpn'ami)

 

na razie w testach coś nam jboss szwankuje, przytyka się i trzeba go restartować, możliwe że u Ciebie jest to samo,

 

Edytowano: Przytykanie się jbossa było wynikiem zbyt małego cache'u

Share this post


Link to post
Share on other sites

witam

System obiegu dokumentów mamy w wyniku projektu SEKAP - System Elektronicznej Komunikacji Administracji Publicznej zapraszam na stronę: www.sekap.pl/. Po długich sporach dołożono nam pamięci RAM i oprogramowanie działa, ale serwer musi być restartowany wieczorem, bo inaczej na drugi dzień jest lipa. Co do całego systemu to nie mam zastrzeżeń pod względem obsługi programu i jego funkcji, ale szybkość działania jest do bani.

Share this post


Link to post
Share on other sites

Tak tylko na marginesie (skoro juz odkopales ten swoj watek...) - jak sam zauwazyles (zaznaczajac na zrzucie) problemem byla (jest ?) pamieciozerna java i jej interpreter... nie napisales nawet ktora to Fedora, ale cos mam takiego czuja, ze F10 z aktualnym openjdk nie powodowalo by takich wyciekow pamieci i nie sprawialo by tylu problemow z wydajnoscia. Dystrybucyjna java w 10tce to bajka w porownaniu ze wszystkimi poprzednimi wersjami - zarowno na systemach 32 jak i 64 bit.

 

W twoim przypadku dolozenie pamieci tylko czesciowo rozwiazalo problem, a w zasadzie go tylko zamaskowalo - dlatego wlasnie serwer nadal wymaga restartow i recznego zwalniania zasobow. Obawiam sie, ze bez naprawienia javy wiecej z tego serwerka nie wyciagniesz.

 

Co do reszty (oryginalnych) pytan to juz Ci perl odpowiedzial ponad pol roku temu... ;)

Share this post


Link to post
Share on other sites

cześć

probelm w tym że my nic tam nie możemy zmieniać bo cały ten projekt jest objęty gwarancją. Dołożenie pamięci graniczyło z cudem a co dopiero jakaś modyfikacja w sofcie czy też wymiana na inny.

Share this post


Link to post
Share on other sites
cały ten projekt jest objęty gwarancją.
tak z ciekawości, kto Wam to serwisuje, na co pozwala Wam umowa serwisowa? możecie wybierać sprzęt? system operacyjny? albo edytować pliki konfiguracyjne?

 

bo jeżeli nic nie możecie robić i wszystko jest objęte umową serwisową to zgłaszaj to oficjalnie i zaczynaj naliczać kary ;>

 

jak będziesz chciał pomóc "specom" z serwisu to duże prawdopodobieństwo, że nie macie optymalnie skonfigurowanego oprogramowania: pliki cache, swap, baza danych, partycje (przepełnienie w tmp lub var), usługi, itp.

 

śledzenie zachowania aplikacji (wewnętrzny log w aplikacji) podczas problemów skonfrontowany z logami systemowymi powinien pomóc,

 

więc jak przeanalizujesz to możesz im podpowiedzieć,

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×