Tekil Mesaj gösterimi
  #10 (permalink)   iTrader 
Alt 2007-04-21, 17:29
iyinet - ait Kullanıcı Resmi (Avatar)
iyinet iyinet isimli üye çevrimiçidir (Online)
Paylaşım için teşekkürler
 
Üyelik tarihi: Sep 2002
Mesajlar: 6.223
Blog Entries: 2
Teşekkür: 2
Thanked 31 Times in 10 Posts
Tecrübe Puanı: 3
iTrader: %100/6
iyinet is just really niceiyinet is just really niceiyinet is just really niceiyinet is just really nice
Standart devam

MySQL de tum ayarlari yaptiniz, kodlarinizi duzelttiniz, yeterince belleginiz var , indexlerinizi yaratip SQL lerinizi duzelttiniz....
Hersey hizli ve guzel calisiyor.

MySQL i turbo moduna almaya hazirmisiniz?

Aslinda turbo modu diye bir mod yok ama asagidaki islemleri yaptiginizda MySQL cok daha iyi, sayfalarinizin ne kadar hizli acildigini gozlerinizle farkedebileceksiniz.

Buradaki amac disk I/O sunu en aza indirerek, bellekten en fazla faydayi saglamaktir.

Turbo 1.

key_buffer:
key_buffer index keylerinin RAM de yani bellekte saklanmasini saglar. Bir tur index cache i diyebilirsiniz.
Cok yogun calisan bir bilgisayarin en pahali yaptigi islem disk I/O sudur. Cunku en yavas yapilan islem disk I/O sudur. Bellek disk'e gore yuzlerce/binlerce kat daha hizlidir.
MySQL in disk yerine bellek kullanmasini saglayarak, I/O islemlerini en az 100 kat hizlandirmis olursunuz.

key_buffer my.cnf icinde yer alir.

my.cnf
-------

[mysqld]
...
...
key_buffer = 256Mb
...
...

Tavsiye edilen key_buffer degeri Bellek boyunuz / 4 dur.

1Gb lik bir server icin 256Mb iyi bir degerdir.

Ancak toplam indexlerinizin buyuklugu 256Mb dan az ise bu bellegi bosa harcamak anlamina gelir.


Turbo 2.

query_cache

MySQL de yaptiginiz sorgularin sonuclarinin saklandigi cache e verilen addir.
Bu deger normalde my.cnf icinde belirtilmez yani kapalidir.

Ozlellikle sikca kullanilan sorgularin sonuclarinin, cache de saklanmasi, disk I/O sunun azaltacak ve sonuclarin hemen bellekten okunmasini saglayacaktir.

Dikkat edilmesi gereken SQL sorgularinizin buyuk kucuk harf farki olmamasi.

Ornegin:

"Select ad, soyad from kullanici where kullanici_kod = 100"
ile
"SELECT ad, soyad from kullanici WHERE kullanici_kod = 100"

ayni SQL kodu olmasina karsin query cache bu kodlari farkli sanar.

Ayni sorgulari hep ayni buyuk-kucuk harf uyumu ile yazmaniz query cache optimize sekilde kullanmanizi saglar.

query cache my.cnf icinde yer alir.

my.cnf
-------

[mysqld]
...
...
query_cache_type = 1
query_cache_size = 32M
...
...

32Mb baslamak icin cok uygun. Tavsiyem 64Mb in ustune cikmayin.
__________________
Forum Reklam Site Reklam
Alıntı ile Cevapla