2009-04-05 14 views
5

J2SE uygulamasından uzak bir durum bilgisi olmayan oturum fasulyesi çağı çağırıyorum ve arama maliyetini azaltmak için oturum çekirdeğine yapılan başvuruyu önbelleğe almak istiyorum. Bu tamam?Uzaktan durum bilgisi olmayan oturum listesi başvuru referansları EJB3'te önbelleğe alınabilir mi?

EJB2'de ServiceLocator kalıbı, uzak kaynaklara yönelik aramaları önbelleğe almak için yaygın olarak kullanılır, ancak EJB3'ün ayrı EJB Home (genellikle önbelleğe alınmış) ve Uzak nesneleri yoktur.

Etrafta dolaşmak, bunun ortak bir cevabı EJB3 enjeksiyonunu kullanmaktır, ancak J2SE istemcisinden uzak bir EJB sunucusuna çağrı yaptığım için, enjeksiyon kullanamıyorum.

cevap

2

Evet, önbelleğe alınabilirler. Ancak, davranışın önbelleğe alınmış bir referansa sahip olması ve sunucunun altında yeniden başlatılması durumunda ne olacağı tanımlanıp tanımlanmadığını bilmiyorum. Bu senaryoyu test edebilirsiniz, ancak davranış kabına göre değişebilir.

1

Sunucu kaybolursa, başvurularınız geçersiz olur.

Normal yaşam döngüsü sırasında önbelleğe alma işleminde olduğu gibi, bu iyi olmalıdır. Bunu yıllardır hem EJB2 hem de EJB3'te yaptım ve hiçbir zaman bir sorunum olmadı. Genelde sadece evinize bakan statik bir 'LookupServices' sınıfına sahibim veya var olanı varsa oraya geri döndürür - ve onu bir haritaya kaydeder.

İlgili konular