İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

"Siten çok fazla CPU kullanıyo" ne demek ya ???

O

onderon

Misafir
Sitemi kapattılar.
Gerekçe de sitedeki scriptler çok fazla CPU kullanıp serverın performansını düşürüyormuş.

Bu nasıl bir mantıktır anlamıyorum.
Yanlış anlamayın, sayfalarda öyle kallavi kodlar filan da yok.
Forum da yapamayacaksak ne halta yarar bu serverlar anlamıyorum.

İşin kötüsü o kadar para sayıyoruz hizmet için.
Beyefendiler incelik gösterip siteni kapatıyoruz deme gereği bile duymuyorlar.

3 kere mail attım, sonuncusunda teşrif ettiler.
sitem bir haftadır kapalı.

Bu adamlara küfür etmiycen de ne edicen şimdi sorarım size..
 

baldor

0
İyinet Üyesi
Katılım
24 Şubat 2003
Mesajlar
660
Reaction score
0
Konum
Bi Bilsem :)
selam onderon... mesajını okuduğumda gerçekten güldüm :) seninde dediğin gibi bir forum yapamayacaksan ne işe bu hizmetler. neyse... bak şimdi, eğer sitene tekrar kavuşursan yapman gereken birkaç şey yazıyim... eğer forumu kendin yazdıysan scriptlerin veritabanından okuduklarını sayfayı bastıktan sonra deforme etmeleri sağla. yani ram'lerden silsinler. bu o adamcıkların nazlanmalarını büyük ölçüde giderir. eğer hazır forumlardan kullanıyosan bence hemen host firmanı değiştir. sen orayı sadece HTML göstermek için almadın. e adam istediğin kodları taşıyamayacak kadar zayıfsa ne diye ona para kazandırasın ki?

saygılar...
 
O

onderon

Misafir
Selam baldor,

Cevap için teşşekkürler.
Kodları kendim yazıyorum.

Bu arada siteyi açtılar ancak.
Söyle bir mesaj geldi:
"Siten 2GB.lık BW tarafiğini 2 günde bir dolduruyor.
Ya her ay 15$ bayılacaksın yada Siteni Yurtdışındaki serverlara taşıyacağız."

Taşıyalım dedik ne yapalım. Elimiz mahkum.

Bu arada şu "sayfayı bastıktan sonra deforme" olayını pek bilmiyorum.
CGI için bir tavsiyen olursa sevinirim...

Eyvallah :)
 

baldor

0
İyinet Üyesi
Katılım
24 Şubat 2003
Mesajlar
660
Reaction score
0
Konum
Bi Bilsem :)
selam onderon

sayfayı bastıktan sonra deforme lafı ile şunu kastedmiştim...

veritabanından bilgileri okuduğun zaman bu bilgiler ramlere yazılır bildiğin gibi. eğer sen o bilgileri bir şekilde ramlerden sildirmezsen, senin site çok CPU kullanıyo :) lafını bida duyarsın. web sitende ne tür kodlar kullandığını bilmiyorum, yani PHP mi ASP mi gibi. örneğin PHP de bu işi aşağıdaki kodları kullanarak yapabilirsin.

<?php
mysql_free_result($degisken_adi);
?>

aslında programların işi bittiğinde ramler boşaltılır. ama sanırım MySql işin içinde olduğunda bu yapılmıyo. emin değilim, dikkat et.

CGI için tavsiyeler www.cgi-resources.com adresinde. orda benim bildiğimden daha çok şey var...

görüşmek üzere...
kendine iyi bak...


he bide, sitenin adresi ne?
 
O

onderon

Misafir
Tekrar selam baldor.

Yardımların için teşekkür ederim.
Yanlız şöyle bir atasözü vardır.

"Ne aradığını bilmeyen bulduğunu anlayamaz"

Sözün kısası biraz araştırma yaptım. Hazır yazılımlarda bile bu tür bir kod bulamadım. Herkes benim yaptığım gibi yapmış.

ASP'de sanırım "Record Set" olayı var. MySQL için de kapatma komutları mevcut.

PHP'ninkini sen yazmışsın zaten.

Ben Perl ile yazıyorum. Datalar için MySQL değil text dosyaları tutuyorum.


Örnek Döngü;
----------------------------------------------------
open (dosya, "<veriler.txt"); @icerik = <dosya>; close (dosya);

foreach $rec (@icerik)
{
chomp($rec);
($ilkveri,$ikinci veri)=split(/\//,$rec);
print "Satırlar buraya yazılsın $ilkveri - $ikinci veri";
}

--sanırım burada $rec için bir kapatma komutu ulabilir. neyse--
--------------------------------------------------

yukarıdaki döngüyle dosyadaki tüm veriyi satır satır alabiliyorum.
Sadece istediğim veriyi almak içinse "if" döngüsü koyuyorum.



Dediğim gibi herkes böyle yazmış ve herhangi bir kapatma komutu yok.

Yanlız şöyle bir fikir geldi aklıma. Pek bir işe yarayacağını sanmıyorum fakat aynı döngü aşağıdaki gibi yapılırsa belki olur.

----------------------------------------------------
open (dosya, "<veriler.txt"); @icerik = <dosya>;

foreach $rec (@icerik){
chomp($rec);
($ilkveri,$ikinci veri)=split(/\//,$rec);
print "Satırlar buraya yazılsın $ilkveri - $ikinci veri";
}

close (dosya);
--------------------------------------------------

Değişen tek şey dosyayı döngüden sonra kapatmak.
Bilmiyorum. Ben bişey anlamadım.

Yazılımcı değilim, yap boz şeklinde öğrendim.
Haklı olarak şöyle diyebilirsin.
"E be kardeşim. bilmediğin şeyi niye kurcalıyosun. Bak bozdun elalemin serverını" :)

Nerden bulaştık şu CGI olayına ya
Şimdi dön dönebilirsen.
 

baldor

0
İyinet Üyesi
Katılım
24 Şubat 2003
Mesajlar
660
Reaction score
0
Konum
Bi Bilsem :)
selam onderon

"abi sen nettiiin" diye başlayan bir mesaj yazcaktım ama yüreğine inmesin diye düşündüm, vazgeçtim. o aklına gelen şey varya, ha, işte onu mutlaka yapmalısın... çünkü açtığın her dosya bir daha kapanmamak üzere açılır. sen kapatmazsan scriptin ramlerden silinene kadar o dosyalarda orda kalır. scriptte öyle hemen ramlerden silinmez, bilgisayar hazırda bekletir genelde.

şöyle bir senaryo düşün;

bir yazı dosyasının büyüklüğü 1Kb olsun. eğer bu dosya 1000 defa açılırsa 1000Kb olur, yani ~1Mb. yazdığın kodlar derlendiğinde ~15Mb civarında bir ram alsa kendine toplam 16Mb. ee adamın serverlarında zaten 256mb ram olsa zaten sen %6.25 ini kullanıyo olursun. hadi %5 olsun. peki bu adam bu server ı 20 tane site içinmi host ediyo? hayır, en azında 100 site için. farzetki adamın 512mb rami olsun, sana verilen alan 5,12mb olur. e şimdi adam sana niye böle demesin...

ama bak, dosyaları o şekilde kapatırsan böle bir sorun olmaz. inşallah :)

birde benden tavsiye: forumunu bu şekilde dosyalarda saklamak yerine bence MySql veritabanında sakla. herşey hem çok daha kolay, hemde çok daha az CPU kullanarak yapılabilir :)

MySql bu tür veri saklama, veri arama gibi işleri yapmak için tasarlandı. ama düz metin dosyası bu iş için yapılmadı. bunu bence bi düşün

neyse, çok gevezelik ettim... kusura bakma

görüşmek üzere, kendine iyi bak...
kolay gelsin
 
O

onderon

Misafir
BİLMEDEN CANAVAR YARATTIK DESENE :)

Valla hocam her kimsen çok saol.

Ben hiç öyle düşünmemiştim.
Hemen serverdakilere bir mesaj çekip. durumu düzelteceğimi bildiriim.

Yurtdışına şutlamasınlar bizi :)

İlgilendiğin için tekrar teşekkür ederim.

Sağlıcakla kal..
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst