Thanks for the reply Thomas I forgot to mention that the 1000+ attachments we are expecting is over about 60 databases, where the maximum attachments to a single database is about 50. How will this affect the contention on the lock table?
--- In [email protected], Thomas Steinmaurer <ts@...> wrote: > > > What is the current maximum number of connections firebird(2.1/2.5) can > > handle on a wondows 2008 r2 server. Is it still the 1024 limit set by the > > OS or has this changed? > > Just connecting with 2.5.2 SC 64-bit snapshot on Win 7 Prof. with 12GB > RAM and 75 page buffers without doing anything in context of these > connections: > > SQL> select count(*) from mon$attachments; > > COUNT > ============ > 1201 > > Perhaps higher possible. What you can see is that the number of threads > of the SC process stays at 1029. Doing some work then (with a SMP-test > utility I once wrote for a presentation; see below), you will get VERY > high (*g*) contention on the lock table: > > Hash slots: 1009, Hash lengths (min/avg/max): 57/ 83/ 102 > > with the default hash slot value of 1009. Quit that test. > > The SMP-testing utility basically allows to simulate a configurable > number of client attachments via one thread per client attachment. It does: > > - Insert <n> records per attachment into a GTT via one simple stored > procedure call > - Each attachment will fetch the inserted records to the client > > Another workload with 1201 client attachments (2 SMP-test utility > instances running), processing (inserting into GTT and fetching) 5000 > records each. This time with a higher hash slots value. > > - 5000 records per attachment into a global temporary table via one > simple stored procedure > - Each attachment will fetch the inserted records to the client > > My AMD hexa-core workstation was busy, but the test was finished in ~50 > seconds. Took a lock print during the fetching phase. > > Hash slots: 10133, Hash lengths (min/avg/max): 0/ 4/ 15 > > > > The question arises because we would like to consolidate two servers, and > > one of them already has about 800-900 attachements(A program written en > > delphi using a connected model). The other server has about 300 > > attachements. serving websites and webservices(using connection pooling) > > The question is if you really need that number of physical connections > from your Delphi application and what you are doing in context of your > connections. If one instance doesn't handle the load, you still can run > a second on the same server, if you have enough resources available. But > these days, with low hardware prices, virtualization etc. ... > > > -- > With regards, > Thomas Steinmaurer (^TS^) > Firebird Technology Evangelist > > http://www.upscene.com/ > http://www.firebirdsql.org/en/firebird-foundation/ >
