I know most ISPs are running on tight budgets and a 3000 dollar SQL
server can be a big expense. With huge databases and large number of
simultaneous accesses they really do a good job, but if their capacity
is not used then you've just waisted a grip of money.
If you have 15000 users daily and only a half of them will actually do a
query and look at their products, you have 7000 users that will hit the
button. That is about 6 to 15 queries MAX per minute. (I did a little
math, but it can be different.) How long does a query process take? Is
there large blob fields returned that bog down the cpu and take a lot of
time? You say that the actual database is small, it is just very
popular. In this case your average query time can might take less then 4
to 5 seconds, and if the timeout is set to a low 5 seconds for example
then your processes are done in the most 10 seconds allowing you to make
about 6 queries per minute, per process. If you have an ODBC driver and
you are using Access which is probably the best in performance because
it caches information and can handle a max of 64 simultaneous processes.
You now have the capacity to serve about 350 users (peak) per minute.
To speed things up put the database on an NT RAM disk if possible or
just add a whole lot of memory to the box (128 or 256MB should do it
Watch those logs and test for response in peak hours from a remote
machine to see its true performance.
This should give you a good and cheap solution for quite a while, but if
you are doing a lot of database intense things then I suggest you buy a