RE: how to suppor 30000 concurrent users

2003-08-14 Thread Angus Mezick
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

2003-08-14 Thread blair
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

2003-08-14 Thread Prince
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

2003-08-14 Thread Rick Roberts
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

2003-08-14 Thread Angus Mezick
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

2003-08-14 Thread Peter Lin
 
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

2003-08-10 Thread Vic Cekvenich
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

2003-08-09 Thread Angus Mezick
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

2003-08-08 Thread Angus Mezick
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

2003-08-08 Thread pete . storey
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

2003-08-08 Thread pete . storey
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

2003-08-06 Thread Eric J. Pinnell
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

2003-08-06 Thread Angus Mezick
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

2003-08-05 Thread pete . storey
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

2003-08-05 Thread Heart Prince
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

2003-08-05 Thread Ralph Einfeldt
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

2003-08-05 Thread Raffi
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

2003-08-05 Thread Prince
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

2003-08-05 Thread Angus Mezick
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]