php: oturumları veritabanında vs

2 Cevap php

Ben bir veritabanından memeber (daha fazla veya daha az 10 üye) alır bir sınıf var.

Benim soru: bu oturumun dizide sadece bir kimlik bırakarak, onlara db (MySQL) her zaman almak veya oturumun dizide doğrudan bunları saklamak için daha verimli?

Ve performans açısından fark kadar büyük? (Bir veritabanı verilen 100.000 satır demek)

2 Cevap

Eğer zaten oturumda bir kimliğini saklamak konum göz önüne alındığında, oturum en mantıklı. Bir session_start yapıyor () ve oturum bilgilerini yükler ondan sonra 1 veya 10 ürün yükledim olsun (onlar gerçekten büyük değilseniz ama herhangi bir durumda bir sorun olacak) büyük ölçüde ilgisiz yani.

Yani oturumu ile sopa.

Eğer hızı kullanıma APC veya memcache gibi bir bellek önbellek gerçekten endişe alırsanız. Dosya sistemi veya veritabanından 10 öğeleri için hızı endişe bir oyalama. Fark alakasız olacak kadar az olacak.

Not: Yukarıdaki iki şeyi varsayar:

  1. Sorgu (100k üzerinden 10 satır alınıyor 0,1 saniyenin altında yapılabilir olmalıdır) performanslısı; ve
  2. Sen değil 10 bir sorgu yapıyoruz.

Eğer 'verimli' demek ne bağlıdır. Kişinin zaman verimli, kişinin disk alanı verimli. Gereksinimleri yelpazenin aşırı iki ucunda sürece ve bu, birbirlerine karşı iki yargılamak çok zor. Muhtemelen Tamam, sadece problemleri gözlenen bir sikke saygısız zamanla performans ölçme ve herhangi dayalı ayarlama yapmak istiyorum.

Premature optimisation is the root of all evil.