Hey Bill, I agree about the expensiveness of http session failover. It's probably not worth it for our app too. We will be getting a hardware balancer as you suggest. It is capable of making sessions 'sticky' so we don't need to distribute the session state. It is probably ok to have a user re-login if a box goes down. I'm hoping to get some crude performance stats in place to measure how much of a hit the http session clustering actually is.
'One thing to note is that since you have a web application, you probably do not need EJB clustering and failover.' I don't follow your reasoning about not needing the ejb's to be clustered. Wouldn't that represent a single point of failure? Our thinking is that we want to be able to spread the ejb load across several machines if needed. Doesn't that imply that clustering is needed to keep the state in sync? 'Yes, I have done this. I explicitly setup the InitialContext with Properties. But I recommend an integrate stack.' Could you possibly send me what you used for the properties file? I've tried this with no luck. Did you use an external context? Were your servers on seperate computers? For my development I am trying to get the two servers up and running on the same computer. But I can't seem to get the servlet server to attach to the ejb servers jndi server. Even if I use a properties file and explicitly use seperate ports. I'd really like to get this approach set up so we can measure the two approaches. Thanks for your help! Gray -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Bill Burke Sent: Wednesday, June 12, 2002 10:13 AM To: [EMAIL PROTECTED] Subject: RE: [JBoss-user] Architecture Options Hi Gray, > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED]]On Behalf Of Gray Jones > Sent: Wednesday, June 12, 2002 9:27 AM > To: [EMAIL PROTECTED] > Subject: [JBoss-user] Architecture Options > > > We are in the process of converting a servlet application over to an ejb > application. The main reason for doing this is for clustering - to > eliminate a single source of failure and increase load capacity. > Make sure that HTTP session failover is a requirement in your system. Its expensive. At Mercantec, we had a "cluster" of same-VM JBoss 2.2.2/Jetty 3.0.1 machines and we determined that HTTP session failover was not required. A good HTTP loadbalancer like Cisco's content switch provided the high availability and increase in load capacity we needed. There are also software load-balancers you can use as well. Here are some links. More comments follow: What we did at Mercantec: http://www.onjava.com/pub/a/onjava/2001/09/18/jboss.html Cisco's load-balancer: http://www.cisco.com/univercd/cc/td/doc/pcat/11150.htm software HTTP load-balancer(Apache/mod_jk/Tomcat 4): http://jakarta.apache.org/tomcat/tomcat-3.3-doc/mod_jk-howto.html One thing to note is that since you have a web application, you probably do not need EJB clustering and failover. > Our original thought was to have the ejb's run inside of one > server and the > servlets run inside a different server. Our first guess is that we would > have a 2:1 ration between servlet machines and ejb machines. For > example we > could have 4 machines hosting the servlet's and 2 machines hosting the > ejb's. > > The other arhictecture option that we have thought about would be > to run the > servlets and ejb's inside the same machine (ie use a .ear file). In this > case we would dedicate all 6 boxes to the combined application. > Doing this > would appear to reduce network traffic since everything would be a > in-process call. > I recommend this approach. In-process is always faster and at Mercantec and DowJones we had the most success with this configuration. > With these two options we wanted to start with the n-tier > approach first and > once we load test it and get a benchmark in place - try the combined > approach so we can compare the results. > > However I have been unable to get the n-tier system configured with > jBoss3.0. I've tried to host the servlets in a stand-alone > tomcat container > and also within a jBoss/jetty server - but in both cases can't > get the jndi > lookup to succeeed. > This is probably a simple JNDI configuration problem. > I'm wondering what other people think about this approach? Do > people think > the .ear approach is better so its not worth bothering with the n-tier > approach? Has anybody been able to get a n-tier type sustem working with > jBoss3.0? > Yes, I have done this. I explicitly setup the InitialContext with Properties. But I recommend an integrate stack. > Thanks, > > Gray > > > _______________________________________________________________ > > Sponsored by: > ThinkGeek at http://www.ThinkGeek.com/ > _______________________________________________ > JBoss-user mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/jboss-user _______________________________________________________________ Sponsored by: ThinkGeek at http://www.ThinkGeek.com/ _______________________________________________ JBoss-user mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-user _______________________________________________________________ Sponsored by: ThinkGeek at http://www.ThinkGeek.com/ _______________________________________________ JBoss-user mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-user
