Re: [Linux-sunucu] Max-connections ve load average sorularim

---------

New Message Reply About this list Date view Thread view Subject view Author view Attachment view

From: Umut D. (linuxlist@gmail.com)
Date: Sat 26 Nov 2005 - 14:38:42 EET


Swap kullanmiyor olmasi RAM yetiyor anlamina gelmiyor. Size tavsiyem bu
makinayi toplamda en az 2 GB RAM ile onurlandirmaniz. Hatta 3 bile olur.
Bu sekilde en azindan DISK darbogazindan bir miktar kurtulursunuz.

Veritabani yapisi onemli. Sorgu sayisi bile problem degil ama sorgularin
akilli olmasi ve tablolarin duzgun catilmasi gerekli. Ornegin 300-400
MB'lik bir veriseti icinde bile veritabani yoneticisini zora
sokabilirsiniz.

Devrim'in dedigi gibi, verilere ve/veya sorgulara el atmaniz gerekebilir.

Bir de, yeterince RAM takviyesi yaptiktan sonra, eger yapilan islemler
genelde READ tipinde ve farkli istemciler tarafindan yapilan talepler
bile ayni karakterde ise MySQL'in QUERY CACHE mekanizmasini yuksek
degerlerle aktive edebilirsiniz. Yavas bir disk ile yaptigim testlerde,
QUERY CACHE olmadan ikinciden sonra hep 20 saniye civarinda calisan bir
READ agirlikli sorgu serisi, CACHE aktif iken 3-5 saniyeye dusuyor.

Disklerin yapisi nedir? SATA, IDE, SCSI? Basarili bir kontrol kartiyla
SCSI diskler inanilmaz performans farkı sağlıyor. Örneğin ilave bir SCSI
disk ile sadece MySQL verilerini bu ikinci diskten çalıştırsanız fark
görülmeye değer olacaktır.

Bir başka problem, eğer PHP kullanıyorsanız PERSISTENT CONNECTIONS ile
olabilir. Tanim olarak PERSISTENT CONNECTION, bir kere açılan ve o
Apache/PHP Thread'e baglanan, sonraki taleplerde yeniden CONNECTION
ESTABLISHMENT zahmetinden kurtaran bir islem. Ama diyelim ki Apache'niz
MaxThread olarak 100 degerini gosteriyor ve sizin 100 tane veritabaniniz
var MySQL icinde. PERSISTENT TIMEOUT olana kadar MySQL-PHP-Apache
tarafindan 100x100=10000 tane connectiona ihtiyaç duyulacak, bunların
pek çoğu da hiç kullanılmayacak belki tekrar. Eğer illa PERSISTENT
kullanmak istiyorsanız ya tüm PHP işlemlerinizde mümkün mertebe aynı
MySQL USERNAME/PASSWORD değerlerini kullanmaya çalışın ya da Apache
threadlerinizin sayısını düşük tutun. Ya da PHP içinden persistent
connections'i yasaklayın.

Ahmet Tellioglu wrote:

>Arkadaslar selam;
>
>My.cnf ve apache icindeki max-connections kismini gercekten maksimum
>olarak nasil ayarlamaliyim? Mesela 10.000 verebilir miyim?
>
>Server cok yogun, baglanti hatalari yasiyorum. Load average 12'lerde
>dolasiyor yogun saatlerde... Bunun 2'nin altinda olmasinin saglikli
>oldugunu soylediler, ama bunu nasil dusurecegimi soylemediler, maalesef
>Bunu dusurebilmenin yollari nelerdir?
>
>Gereksiz servisler yok bildigim kadariyla uzerinde, Apache + mysql en
>oncelikli servislerim.
>
>p4 3.0 ht destekli makina, 1 Gb ram, swap kullanimi 0, Red Hat
>Enterprise 3.0.
>
>Cevaplara simdiden tesekkurler.
>Ahmet.
>
>Not:
>i) Sayfalardaki kodlari ben hazirlamadim, pek fazla mudahale sansim yok,
>maalesef..
>ii) Tesekkurler Devrim Bey...
>
>_______________________________________________
>Linux-sunucu mailing list
>Linux-sunucu@liste.linux.org.tr
>http://liste.linux.org.tr/mailman/listinfo/linux-sunucu
>
>
>
_______________________________________________
Linux-sunucu mailing list
Linux-sunucu@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-sunucu


New Message Reply About this list Date view Thread view Subject view Author view Attachment view

---------

Bu arsiv hypermail 2.1.2 tarafindan uretilmistir.