Cpu neden artar...!!!

  • Konbuyu başlatan secret ^ love
  • Başlangıç tarihi
S
secret ^ love
Misafir
selam arkadaslar sizlere benim bir sorum olacak.
Cpu bir forumda neden artar.Yani ne sebeler cpu nun artmasina neden olur.Saldiri hek gibi konular haricinde.ne gibi ozellikler cpu yu artirir bi bilgi verirseniz sevinirim ..tskrlr
 
0
Onaylı Üye
Üye
Katılım
6 Ekim 2006
Mesajlar
2,241
Tepki puanı
4
Konum
Eskişehir
neden msyql sorgulari yani ne olurki bu sorgularda artirir..biraz aciklarsaniz sevinirim

mysql Sorgusu Arttıkça.. Makina Yorulur..
O Nedenle Forumlarda Her 60 sn. de bir arama yapmaya izin vardır.
Mesela... Sadece Bir Örnek.. Mysql Sorgusu Olarak En çok Yoran Aramadır.

Bir Örnek Daha Vereyim ki Bugün Kendimi Tanıyamaz Bir hale Geldim..
Sen Dağınık odanda Birşey Ara Saatlerce CPU'nun Arttığını Göreceksin.
 
1
Onaylı Üye
Üye
Katılım
25 Eylül 2006
Mesajlar
5,893
Tepki puanı
88
Konum
www.odatv.com
neden msyql sorgulari yani ne olurki bu sorgularda artirir..biraz aciklarsaniz sevinirim
aslında bana kalmaz burada açıklamak çünkü tam bilmiyorum , ama kullanıcı sayısı artıp ,mysql sorguları çoğalınca cpu ya yükleniyor , ram yükseltmek bir çözüm , ama daha iyisi server sizinse , optimize ettirmeniz gerekir :( galiba :)

forum sitelri çok cpu yiyor , başa dert yani kolay gelsin
 
S
secret ^ love
Misafir
mysql Sorgusu Arttıkça.. Makina Yorulur..
O Nedenle Forumlarda Her 60 sn. de bir arama yapmaya izin vardır.
Mesela... Sadece Bir Örnek.. Mysql Sorgusu Olarak En çok Yoran Aramadır.

Bir Örnek Daha Vereyim ki Bugün Kendimi Tanıyamaz Bir hale Geldim..
Sen Dağınık odanda Birşey Ara Saatlerce CPU'nun Arttığını Göreceksin.

bilgi icin tesekurler
 
S
secret ^ love
Misafir
aslında bana kalmaz burada açıklamak çünkü tam bilmiyorum , ama kullanıcı sayısı artıp ,mysql sorguları çoğalınca cpu ya yükleniyor , ram yükseltmek bir çözüm , ama daha iyisi server sizinse , optimize ettirmeniz gerekir :( galiba :)

forum sitelri çok cpu yiyor , başa dert yani kolay gelsin

daha 5000 kullanici yeni oldu ve arti ramde 2 gb ram ..sasdim kaldim
 
Root
Root
İyinet Ekibi
Onaylı Üye
Katılım
2 Eylül 2002
Mesajlar
5,043
Tepki puanı
79
Konum
SEO
neden msyql sorgulari yani ne olurki bu sorgularda artirir..biraz aciklarsaniz sevinirim

SQL sorgulari tablolardan yapilir.
Tablolari, yapilandirilmis dosya gibi dusunebilirsiniz.
Tablo boyu ne kadar kucuk olursa SQL sorgulari o kadar hizli calisir.

+ MySQL o tabloyu acip okur icindeki veriyi bulur sizve verir.

Basit bir ornek:
Diyelimki MySQL sizsiniz...
1. Notepad ile 5K lik bir dosyayi actiniz. 'Adana Mersin' diye arattirdiniz. Arama sonucundaki tum 'Adana-Mersin' leri Notepad ile actiginiz yeni bir dosyaya koydunuz. Bu islem toplam 1 dakikanizi alsin.
2. Notepad ile 2Mb lik bir dosta actiniz. Sadece dosyanin acilmasi 120 saniye sursun. Arama sonucundaki tum 'Adana-Mersin' leri Notepad ile actiginiz yeni bir dosyaya koydunuz. Bu islem toplam 1 saatinizi alsin.

Sonuc: Tablo boyu buyudukce, harcanan CPU ve I/O artar, sorgu sureleri uzar.

Tablo boyunun buyuyecegini hesaplayan MySQL ve benzeri veritabani yaraticilari, INDEX denen objeleri yaratmislar. Indexi bir tablodaki bir verinin nerede oldugu bilgisini saklayan baska bir dosyadir. Hani kitaplarin basinda hangi konunun hangi sayfada, kitaplarin sonunda hangi kelimenin hangi sayfalarda gectigi yazilirya, iste index odur. Aradiginizi hizlica bulmanizi saglar.

Hizlica bulunca CPU ve I/O harcamasi azalir.

Sonuc: Tablolar uzerinde gereken indexler yok ise buyuyen tablolar fazla CPU ve I/O harcarlar.

Bir SQL sorgusunun performansi: tablo boyuna, tablo uzerindeki indexlere ve kac tablo uzerinde join yapildigina baglidir.

Ek olarak SQL den donen sonuclarin filtrelenmesi "WHERE" sonuclarin daha hizli donmesini saglar ve gereksiz sonuclarin networkte tasinmasini onler.
 
0
Onaylı Üye
Üye
Katılım
7 Ocak 2006
Mesajlar
1,567
Tepki puanı
0
dosya indirtiyorsan cpu artar , mysql sorgulardan artar
artarda artar :)
 
1
Onaylı Üye
Üye
Katılım
25 Eylül 2006
Mesajlar
5,893
Tepki puanı
88
Konum
www.odatv.com
SQL sorgulari tablolardan yapilir.
Tablolari, yapilandirilmis dosya gibi dusunebilirsiniz.
Tablo boyu ne kadar kucuk olursa SQL sorgulari o kadar hizli calisir.

+ MySQL o tabloyu acip okur icindeki veriyi bulur sizve verir.

Basit bir ornek:
Diyelimki MySQL sizsiniz...
1. Notepad ile 5K lik bir dosyayi actiniz. 'Adana Mersin' diye arattirdiniz. Arama sonucundaki tum 'Adana-Mersin' leri Notepad ile actiginiz yeni bir dosyaya koydunuz. Bu islem toplam 1 dakikanizi alsin.
2. Notepad ile 2Mb lik bir dosta actiniz. Sadece dosyanin acilmasi 120 saniye sursun. Arama sonucundaki tum 'Adana-Mersin' leri Notepad ile actiginiz yeni bir dosyaya koydunuz. Bu islem toplam 1 saatinizi alsin.

Sonuc: Tablo boyu buyudukce, harcanan CPU ve I/O artar, sorgu sureleri uzar.

Tablo boyunun buyuyecegini hesaplayan MySQL ve benzeri veritabani yaraticilari, INDEX denen objeleri yaratmislar. Indexi bir tablodaki bir verinin nerede oldugu bilgisini saklayan baska bir dosyadir. Hani kitaplarin basinda hangi konunun hangi sayfada, kitaplarin sonunda hangi kelimenin hangi sayfalarda gectigi yazilirya, iste index odur. Aradiginizi hizlica bulmanizi saglar.

Hizlica bulunca CPU ve I/O harcamasi azalir.

Sonuc: Tablolar uzerinde gereken indexler yok ise buyuyen tablolar fazla CPU ve I/O harcarlar.

Bir SQL sorgusunun performansi: tablo boyuna, tablo uzerindeki indexlere ve kac tablo uzerinde join yapildigina baglidir.

Ek olarak SQL den donen sonuclarin filtrelenmesi "WHERE" sonuclarin daha hizli donmesini saglar ve gereksiz sonuclarin networkte tasinmasini onler.

index i nasıl yapabiliriz örnek tablo ;
-- Tablo yapısı : `cpg149_sessions`
--

CREATE TABLE `cpg149_sessions` (
`session_id` varchar(40) NOT lisanssız default '',
`user_id` int(11) default '0',
`time` int(11) default lisanssız,
`remember` int(1) default '0',
PRIMARY KEY (`session_id`)
) TYPE=MyISAM COMMENT='Used to store sessions';

--
-- Tablo döküm verisi `cpg149_sessions`
--

INSERT INTO `cpg149_sessions` VALUES ('2c41d2869b9cabfd646cfbe7fb2e3873', 0, 1172053312, 0);
 
S
secret ^ love
Misafir
iyinet ustam bilgler icin cok tesekurler gayet guzel ve acik bir sekilde belirtmissin sebebleri..

Unutmam arkadasim dosya indirtmsi olurmu ..hem forum hem dosya nerde gorulmus .. :)
 
Root
Root
İyinet Ekibi
Onaylı Üye
Katılım
2 Eylül 2002
Mesajlar
5,043
Tepki puanı
79
Konum
SEO
index i nasıl yapabiliriz örnek tablo ;

Indexlere SQL sorgulariniza bakarak karar vermelisiniz.

Yani oyle kafadan index yaratilmaz.

Fazla index te zarar verebilir, indexler okuma islemini hizlandirir ama yazma islemini de yavaslatirlar.

Tablolar uzerindeki 'primary key' ler zaten kendiginden indexlidirler. Bunlar icin ek index yaratmaniza gerek yok.

Bu artik biraz fazla detay ve teknik ama anlayabilecekler icin soyluyorum: SQL sorgularinizi "describe" ile inceletip indexlere karar verebilirsiniz.

Ek olarak tecrubeye bagli olarak (benim isim Veritabani uzmanligi) sadece tabloya bakarak basitce (kesin olmamak sarti ile) indexleri tahmin edebilirsiniz.

Ornegin asagidaki tablo icin session_id ve user_id uzerinde index yaratilabilecegini dusunuyorum. session_id uzerinde zaten primary key indexi koyulmus. Ama dogru olan boyle bakip karar vermek degildir. Sorgularin ve Tablolarin incelenmesi esastir.


CREATE TABLE `cpg149_sessions` (
`session_id` varchar(40) NOT lisanssız default '',
`user_id` int(11) default '0',
`time` int(11) default lisanssız,
`remember` int(1) default '0',
PRIMARY KEY (`session_id`)
) TYPE=MyISAM COMMENT='Used to store sessions';
 
0
Onaylı Üye
Üye
Katılım
11 Kasım 2004
Mesajlar
284
Tepki puanı
0
daha 5000 kullanici yeni oldu ve arti ramde 2 gb ram ..sasdim kaldim

iyinet konuyu iyi açıklamış. Query lere özellikle bir kez daha bak. Görmeden birşey demek zor ama bence sorun querylerde.

Özellikle CPU ya yüklenen sayfayı ve query yi bulmaya çalış. Gerisi zaten çok kolay.
 
Root
Root
İyinet Ekibi
Onaylı Üye
Katılım
2 Eylül 2002
Mesajlar
5,043
Tepki puanı
79
Konum
SEO
bu indexi her tablo nun basinami koymam gerek ..!!

1 tablo uzerinde 1 den fazla index yaratilabilir.

Indexler tablonun kolonlari uzerinde yaratilirlar.

Ornegin su sekildeki bir tablo uzerinde permutasyon olarak 6 adet index yaratilabilir: (7 index mantikli olmaz, sadece bilgi amacli goteriyorum)

CREATE TABLE `cpg149_sessions` (
`session_id` varchar(40) NOT lisanssız default '',
`user_id` int(11) default '0',
`time` int(11) default lisanssız,
)

Indexler:
1. session_id
2. user_id
3. time
4. session_id , user_id
5. session_id , time
6. user_id , time
7. session_id , user_id , time
 
0
Onaylı Üye
Üye
Katılım
8 Aralık 2006
Mesajlar
400
Tepki puanı
0
Konum
Nasa
gercektende cok guzel aciklamalar agziniza saglik.bendede var bu sorun ama bilgim olmadigindan bakamiyorum..
 
S
secret ^ love
Misafir
evet guzel aciklamlar bende fazla anlamdigimdan konuyu biseyler karistirmak istemiyoruym.bakalim bir cozumunu bulacagiz forumdaki bu konulara ilgili basliklari okuyorum ..
 
1
Onaylı Üye
Üye
Katılım
25 Eylül 2006
Mesajlar
5,893
Tepki puanı
88
Konum
www.odatv.com
kullanılmayan ( 0 ) table rı çıkartmak gerekirmi , yoksa kalsa zararı olmazmı :)
 
Root
Root
İyinet Ekibi
Onaylı Üye
Katılım
2 Eylül 2002
Mesajlar
5,043
Tepki puanı
79
Konum
SEO
kullanılmayan ( 0 ) table rı çıkartmak gerekirmi , yoksa kalsa zararı olmazmı :)

Bu tamamen uygulamaniza bagli.
Uygulama bu tablolari belki de bir noktadan sonra kullanacak, yada o tablolara yazilacak kriter origramda acik olmayabilir. (if kriter then tabloya yaz gibi)

Ben o tablolari elleme derim.
 
Geri
Üst