RE: how to suppor 30000 concurrent users
Actually, that is exactly how it is done. Here at http://www.guidestar.org we have 6 2xproc dell servers each running a webserver. If one drops out the cisco load balancer sees this and directs traffic to the other 5. We use a database table and a custom jdbc session manager to provide for session persistance. This session manager allows not to worry about session affinity. Every webserver can get at every session at anytime. When we update code we have an ant script that downs the service, replaces the code from a central server, starts the service and then repeats this process for each machine in turn. On the backend we have 4 DB servers 2 clustered active/passive as read only for our heavy read only usage and 2 clustered active/passive as read write for editing and data loading. There is a nightly job that refreshes the R/O from the R/W right after the backups run. The actual DB data is stored on an EMC drive box (I have no idea what TLA (Three Letter Acronym) is running on this thing). I will say that being a tech NPO is a GREAT thing, we get lots of cool toys cheap! --Angus > -Original Message- > From: Raffi [mailto:[EMAIL PROTECTED] > Sent: Tuesday, August 05, 2003 9:17 AM > To: 'Tomcat Users List' > Subject: RE: how to suppor 3 concurrent users > > > I always wondered about how high-profile sites like Ebay and Amazon > updated their systems because they never seem to place > messages at their > sites regarding system downtime for routine maintainance. In > a clustered > app server environment, I'm assuming that each node is downed and > updated individually while the other nodes support user requests, or > perhaps it's done differently. Can you explain, thanks! > > Raffi > > -Original Message- > From: Angus Mezick [mailto:[EMAIL PROTECTED] > Sent: Tuesday, August 05, 2003 9:07 AM > To: Tomcat Users List > Subject: RE: how to suppor 3 concurrent users > > > With that many users you are going to HAVE to cluster if for no other > reason than to provide backup for system maintanence. As to how many, > the answer is it depends on the hardware you are going to use and the > types of load your webapp puts on the system. When you say 30k > concurrent users do you mean 30k people clicking a link at > the same time > or 30k active sessions at a time? If you are going to have this many > people clicking on the same time you should have the cash to do proper > load testing to see how many people one of your servers can > take, divide > 30k by that number for the number of servers you have, multiply by 1.1 > AT LEAST and round up to get 110% capacity so you should be > able to swap > out one server. This is BARE minimum. Don't forget about > the wonderful > world of DB backends and routers and all the fun stuff :) --Angus > > > -----Original Message- > > From: Heart Prince [mailto:[EMAIL PROTECTED] > > Sent: Tuesday, August 05, 2003 8:57 AM > > To: [EMAIL PROTECTED] > > Subject: how to suppor 3 concurrent users > > > > > > howmany concurrent users does tomcat support? if i want to > > design a web > > application for 30,000 concurrent users, what is the step? > > clustering is > > related to this? how many servers i need if i am clustering > > > > _ > > Latest movie trailers. On your mobile. > > http://server1.msn.co.in/sp03/gprs/howcani_movie.asp With GPRS. > > > > > > > - > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: how to suppor 30000 concurrent users
Hi Pete, We use BigIP from F5 Networks. It does handle session mapping across server pools ver well. We have a rule set that ensures a request from a given user is mapped to the same server. The F5 folks helped us out in getting things setup and running. They are a great bunch of folks to deal with. We have also structured our site so that all the links on a page may in fact come from different web servers in our server farm. The main request is handled by the server that holds the session, but things like images etc get load balanced across the servers. You can also serialize your session objects and store the sessions in a DataBase. This will add a bunch of overhead, however, you will get the same session, no matter what server you hit. Hope this helps RIck On Tuesday, August 5, 2003, at 07:25 AM, [EMAIL PROTECTED] wrote: Sorry for being thick but Im a bit confused as to when you are doing anything with the sessions? If I make a request to one server, then go on to another for the next request, how does server 2 get my session from server 1 without server 1 having had to persist the session to disk every time any change is made to it? Pete "Angus Mezick" <[EMAIL PROTECTED]> 05/08/2003 15:11 Please respond to "Tomcat Users List" To: "Tomcat Users List" <[EMAIL PROTECTED]> cc: Subject: RE: how to suppor 3 concurrent users Doesn't seem to have that much of an effect. I guess I should profile it though. I don't want to use session persistence because then I would need to use network session clustering. Session clustering is a requirement for my app. I figure using a DB instead of memory to store my sessions is better than sending 5 network connections to the other 5 of the 6 web servers with the session data that will only be valid to ONE of those servers. Before tomcat we were using Iplanet 4.1 and the cisco load balance we have SAID it could handle session affinity but it didn't seem to be able to. So we went with a DB solution which, to me, seems to be the more optimal solution. The DB also means I can have a MUCH larger number of active sessions using my servers because I don't have to worry about the sessions using all my memory. I just have to worry about DB disk space but I had have 2 or 3 terabytes of disk while only have 2 GB of memory. Seems to be an easy trade. --Angus -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: Tuesday, August 05, 2003 9:40 AM To: Tomcat Users List Subject: RE: how to suppor 3 concurrent users Angus, doesnt using a shared jdbc based session manager slow the whole thing down a lot? Why dont you just use session persistence? Pete - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: how to suppor 30000 concurrent users
hi Angus, from ur reply what i understand is, first I have to develop the application (with maximum tuning possible from scripting side) and the deploy it on a server and load test. then add the needed number of servers. have i got it right? what is an avarage no of maximum concurrent users (active sessions) for tomcat (just to get a general idea about the possible investment) does it depends on the scripting technology also? how is Microsoft technology is such case (heavy load) compared to tomcat? thanks and regards Prince - Original Message - From: "Angus Mezick" <[EMAIL PROTECTED]> To: "Tomcat Users List" <[EMAIL PROTECTED]> Sent: Tuesday, August 05, 2003 6:37 PM Subject: RE: how to suppor 3 concurrent users With that many users you are going to HAVE to cluster if for no other reason than to provide backup for system maintanence. As to how many, the answer is it depends on the hardware you are going to use and the types of load your webapp puts on the system. When you say 30k concurrent users do you mean 30k people clicking a link at the same time or 30k active sessions at a time? If you are going to have this many people clicking on the same time you should have the cash to do proper load testing to see how many people one of your servers can take, divide 30k by that number for the number of servers you have, multiply by 1.1 AT LEAST and round up to get 110% capacity so you should be able to swap out one server. This is BARE minimum. Don't forget about the wonderful world of DB backends and routers and all the fun stuff :) --Angus > -Original Message- > From: Heart Prince [mailto:[EMAIL PROTECTED] > Sent: Tuesday, August 05, 2003 8:57 AM > To: [EMAIL PROTECTED] > Subject: how to suppor 3 concurrent users > > > howmany concurrent users does tomcat support? if i want to > design a web > application for 30,000 concurrent users, what is the step? > clustering is > related to this? how many servers i need if i am clustering > > _ > Latest movie trailers. On your mobile. > http://server1.msn.co.in/sp03/gprs/howcani_movie.asp With GPRS. > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: how to suppor 30000 concurrent users
I have always wondered how serious load balancing was done :) Is this technique documented anywhere? I would love to read up on it. Thanks Angus Mezick wrote: Ahh, the is the beauty of the cookie! All my servers respond to www.guidestar.org. I start a session, save that session id in the cookie, save the sessionid and data to the DB table that all the servers share. The next request goes to a different server but it can still see the id in the cookie. That id is used to get the session data out of the table for use and then put the data back in. As long as the DB can handle the load I can add servers. I am not worried about the network handling the load because the only other way of doing this that I know of is to use Filip Hank's In Memory Session Replication at http://www.filip.net/tomcat/tomcat-javagroups.html which uses IP multicast. I didn't want all my servers to get load every time one server got a hit. If the DB gets overloaded I can always split my servers into 2 groups and use apache session affinity to split the work between them. Which leads to my next email :) Do the worker names in worker2.properties and the jvmroute in server.xml have any relation? --Angus -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: Tuesday, August 05, 2003 10:25 AM To: Tomcat Users List Subject: RE: how to suppor 3 concurrent users Sorry for being thick but Im a bit confused as to when you are doing anything with the sessions? If I make a request to one server, then go on to another for the next request, how does server 2 get my session from server 1 without server 1 having had to persist the session to disk every time any change is made to it? Pete "Angus Mezick" <[EMAIL PROTECTED]> 05/08/2003 15:11 Please respond to "Tomcat Users List" To: "Tomcat Users List" <[EMAIL PROTECTED]> cc: Subject:RE: how to suppor 3 concurrent users Doesn't seem to have that much of an effect. I guess I should profile it though. I don't want to use session persistence because then I would need to use network session clustering. Session clustering is a requirement for my app. I figure using a DB instead of memory to store my sessions is better than sending 5 network connections to the other 5 of the 6 web servers with the session data that will only be valid to ONE of those servers. Before tomcat we were using Iplanet 4.1 and the cisco load balance we have SAID it could handle session affinity but it didn't seem to be able to. So we went with a DB solution which, to me, seems to be the more optimal solution. The DB also means I can have a MUCH larger number of active sessions using my servers because I don't have to worry about the sessions using all my memory. I just have to worry about DB disk space but I had have 2 or 3 terabytes of disk while only have 2 GB of memory. Seems to be an easy trade. --Angus -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: Tuesday, August 05, 2003 9:40 AM To: Tomcat Users List Subject: RE: how to suppor 3 concurrent users Angus, doesnt using a shared jdbc based session manager slow the whole thing down a lot? Why dont you just use session persistence? Pete -- *** * Rick Roberts* * Advanced Information Technologies, Inc. * *** - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: how to suppor 30000 concurrent users
Hrm, sounds like a hint :) We came up with this when we were DEEP in the weeds deploying our project and had trusted cisco's documentation that their router would function as expected. My boss was one of those guys who has been kicking around the area working longer contracts. You know the type, Phd in MIS or some such and about to retire. He called a friend who got this guy on the phone who told us about this solution. Banged it out in a day because Iplanet had the hooks for it. Took be a week to replicate in tomcat. Ugh. --Angus > -Original Message- > From: Rick Roberts [mailto:[EMAIL PROTECTED] > Sent: Tuesday, August 05, 2003 10:52 AM > To: Tomcat Users List > Subject: Re: how to suppor 30000 concurrent users > > > I have always wondered how serious load balancing was done :) > Is this technique documented anywhere? > I would love to read up on it. > > Thanks > > Angus Mezick wrote: > > Ahh, the is the beauty of the cookie! All my servers respond to > > www.guidestar.org. I start a session, save that session id in the > > cookie, save the sessionid and data to the DB table that > all the servers > > share. The next request goes to a different server but it > can still see > > the id in the cookie. That id is used to get the session > data out of > > the table for use and then put the data back in. As long > as the DB can > > handle the load I can add servers. I am not worried about > the network > > handling the load because the only other way of doing this > that I know > > of is to use Filip Hank's In Memory Session Replication at > > http://www.filip.net/tomcat/tomcat-javagroups.html which uses IP > > multicast. I didn't want all my servers to get load every time one > > server got a hit. If the DB gets overloaded I can always split my > > servers into 2 groups and use apache session affinity to > split the work > > between them. Which leads to my next email :) Do the > worker names in > > worker2.properties and the jvmroute in server.xml have any relation? > > > > --Angus > > > > > >>-Original Message- > >>From: [EMAIL PROTECTED] > >>[mailto:[EMAIL PROTECTED] > >>Sent: Tuesday, August 05, 2003 10:25 AM > >>To: Tomcat Users List > >>Subject: RE: how to suppor 3 concurrent users > >> > >> > >>Sorry for being thick but Im a bit confused as to when you > are doing > >>anything with the sessions? If I make a request to one > >>server, then go on > >>to another for the next request, how does server 2 get my > >>session from > >>server 1 without server 1 having had to persist the session > >>to disk every > >>time any change is made to it? > >>Pete > >> > >> > >> > >> > >> > >>"Angus Mezick" <[EMAIL PROTECTED]> > >>05/08/2003 15:11 > >>Please respond to "Tomcat Users List" > >> > >>To: "Tomcat Users List" <[EMAIL PROTECTED]> > >>cc: > >>Subject:RE: how to suppor 3 concurrent users > >> > >> > >>Doesn't seem to have that much of an effect. I guess I > should profile > >>it though. I don't want to use session persistence because > >>then I would > >>need to use network session clustering. Session clustering is a > >>requirement for my app. I figure using a DB instead of > >>memory to store > >>my sessions is better than sending 5 network connections to > >>the other 5 > >>of the 6 web servers with the session data that will only > be valid to > >>ONE of those servers. Before tomcat we were using Iplanet > 4.1 and the > >>cisco load balance we have SAID it could handle session > >>affinity but it > >>didn't seem to be able to. So we went with a DB solution > >>which, to me, > >>seems to be the more optimal solution. The DB also means I > can have a > >>MUCH larger number of active sessions using my servers > because I don't > >>have to worry about the sessions using all my memory. I > just have to > >>worry about DB disk space but I had have 2 or 3 terabytes of > >>disk while > >>only have 2 GB of memory. Seems to be an easy trade. > >>--Angus > >> > >> > >>>-Original Message- > >>>From: [EMAIL PROTECTED] > >>>[mailto:[EMAIL PROTECTED] > >>>Sent: Tuesday, August 05, 2003 9:40 AM > >>>To: Tomcat Users List > >>>Subject: RE: how to suppor 3 concurrent users > >>> > >>> > >>>Angus, > >>>doesnt using a shared jdbc based session manager slow the > >>>whole thing down > >>>a lot? Why dont you just use session persistence? > >>>Pete > >>> > >> > > -- > *** > * Rick Roberts* > * Advanced Information Technologies, Inc. * > *** > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: how to suppor 30000 concurrent users
Supporting a website that supports 30K concurrent connections will mean several hundred servers and a really big database server. At those requirements, your best bet is looking at the architecture first and figuring out what the functional requirements are for all 30K users. The key is to profile those users and figure how you can separate the heavy processes from the read-only. once you have that information, you can make educated guesses to start some research. chances are a good percentage of the traffic is read-only. Massive write applications with that kind of concurrency is rare. I've only seen it in financial apps and those normally have really big hardware. peter Prince <[EMAIL PROTECTED]> wrote: hi Angus, from ur reply what i understand is, first I have to develop the application (with maximum tuning possible from scripting side) and the deploy it on a server and load test. then add the needed number of servers. have i got it right? what is an avarage no of maximum concurrent users (active sessions) for tomcat (just to get a general idea about the possible investment) does it depends on the scripting technology also? how is Microsoft technology is such case (heavy load) compared to tomcat? thanks and regards Prince - Original Message - From: "Angus Mezick" To: "Tomcat Users List" Sent: Tuesday, August 05, 2003 6:37 PM Subject: RE: how to suppor 3 concurrent users With that many users you are going to HAVE to cluster if for no other reason than to provide backup for system maintanence. As to how many, the answer is it depends on the hardware you are going to use and the types of load your webapp puts on the system. When you say 30k concurrent users do you mean 30k people clicking a link at the same time or 30k active sessions at a time? If you are going to have this many people clicking on the same time you should have the cash to do proper load testing to see how many people one of your servers can take, divide 30k by that number for the number of servers you have, multiply by 1.1 AT LEAST and round up to get 110% capacity so you should be able to swap out one server. This is BARE minimum. Don't forget about the wonderful world of DB backends and routers and all the fun stuff :) --Angus > -Original Message- > From: Heart Prince [mailto:[EMAIL PROTECTED] > Sent: Tuesday, August 05, 2003 8:57 AM > To: [EMAIL PROTECTED] > Subject: how to suppor 3 concurrent users > > > howmany concurrent users does tomcat support? if i want to > design a web > application for 30,000 concurrent users, what is the step? > clustering is > related to this? how many servers i need if i am clustering > > _ > Latest movie trailers. On your mobile. > http://server1.msn.co.in/sp03/gprs/howcani_movie.asp With GPRS. > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - Do you Yahoo!? Yahoo! SiteBuilder - Free, easy-to-use web site design software
Re: how to suppor 30000 concurrent users
If you use Resin/J:Rockit/NewISys 2100, you can do at least 4,000 cocurent users w/ sub second response time. (test your app w/ free DiselTest - part of Jasic and linked on basicPortal.com, other links there to) NewIsys is a 1U. A 19" rack can hold 40. You need 3-4 racks. He.net charges $400 per month per rack, so $1200-$1400 for 3-4 full racks to co/lo. (I might cost out blade performance to lower rack cost). Tou migh want to use pgSQL. Open source is great at large sites that are run for profit. (I wonder what MS SQL/Share point costs for 4 racks?) Good luck. .V Heart Prince wrote: howmany concurrent users does tomcat support? if i want to design a web application for 30,000 concurrent users, what is the step? clustering is related to this? how many servers i need if i am clustering _ Latest movie trailers. On your mobile. http://server1.msn.co.in/sp03/gprs/howcani_movie.asp With GPRS. -- Vic Cekvenich, Struts Instructor, 1-800-917-JAVA Advanced Struts Training, mentoring and project recovery in North East. Open Source Portal Content Management basicPortal software. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: how to suppor 30000 concurrent users
Ahh, the is the beauty of the cookie! All my servers respond to www.guidestar.org. I start a session, save that session id in the cookie, save the sessionid and data to the DB table that all the servers share. The next request goes to a different server but it can still see the id in the cookie. That id is used to get the session data out of the table for use and then put the data back in. As long as the DB can handle the load I can add servers. I am not worried about the network handling the load because the only other way of doing this that I know of is to use Filip Hank's In Memory Session Replication at http://www.filip.net/tomcat/tomcat-javagroups.html which uses IP multicast. I didn't want all my servers to get load every time one server got a hit. If the DB gets overloaded I can always split my servers into 2 groups and use apache session affinity to split the work between them. Which leads to my next email :) Do the worker names in worker2.properties and the jvmroute in server.xml have any relation? --Angus > -Original Message- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] > Sent: Tuesday, August 05, 2003 10:25 AM > To: Tomcat Users List > Subject: RE: how to suppor 3 concurrent users > > > Sorry for being thick but Im a bit confused as to when you are doing > anything with the sessions? If I make a request to one > server, then go on > to another for the next request, how does server 2 get my > session from > server 1 without server 1 having had to persist the session > to disk every > time any change is made to it? > Pete > > > > > > "Angus Mezick" <[EMAIL PROTECTED]> > 05/08/2003 15:11 > Please respond to "Tomcat Users List" > > To: "Tomcat Users List" <[EMAIL PROTECTED]> > cc: > Subject:RE: how to suppor 3 concurrent users > > > Doesn't seem to have that much of an effect. I guess I should profile > it though. I don't want to use session persistence because > then I would > need to use network session clustering. Session clustering is a > requirement for my app. I figure using a DB instead of > memory to store > my sessions is better than sending 5 network connections to > the other 5 > of the 6 web servers with the session data that will only be valid to > ONE of those servers. Before tomcat we were using Iplanet 4.1 and the > cisco load balance we have SAID it could handle session > affinity but it > didn't seem to be able to. So we went with a DB solution > which, to me, > seems to be the more optimal solution. The DB also means I can have a > MUCH larger number of active sessions using my servers because I don't > have to worry about the sessions using all my memory. I just have to > worry about DB disk space but I had have 2 or 3 terabytes of > disk while > only have 2 GB of memory. Seems to be an easy trade. > --Angus > > > -Original Message- > > From: [EMAIL PROTECTED] > > [mailto:[EMAIL PROTECTED] > > Sent: Tuesday, August 05, 2003 9:40 AM > > To: Tomcat Users List > > Subject: RE: how to suppor 3 concurrent users > > > > > > Angus, > > doesnt using a shared jdbc based session manager slow the > > whole thing down > > a lot? Why dont you just use session persistence? > > Pete > > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: how to suppor 30000 concurrent users
Doesn't seem to have that much of an effect. I guess I should profile it though. I don't want to use session persistence because then I would need to use network session clustering. Session clustering is a requirement for my app. I figure using a DB instead of memory to store my sessions is better than sending 5 network connections to the other 5 of the 6 web servers with the session data that will only be valid to ONE of those servers. Before tomcat we were using Iplanet 4.1 and the cisco load balance we have SAID it could handle session affinity but it didn't seem to be able to. So we went with a DB solution which, to me, seems to be the more optimal solution. The DB also means I can have a MUCH larger number of active sessions using my servers because I don't have to worry about the sessions using all my memory. I just have to worry about DB disk space but I had have 2 or 3 terabytes of disk while only have 2 GB of memory. Seems to be an easy trade. --Angus > -Original Message- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] > Sent: Tuesday, August 05, 2003 9:40 AM > To: Tomcat Users List > Subject: RE: how to suppor 3 concurrent users > > > Angus, > doesnt using a shared jdbc based session manager slow the > whole thing down > a lot? Why dont you just use session persistence? > Pete > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: how to suppor 30000 concurrent users
Angus, doesnt using a shared jdbc based session manager slow the whole thing down a lot? Why dont you just use session persistence? Pete
RE: how to suppor 30000 concurrent users
Sorry for being thick but Im a bit confused as to when you are doing anything with the sessions? If I make a request to one server, then go on to another for the next request, how does server 2 get my session from server 1 without server 1 having had to persist the session to disk every time any change is made to it? Pete "Angus Mezick" <[EMAIL PROTECTED]> 05/08/2003 15:11 Please respond to "Tomcat Users List" To: "Tomcat Users List" <[EMAIL PROTECTED]> cc: Subject: RE: how to suppor 3 concurrent users Doesn't seem to have that much of an effect. I guess I should profile it though. I don't want to use session persistence because then I would need to use network session clustering. Session clustering is a requirement for my app. I figure using a DB instead of memory to store my sessions is better than sending 5 network connections to the other 5 of the 6 web servers with the session data that will only be valid to ONE of those servers. Before tomcat we were using Iplanet 4.1 and the cisco load balance we have SAID it could handle session affinity but it didn't seem to be able to. So we went with a DB solution which, to me, seems to be the more optimal solution. The DB also means I can have a MUCH larger number of active sessions using my servers because I don't have to worry about the sessions using all my memory. I just have to worry about DB disk space but I had have 2 or 3 terabytes of disk while only have 2 GB of memory. Seems to be an easy trade. --Angus > -Original Message- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] > Sent: Tuesday, August 05, 2003 9:40 AM > To: Tomcat Users List > Subject: RE: how to suppor 3 concurrent users > > > Angus, > doesnt using a shared jdbc based session manager slow the > whole thing down > a lot? Why dont you just use session persistence? > Pete > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: how to suppor 30000 concurrent users
I would also do a serious reality check on the 30,000 concurrent users number. After going through something like the drill below you will find that you have architected yourself one big system. The sticker shock alone might be enough for people to go back and seriously reconsider their numbers. Marketing people are sometimes on crack. Bigger sites (like eBay) work on seperating their services. So their frontpage is static and gets updated every so often. The second you search you are thrown to another server that just does searches. When you want to buy/bid you move to another server that just does that. -e On Tue, 5 Aug 2003, Ralph Einfeldt wrote: > build a model like > > - each user is on the site for n Minutes > - each user makes n requests > - the mean time between to page requests is n seconds > - each page request creates n http requests > - specify the average size for an http request > - specify the average ratio of request/db access > > . > > With that you can compute memory usage, requests/per second, > concurrent databae connection etc. > > With these number you have to test your application (not tomcat) > and see what your application can handle. There is no rule of > thumb. (It can't be, it's like predicting the time to ride by > horse fom New York to Frisko, whithout knowing the rider, > the baggage and without having a map) > > Depending on the structure of the site and the effort you want > to invest you can improve the result by building groups of users, > pages, requests and estimate these. > > > -Original Message- > > From: Heart Prince [mailto:[EMAIL PROTECTED] > > Sent: Tuesday, August 05, 2003 2:57 PM > > To: [EMAIL PROTECTED] > > Subject: how to suppor 3 concurrent users > > > > > > howmany concurrent users does tomcat support? if i want to > > design a web > > application for 30,000 concurrent users, what is the step? > > clustering is > > related to this? how many servers i need if i am clustering > > > > _ > > Latest movie trailers. On your mobile. > > http://server1.msn.co.in/sp03/gprs/howcani_movie.asp With GPRS. > > > > > > - > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: how to suppor 30000 concurrent users
With that many users you are going to HAVE to cluster if for no other reason than to provide backup for system maintanence. As to how many, the answer is it depends on the hardware you are going to use and the types of load your webapp puts on the system. When you say 30k concurrent users do you mean 30k people clicking a link at the same time or 30k active sessions at a time? If you are going to have this many people clicking on the same time you should have the cash to do proper load testing to see how many people one of your servers can take, divide 30k by that number for the number of servers you have, multiply by 1.1 AT LEAST and round up to get 110% capacity so you should be able to swap out one server. This is BARE minimum. Don't forget about the wonderful world of DB backends and routers and all the fun stuff :) --Angus > -Original Message- > From: Heart Prince [mailto:[EMAIL PROTECTED] > Sent: Tuesday, August 05, 2003 8:57 AM > To: [EMAIL PROTECTED] > Subject: how to suppor 30000 concurrent users > > > howmany concurrent users does tomcat support? if i want to > design a web > application for 30,000 concurrent users, what is the step? > clustering is > related to this? how many servers i need if i am clustering > > _ > Latest movie trailers. On your mobile. > http://server1.msn.co.in/sp03/gprs/howcani_movie.asp With GPRS. > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: how to suppor 30000 concurrent users
Oh OK cool so it is how I thought - presumably you dont use the session very much (in terms of sending stuff to it) or else there would be one serious amount of db work! Pete
how to suppor 30000 concurrent users
howmany concurrent users does tomcat support? if i want to design a web application for 30,000 concurrent users, what is the step? clustering is related to this? how many servers i need if i am clustering _ Latest movie trailers. On your mobile. http://server1.msn.co.in/sp03/gprs/howcani_movie.asp With GPRS. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: how to suppor 30000 concurrent users
build a model like - each user is on the site for n Minutes - each user makes n requests - the mean time between to page requests is n seconds - each page request creates n http requests - specify the average size for an http request - specify the average ratio of request/db access . With that you can compute memory usage, requests/per second, concurrent databae connection etc. With these number you have to test your application (not tomcat) and see what your application can handle. There is no rule of thumb. (It can't be, it's like predicting the time to ride by horse fom New York to Frisko, whithout knowing the rider, the baggage and without having a map) Depending on the structure of the site and the effort you want to invest you can improve the result by building groups of users, pages, requests and estimate these. > -Original Message- > From: Heart Prince [mailto:[EMAIL PROTECTED] > Sent: Tuesday, August 05, 2003 2:57 PM > To: [EMAIL PROTECTED] > Subject: how to suppor 3 concurrent users > > > howmany concurrent users does tomcat support? if i want to > design a web > application for 30,000 concurrent users, what is the step? > clustering is > related to this? how many servers i need if i am clustering > > _ > Latest movie trailers. On your mobile. > http://server1.msn.co.in/sp03/gprs/howcani_movie.asp With GPRS. > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: how to suppor 30000 concurrent users
I always wondered about how high-profile sites like Ebay and Amazon updated their systems because they never seem to place messages at their sites regarding system downtime for routine maintainance. In a clustered app server environment, I'm assuming that each node is downed and updated individually while the other nodes support user requests, or perhaps it's done differently. Can you explain, thanks! Raffi -Original Message- From: Angus Mezick [mailto:[EMAIL PROTECTED] Sent: Tuesday, August 05, 2003 9:07 AM To: Tomcat Users List Subject: RE: how to suppor 3 concurrent users With that many users you are going to HAVE to cluster if for no other reason than to provide backup for system maintanence. As to how many, the answer is it depends on the hardware you are going to use and the types of load your webapp puts on the system. When you say 30k concurrent users do you mean 30k people clicking a link at the same time or 30k active sessions at a time? If you are going to have this many people clicking on the same time you should have the cash to do proper load testing to see how many people one of your servers can take, divide 30k by that number for the number of servers you have, multiply by 1.1 AT LEAST and round up to get 110% capacity so you should be able to swap out one server. This is BARE minimum. Don't forget about the wonderful world of DB backends and routers and all the fun stuff :) --Angus > -Original Message- > From: Heart Prince [mailto:[EMAIL PROTECTED] > Sent: Tuesday, August 05, 2003 8:57 AM > To: [EMAIL PROTECTED] > Subject: how to suppor 3 concurrent users > > > howmany concurrent users does tomcat support? if i want to > design a web > application for 30,000 concurrent users, what is the step? > clustering is > related to this? how many servers i need if i am clustering > > _ > Latest movie trailers. On your mobile. > http://server1.msn.co.in/sp03/gprs/howcani_movie.asp With GPRS. > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: how to suppor 30000 concurrent users
Hi Angus how difficult it is for making tomcat to support clustering , do we need to have additional tools? thanks Prince - Original Message - From: "Angus Mezick" <[EMAIL PROTECTED]> To: "Tomcat Users List" <[EMAIL PROTECTED]> Sent: Tuesday, August 05, 2003 7:41 PM Subject: RE: how to suppor 3 concurrent users Doesn't seem to have that much of an effect. I guess I should profile it though. I don't want to use session persistence because then I would need to use network session clustering. Session clustering is a requirement for my app. I figure using a DB instead of memory to store my sessions is better than sending 5 network connections to the other 5 of the 6 web servers with the session data that will only be valid to ONE of those servers. Before tomcat we were using Iplanet 4.1 and the cisco load balance we have SAID it could handle session affinity but it didn't seem to be able to. So we went with a DB solution which, to me, seems to be the more optimal solution. The DB also means I can have a MUCH larger number of active sessions using my servers because I don't have to worry about the sessions using all my memory. I just have to worry about DB disk space but I had have 2 or 3 terabytes of disk while only have 2 GB of memory. Seems to be an easy trade. --Angus > -Original Message- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] > Sent: Tuesday, August 05, 2003 9:40 AM > To: Tomcat Users List > Subject: RE: how to suppor 3 concurrent users > > > Angus, > doesnt using a shared jdbc based session manager slow the > whole thing down > a lot? Why dont you just use session persistence? > Pete > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: how to suppor 30000 concurrent users
I wish I knew. Our current bottleneck is on the DB side. We can down half our webservers and keep the site up any time but during peak usage. But you have the right procedure. As for the java vs .net discussion, I am not going there. It is more a question of personal taste, budget, willingness to use open source, and need for that expensive support security blanket. I will say that MS really doesn't like to get in the middle of a sinking project. They would prefer to achitect it up front if they are going to be called in later to solve your problems. The answer to your question on maximums still depends on size of sessions, load each request puts on the server, speed of the machine, and what your network is like. Tomcat can handle a good sized load. I think its biggest limiting factors are how much memory it will use and how many requests it can accept at any one time. The best suggestion I have for you is make sure you can quickly load up a new server using as much scripting as possible so if you have to add more HW you will not be deep in the weeds trying to find your way out. --Angus > -Original Message- > From: Prince [mailto:[EMAIL PROTECTED] > Sent: Friday, August 02, 2002 9:21 AM > To: Tomcat Users List > Subject: Re: how to suppor 30000 concurrent users > > > hi Angus, > > from ur reply what i understand is, first I have to develop > the application > (with maximum tuning possible from scripting side) and the > deploy it on a > server and load test. then add the needed number of servers. > have i got it > right? > what is an avarage no of maximum concurrent users (active > sessions) for > tomcat (just to get a general idea about the possible investment) > > does it depends on the scripting technology also? how is Microsoft > technology is such case (heavy load) compared to tomcat? > thanks and regards > Prince > > - Original Message - > From: "Angus Mezick" <[EMAIL PROTECTED]> > To: "Tomcat Users List" <[EMAIL PROTECTED]> > Sent: Tuesday, August 05, 2003 6:37 PM > Subject: RE: how to suppor 3 concurrent users > > > With that many users you are going to HAVE to cluster if for no other > reason than to provide backup for system maintanence. As to how many, > the answer is it depends on the hardware you are going to use and the > types of load your webapp puts on the system. When you say 30k > concurrent users do you mean 30k people clicking a link at > the same time > or 30k active sessions at a time? If you are going to have this many > people clicking on the same time you should have the cash to do proper > load testing to see how many people one of your servers can > take, divide > 30k by that number for the number of servers you have, multiply by 1.1 > AT LEAST and round up to get 110% capacity so you should be > able to swap > out one server. This is BARE minimum. Don't forget about > the wonderful > world of DB backends and routers and all the fun stuff :) > --Angus > > > -Original Message- > > From: Heart Prince [mailto:[EMAIL PROTECTED] > > Sent: Tuesday, August 05, 2003 8:57 AM > > To: [EMAIL PROTECTED] > > Subject: how to suppor 3 concurrent users > > > > > > howmany concurrent users does tomcat support? if i want to > > design a web > > application for 30,000 concurrent users, what is the step? > > clustering is > > related to this? how many servers i need if i am clustering > > > > _ > > Latest movie trailers. On your mobile. > > http://server1.msn.co.in/sp03/gprs/howcani_movie.asp With GPRS. > > > > > > > - > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]