part of the reason why my app is designed to act like a web app in that the user makes 
all changes and then submits them at once, instead of updating as changes are made.  I 
try to reduce the network traffic.

-----Original Message-----
From: Greg Reinacker [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, May 22, 2002 7:40 PM
To: [EMAIL PROTECTED]
Subject: Re: [ADVANCED-DOTNET] Help Architecting A Middle Tier


One more thing to keep in mind about this is it might take .006 seconds
to open/close a single connection at a time, and that might be "fast
enough" for your application.  But since this entails a network load and
a database server load, it's likely that if you try to open, say, 100
connections all at the same time, it might take significantly longer
than .006 seconds to do so.

Greg Reinacker
Reinacker & Associates, Inc.
http://www.rassoc.com


-----Original Message-----
From: Moderated discussion of advanced .NET topics.
[mailto:[EMAIL PROTECTED]] On Behalf Of Craig Andera
Sent: Wednesday, May 22, 2002 9:21 AM
To: [EMAIL PROTECTED]
Subject: Re: Help Architecting A Middle Tier


> Craig, I agree with everything you stated.
>
> What if I change one of your assumptions - and it only took
> .006 seconds to open (and close) a database connection.
> Would that change your architecture?

Interesting. First of all, 0.006 seconds is still pretty damn slow.
Think of it in terms of instructions: a 1GHz processor can do like SIX
MILLION instructions in that time. I realize that this is a pretty
appallingly worthless figure, but you get the idea - that the human
scale of "fast" is pretty meaningless when applied to computers.

Now, that said, I would still argue that connection pooling is *super*
valuable. Even without a performance advantage to pooled connections,
consider that having the mid-tier means that the number of connections
to the database is equal to the number of clients that are doing
something *at the moment*, not *the total number of clients*, as would
be the case in a non-pooled scenario.

Consider that database connections represent both time and resources,
and optimizing them downward makes sesnse.

Also consider roundtrips: make a connection, send a command, break a
connection is three network roundtrips. Suckola! In the face of (even
inefficient) pooling, this goes down to an average of slightly higher
than one.

You can read messages from the Advanced DOTNET archive, unsubscribe from
Advanced DOTNET, or
subscribe to other DevelopMentor lists at http://discuss.develop.com.

You can read messages from the Advanced DOTNET archive, unsubscribe from Advanced 
DOTNET, or
subscribe to other DevelopMentor lists at http://discuss.develop.com.

You can read messages from the Advanced DOTNET archive, unsubscribe from Advanced 
DOTNET, or
subscribe to other DevelopMentor lists at http://discuss.develop.com.

Reply via email to