İyinet'e Hoşgeldiniz!

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

Kayıt Ol!

Bir webmasterin yapmasi gereken optimizasyonlar

Eglence-Siteleri

0
İyinet Üyesi
Katılım
1 Şubat 2006
Mesajlar
762
Reaction score
0
Merhabalar
Bu konudu PHP veya herhangi baska bir bölüme de acabilirdim ama burasinin daha uygun oldugunu düsündüm.
PHP ile birseyler yapmaya calisirken aklima geldi ve sorayim dedim. Daha önce de hostinglerden CPU yiyor makinayi zorluyor gibi yorumlar aldigim ve bunu sik sik okudugum icin Hosting firmalarina sormak isterim bu konuda neler yapmamaiz nelere dikkat etmemiz lazim ?

CPU yiyen ayni anda online olan 200 kisinin MYSQL e gönderdigi sorgu mu ? Yüklenen resimler mi ? Yoksa phpbb gibi hazir CMS lerin kullanici dostu diye template ile calismasi ve kodlarda sürekli DB ye baglanmasi mi ?

Biz kodlarken neye dikkat etmeliyiz ? Ayni anda 200 kisinin online olabilecegi bir sitede neleri minimum düzeyde tutmali, asil neye önem vermeliyiz ?

Umarim bu konu diger webmasterlarin da ilgisini ceker ve belki de bir kac hosting firmasinin müsteri kaybetmesine / iliskiyi kesmek zorunda olmasina ve webmasterin baska hosting arama telasini azaltir.

Iyi hafta sonlari
 

Turkmucit

0
İyinet Üyesi
Katılım
18 Ocak 2006
Mesajlar
1,523
Reaction score
0
naçizane fikirlerimi paylaşmak isterim.
Grafikleri küçük boyutlarda ve az sayıda tutulursa çok faydalı olur.Veritabanları içinse cache kullanılarak kullanıcıların dataya erişmeleri azaltılabilir.Kodları siz yazıyorsanız session ve çerezleri kullanarak dataya erişim enaza indirilebilir.
Kolaylıklar..
 

Eglence-Siteleri

0
İyinet Üyesi
Katılım
1 Şubat 2006
Mesajlar
762
Reaction score
0
Tesekkürler, umarim hosting firmasi sahipleri de yazar.

Sessionlar yormaz mi sizce ?

Resimler tamam ama veritabanlari icin cache kullanimi anlamadim acarsaniz sevinirim.
 

Turkmucit

0
İyinet Üyesi
Katılım
18 Ocak 2006
Mesajlar
1,523
Reaction score
0
sessionlar yormaz küçük değişkenlerdir nihayetinde.Yani bir veritabanına bağlanmak kesmek ve onu hafızada tutmak düşünüldüğünde lafı olmaz birkaç değikenin.
benim bahsettiğim session kullanımı örneğin bir haber numarası var ve haber başlığı ve linki lazım.bunu bir sayfada elde edip kullanmadığın link adı ve yolunu sessiona atarsın ve sadece noyu gönderdiğin diğer sayfalarda bu değerleri sessiondan alarak kullanırsın yani tekrar veritabanına bağlanıp şu nolu haberin adını linkini ver demezsin.
Veritabanlarında cache kullanımını yöneten küçük kod tanımlamaları yapılıyor.Bu cache uygulamalarının değişik şekilleri var asp.net sitesinde ing. videoları var. Ama basitçe sayfa içerisinde tanımlama yapıyorsun ta enüstte atıyorum cache 5saniye belirliyorsun 5 saniye içinde tekrar veritabanına erişilmek istenirse kullanıcıya cachedeki veritabanı sunuluyor.
Hem bu süreyi istediğin şekilde kullanarak hemde diğer cache yöntemleri ile gerekli veritabanı ferahlamasını sağlayabilirsin.Birde DATASET kullanımı ,yerinde yapılırsa çok faydalı olduğunu duymuştum .Son olaarakta eğer örneğin haber no dan haber adı alacaksan datadan sadecee bunu isteyecek sorgular yaptırmalısın
yani "select * from haberler where haberid=15 "
yerine "select haberadi from haberler where haberid=15 "
yapmak çok daha az yorar datayı.
Enson olarak ta bundan tam emin değilim ama aramalrı süzmeleri indeksli bir alan üzerinden yapmak hız olarak faydalı dolayısıyla şişme gibi durumlarada faydalı yani haberid birincilanahtar ise haberid yi where lerde kullanmak.
 

Eglence-Siteleri

0
İyinet Üyesi
Katılım
1 Şubat 2006
Mesajlar
762
Reaction score
0
Cok tesekkürler,
SQL sorgusunda lazim olani almak gibi islemleri yapiyorum zaten, ve cok aranan veya basvurulan sütunlari indekslemek gercekten cok hiz getiriyor. Yalniz 5 sn de icinde tekrar vt ye baglanirsa cache den oku güzel bir fikir, php de buna bakmam lazim.

Haber id si ve diger bilgiler cekildiginde haber basligi ve linkini sessiona atamak güzel bir fikir ama eger bir sayfada 10 haber gösteriyorsaniz veya 20 haber , session sisecektir gibime geliyor. Gerci simdiye kadar hic öyle ayni anda cok kullanicinin online oldugu bir sitem olmadi olduysa, en son hatirladigim eglence sitelerinde son 5 dk da 600 kisi ayni anda online olmustu max. ama herhangi bir sorun olmadi. Umarim daha cok kisinin ayni anda oldugu projelerim olur veya projelerimden biri böyle bir durum yasar ve bu konuda ne kadar eksik oldugumu görebilirim.

Baska yorum ve aciklamalar varsa onlari de görmek iyi olacaktir. Forumun yeni hali nedeniyle alt kategorilerdeki son atilan mesajlar ana sayfada görünmüyor ve konu kayboluyor :(
 

ErsaT

0
İyinet Üyesi
Katılım
9 Temmuz 2005
Mesajlar
200
Reaction score
0
"Select haberadi From haberler where haberid = $haberid limit 1"
Bu şekilde limit 1 diyerek tablodaki bütün kayıtların taranmasına engel olmuş oluyoruz. haberid numaralı bir tane vardır belki ama bulsa bile tüm kaydı taradığını biliyorum.
-
Sayfa altlarında MySQL bağlantılarını kapatabiliriz.
"mysql_query" ile bağlantı yapıyoruz bu bağlantıları sayfa altlarında kapatmalıyız.

mysql_close();

Bu fonksiyon kullanıldığında büyük bir fark oluyor.
-
Sayfa izlenimi veya gösterim sayan sayfalarda aynı kullanıcının birden fazla yaptığı gösterimleri saydırmamak ta işe yarar;
PHP:
$gosterimcookie = $_COOKIE[gosterimid];
if($gosterimcookie != $haberid) {
setcookie("gosterimid","$haberid", time()+10000);
	mysql_query("update haberler set hit=(hit+1) where no = $haberid");
}

Bu şekilde aynı haberin ikinci kez okunmasında "Update" fonksiyonu çalışmayacak ve boşuna sorgu yapmamış olacak.
 

Eglence-Siteleri

0
İyinet Üyesi
Katılım
1 Şubat 2006
Mesajlar
762
Reaction score
0
mysql_close demeye gerek yok actiginiz baglantiya göre degisiyor. normal connect olursaniz zaten otomatik kapatiyor ancak mysql_pconnect kullanirsaniz kapatmaniz gerekiyor diye biliyorum. Yanlissam düzeltin.

Tabi her halükarda kapatmak iyidir.

Haberid den basladik devam edelim, nasilsa sistemler ayni. Ben genelde IP kontrolü yapiyorum, oylamada da ayni sey. Cünkü cookie kapatilabilir, JS engellenebilir. En temizi yine öyle. Gerektiginde db ye yazilan ip kontrolüyle siteye pespese yapilan istekleri engelleyebilirsiniz, o acidan yararli olur.

Zaten oylama veya bu tür seylerde ayni ipnin oylamasi sorun degilse dediginiz cookie kullanimi mantikli.
Ama bu sefer yine if döngüsü ile ugrasiyorsunuz. Sürekli if leri kullanmak mi yoksa bir kerede db ye baglanip Update etmek mi ?

Bu konuda sistem bilgisi gerekiyor, bende o yok, bilen biri varsa ve yorumlarsa sevinirim.
Umarim konuya cevap verenler ilk mesaja bakip oraya ek yaparlarsa konu tek bir yöne gitmez ve herkese faydali olur.
 

Turkmucit

0
İyinet Üyesi
Katılım
18 Ocak 2006
Mesajlar
1,523
Reaction score
0
sürekli ifler ile dataya bağlanmak çok farklı.İfleri çalıştıran işlemci ama dataya bağlanmak ayrı bir iş .onuda işlemci yapıyor ve oda yoruyor tabi ama ben ikisinin kıyaslanamayacağını düşünüyorum bilgisayar için ifler çok kısa süreli işler.Tecrübeyle görünen ve mantığa uyan o.
 

Eglence-Siteleri

0
İyinet Üyesi
Katılım
1 Şubat 2006
Mesajlar
762
Reaction score
0
Belki bugün birileri birseyler yazar. Bu yeni düzen yüzünden ana sayfada gözükmeden konu kaynayip gidiyor.
 

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