2008-10-20 17 views
16

Yaklaşık 400 alan olan bir PHP formu (ipotek uygulaması) var, site trafiği düşük olacak.İdeal PHP Oturum Boyutu?

400 alanın MySQL db'ye girmesi için ideal oturum boyutu nedir?

php.ini içinde ne ayarlıyorum?

Eksik olduğumu ayarlamam gereken bir şey var mı?

cevap

13

Şahsen, çok az sorunla karşılaşmadan önce çok büyük seanslar geçirdim. Muhtemelen daha önce sahip olduğum en büyük boyut ~ 10MB. Bu optimal değil, ancak bu boyutta bile yavaş komut dosyalarıyla ilgili bir sorunum olmadı. Seansların genişlemesinden endişe etmem ama bunu kontrol altında tutmaya çalışacağım. Benim teorim, eğer oturumda tutulması, veritabanını her seferinde sorgulamadan (arama durumunda olduğu gibi) daha hızlı hale getiriyorsa, o zaman bunun için gidiyorum.

10

Bir oturumda çok veri depolamak için tavsiye edilmez. Diğerleri 'un da belirttiği gibi, verileri bir veritabanından kopyalamak bir fikir değildir. gerçekten bir çeşit önbelleğe alma mekanizmasına ihtiyacınız olsa bile, bir oturumda verilerini saklamıyorsunuz. Sorun, PHP'nin her istek için oturum verilerini yeniden yazmasıdır. Ve hepimiz diske yazmayı bildiğimiz gibi oldukça yavaş bir işlemi.

Gerçekten yapmanız gerekiyorsa, diziyi serileştirin ve bir ayrı dosyada saklayın.

10 sayfadan yalnızca 1 seri hale getirilmiş verilere ihtiyaç duyuyorsanız, yalnızca 10 sayfalık bir kez açın. Oturum, elbette her istek için ambalaj/ambalajdan çıkar.

(iyimisin 1000 varsayılan böylece) Ayrıca kontrol etmelisiniz
+4

[kaynak] (http://bytes.com/topic/php/answers/11014-questions-size-session#post46656 –

+0

Bunun doğru cevap olduğunu düşünmüyorum. Veritabanına veri okuma/yazma da okuma/diske yazma (bellek önbelleği hariç). Ayrıca, oyunların çoğunun daha hızlı erişim için verilerini bellekte tutması gerektiğini unutmayın; bu durumda PHP'de oturum değişkenleri ve veritabanı sadece ikincil boşta depolamadır. – AaA