bilindiği üzere httpsession objesinin şişirilmemesi önerilir. yani her önümüze gelen datayı bu objede tutmak kötü bir programlama praktiği olarak gösterilir. bunun tam olarak nedeni nedir. birkaç yerde okudum, bu konunun serialization ve I/O'tan kaynaklanan yavaşlıklara sebebiyet verdildiği söyleniyor ama benim bildiğim kadarıyla bu objeler heap'te tutuluyor, yani ramde, yani serialization ve I/O işlemlerinin çok büyük bir yük getirmeyeceği yerlerde. Peki tam olarak sorun ne?

soruldu: 07 Ağu '12, 18:18

jit's gravatar image

jit
86126
cevap kabul oranı: 16%

değiştirildi: 08 Ağu '12, 02:49

mabulgu's gravatar image

mabulgu ♦
2.8k43040


Eğer session'u RAM'de saklıyorsan zaten I/O ortadan kalkıyor. Bahsetmiş olduğun pratik "bence" biraz abartılıyor. Bu pratiği daha çok durumumuza göre değerlendirmeliyiz. Yani Session'da store ettiğimiz dataların boyutu RAM'imizden küçükse sorun yok ayrıca Serialize/Deserialize de geçen süre ve sistem kaynağı tüketimi yine kaynağımızdan düşükse sorun yok. Ancak kullanıcı sayısı çok fazla olacak bir uygulama geliştiriyorsan bunlarada dikkat etmen gerekecek.

permanent link

cevaplandı: 07 Ağu '12, 20:16

Dreamcatcher's gravatar image

Dreamcatcher
2106812
cevap kabul oranı: 22%

kullanıcı sayısı çok olan bir uygulamada server'da ram'in şişmesine neden olabilir örnek; vaadin 6'da base class olan Application class'ı HttpSession'da tutuluyor ve her bir browser session'u için bir tane Application instance'si oluşturuluyor.

permanent link

cevaplandı: 17 Ağu '12, 16:22

sabanu's gravatar image

sabanu
83621017
cevap kabul oranı: 22%

değiştirildi: 17 Ağu '12, 16:24

Merhaba

Session'da boyutu büyük verilerin taşınması birkaç nedenden ötürü önerilmez.Bunlardan ilki çok kullanılıcı bir uygulama geliştiriyorsanız herkez aynı anda uygulamanızın sesionla veriyi tutduğunuz kısmına yüklenirse server'da aşırı bir kaynak tüketimi olur buda pek istenmeyen bir durumdur.Uygulamayı birden çok programcı geliştiriyorsa sessionda herşeyi taşımak yönetilmesi zor bir durum haline gelebilir çok dikkat gerektitir.

Session genellikle kullanıcı bilgilerini tutmak için kullanılır ama bunun yanında farklı nesnelerinizide session'da tutabilirsiniz bu konu ile ilgili daha önceden bir yazı yayınlamıştım

http://www.gokhanakgol.com/2011/12/25/session-ile-sayfalar-arasi-veri-tasima/

İyi çalışmalar

permanent link

cevaplandı: 18 Ağu '12, 04:47

gokhanakgol's gravatar image

gokhanakgol
705687777
cevap kabul oranı: 30%

Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×1
×1

Soruldu: 07 Ağu '12, 18:18

Görüntüleme: 802 kez

Son güncelleme: 18 Ağu '12, 04:47

Benzer sorular

powered by BitNami OSQA