|
This report came from John Rendell, who has excellent
reports with a 64 users ASTA applications:
I am going to write a load tester this week. Right now, I
have ~70 connections hitting a single asta server hard - approx
100,000 queries a day. For now, this is done on a 100mb lan
with switched hubs. I am going to write a specialized app that
runs query after query with a random key identifier. It is very
easy to run several instances of an asta app on a single
machine, so with 10 machines I should be able create the same
load as 100 machines.... Remember, most users dont issue rapid
fire queries - it is usually query... Wait 30 seconds, fire
another query (assuming normal call center type activity). Once
this load tester is working, I plan on doing it with
Broadcasts...
What database are you using?
Interbase
What OS for the server?
NT4 Sp 6 Sever is Compaq proliant 1600 single 450 mz Raid 5
256 meg of ram.
Note: I have had to use the IBX server - there
have been problems with the other servers (BDE, IBO).
What threading model for the ASTA serer?
Pooled - starts at 7, climbs as high as 11 sessions during
the day. Separate server with it's own subnet to the IB Server.
Dual 500 Mhz Compaq proliant 1600 with 256 meg of ram. Dual
processors do not seem to help much....
Perhaps, you can use your ASTA server to record the
pertinent timing information for each request. Then, you'll be
able to do some really good analysis on the data.
Recording time on the server is only part of the
'real world'... I a more interested in how long it takes to
complete the same set of queries (with different Key select
results) and get them to the client. Since I am using a pooled
Asta server, the sessions will be created as necessary (I've
had as many as 56 sessions running at once with the BDE
server). The real test is how many clients a single Pooled
ASTA server can support before failing.
Then that problem is not as much of an issue because of the
Anchor Server - it will do load balancing, so fire up another
server, and double your fun.
At this point, I can safely say that IF you design your
database well, and you know what you are doing on the Client
side, a single IBX asta server can support 100 hard core users
in the pooled mode without a problem. I am not taxing the
current app server (or Interbase server) at all. FWIW, this is
a completely client side app - no providers or broadcasts. I
can speed a few things up by using more server side stuff, but
I had to do proof of concept first (and proof is actual 'in
the wild' use - this is a call center app that has been on
line since Dec 16th). It was a converted Paradox for windows 5
app, and performance is very close to what I had (when paradox
started to die).
|