My application is a web application which I chose to use JSF. Now, being that performance is a paramount requirement, would it be better to use a JSF managed bean with session scope or Stateful session beans to maintain conversational state with client?
I know that maintaining session state in stateful session beans is a BluePrints best practice, but aren't they too heavyweight when compared to HttpSession? Also, I've separated my web and EJB tiers to run on different servers and each server itself is clustered.. I know some web servers do provide HttpSession clustering, so I mentioned I'd be using one that could guarantee that.
Important notice: there's no mention of other non web applications (i.e. swing app) accessing the business tier of my application. This is very misleading when taking such decision.
Originally posted by wang andrew: If there is no mention of non web clients, then go http session. Since performance is paramount requirement, why don't you choose web ejb co-located architecture?
makes sense, and it�s surely something to think about.. the only thing is that I�ve already proposed a DMZ which is where I�d expose the web servers and have protected the application servers inside the internal network (behind the 2nd firewall). I�d probably have to change that..
I�ll study the advantages and drawbacks of this approach and see how feasible it would be. will let you know.
Thank you so much for the reply.. really appreciate it.
Originally posted by dhruboj kayal: if you need colocated architecture do you think that EJB is required?
Unfortunately for reasons I can�t talk about.. yes.
Actually what is killing me here is that I need to keep track of user session, and doing so w/ Stateful session beans in a multi-tier approach may compromise performance (w/ lookups), that we could prevent with a co-located approach.
Now you might be thinking why not multi-tier and having HttpSession clustering for the web tier (since many vendors already provide it)? I strongly believe the test reviewers would be happier to see a solution with stateful session bean (which is blueprints recommendation when using EJBs) rathen then a solution with HttpSession clustering provided by a third party. But again, it�s just a guess.