lostyazilim

Bu yazımlar arasında performans açısından bir fark olur mu?

4 Mesajlar 926 Okunma
lstbozum
wmaraci reklam

101222 101222 WM Aracı Anonim Üyelik
  • Üyelik 22.01.2019
  • Yaş/Cinsiyet - /
  • Meslek
  • Konum
  • Ad Soyad ** **
  • Mesajlar 257
  • Beğeniler 68 / 43
  • Ticaret 0, (%0)
1. Örnek

$this->db->where(‘id’,1);
$query = $this->db->get(‘ayarlar’);
return $query->row();


2. Örnek

return $this->db->where(‘id’,1)->get(‘ayarlar’)->row();


Verdiğim örneğe göre 2 kod arasında performans bakimindan bir fark olur mu ?
 

 

wmaraci
reklam

Mfa Mfa WM Aracı Kullanıcı
  • Üyelik 18.06.2019
  • Yaş/Cinsiyet 29 / E
  • Meslek Mezun
  • Konum Ankara
  • Ad Soyad M** A**
  • Mesajlar 986
  • Beğeniler 304 / 308
  • Ticaret 1, (%100)
Daha az kod daha iyi performans, tabi kodların derlenme mantığını da bilmek gerekiyor. Optimizasyon yazılımda son noktadır. Üstadlar cevap verecektir.
Mesajı uplamış olayım :)
101222

kişi bu mesajı beğendi.

kzlsn kzlsn Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 08.04.2018
  • Yaş/Cinsiyet 24 / E
  • Meslek serbest
  • Konum İstanbul Anadolu
  • Ad Soyad S** K**
  • Mesajlar 127
  • Beğeniler 24 / 31
  • Ticaret 1, (%100)
Tabikide alttaki kod daha stabil olucaktır. Üstteki işlem için 3 Thread açıp tek tek gezecektir. Alttaki için ise 1 tane Thread Açıp direk onu çalıştıracaktır. Bu farkı belki gözümüzle göremeyiz ama bu işlem epey bi uzayınca saniyeler hatta dakikalar farkedicektir.
101222

kişi bu mesajı beğendi.

AhmetKarabulut AhmetKarabulut WM Aracı Kullanıcı
  • Üyelik 11.09.2013
  • Yaş/Cinsiyet 30 / E
  • Meslek Bilgisayar Mühendisi
  • Konum İzmir
  • Ad Soyad A** K**
  • Mesajlar 1077
  • Beğeniler 361 / 361
  • Ticaret 33, (%100)
Böyle şeyleri deneyerek öğrenmek isterseniz denemesi çok basit!

Aşağıdaki denemeyi yapmanız yeterli :)



$baslangic_timestamp= microtime(true);

for ($i = 1; $i <= 1000; $i++) {

//bu aralığa önce 1. kodu sonra 2. kodu yazın 1000 kez çalışacak.
$this->db->where('id',1);
$query = $this->db->get('ayarlar');
return $query->row();
//bu aralığa önce 1. kodu sonra 2. kodu yazın 1000 kez çalışacak.

}

$bitis_timestamp= microtime(true);
$gecen_zaman= $bitis_timestamp- $baslangic_timestamp;
echo "İşlem ".$gecen_zaman." milisaniye boyunca sürdü..";
kzlsn 101222

kişi bu mesajı beğendi.

wmaraci
wmaraci
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al