08. marts 2005 - 09:51Der er
11 kommentarer og 1 løsning
Stateful sessionbean til at holde styr på mine xml filer?
Jeg har en flok xml dokumenter som ligger på min harddisk. Jeg skal så havde lavet nogle stateless sessionsbeans for at arbejde med disse xml dokumenter.
Men nu er det så jeg tænker, kunne det ikke betale sig at lave en stateful sessionbean til at holde styr på mine xml dokumenter. En bean som når jboss bliver startet sortere dem, evt kombinere dem med Lucene. Også holder det hele i hukommelsen. Og den(statefull) som også holder øje med når der bliver lagt nogle nye xml dokumenter til eller bliver taget fra. Alt sammen "realtime". Når min statelessbean så skulle bruge et bestemt xml dokument, så i stedet for at lede selv så spørg den bare min statefullbean. Og det samme hvis jeg skulle bruge flere xml dokuementer f.eks grundet en fritekst søgning.
Mit sprøgsmål er så, er det smart og kan det betale sig??
En stateless session bean kan nemlig sagtens indeholde state.
Med en stateless session bean behøver multiple kald fra samme client bare ikke at gå til samme instans.
Hvilket betyder at det ikke guiver mening at gemme client specific state i en stateless session bean.
Men den her info er vel ikke client specifik.
Mit forslag: - lav et singleton objekt som loader data op i memory - brug stateless session beans - lad dem hente en reference til den singleton i create - ved read operationer henter de fra singleton - ved update operationer opdaterer de både sington in memory data og on disk data
Nej ikke til at starte med. Ville i første omgang bare gemme dem som flade filer. Også måske på et senere tidspunkt gemme dem i en db. Men det er også derfor jeg gerne ville komme ud over at skulle alle de falde filer i gennem hvergang jeg skulle finde noget. Og på en og anden måde lave et f.eks singleton hvor jeg kunne holde et index og lave noget stortering.
Nu har jeg læst din og et par andre noter om singleton. Men hvordan bruger jeg singleton i jboss? og hvordan loader jeg den i starten så den lægger sig i memory?
Også efter den er blevet kaldt en gang bliver den liggende i memory. Og holder styr på det hele. Og hvergang en anden stateless spørg til den få den det synchronized, ikke.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.