Subject Re: Large Firebird 1.5 database
Author russellbelding
Hello Sean

Is it surprising that 200 connections consumes 2000Mb of memory or
10Mb per user? It may be but really it depends on what the users are
doing and how that application manages its tasks and fbserver memory

By way of example I have measured my app's memory consumption at the
FB server (delphi 6, IBO, FB 1.5.1 SuperServer, Win 2K workstation as
server) using Task manager's "mem usage" for process fbserver.

At rest with no connections fbserver uses 3040Kb.
1 bare connection causes fbserver to use 5704Kb more.
2 bare connections cause fbserver to use 2096Kb more.
3 bare connections cause fbserver to use 920Kb more.
4 bare connections cause fbserver to use 544Kb more.
A "bare connection" means on a client PC I open my app, and a minimal
datamodule. fbserver seems to share memory?

My app, usually operates on "matters".
Opening a matter causes fbserver to use 1000Kb.

A user may have many matters open. So assuming fbserver stabilises at
600Kb per connection (I have not tried more than 4 connections yet)
and 1000Kb per matter then N users with M matters open such that
600N + 1000M = 2000000
will consume 2Gb.

I have not yet done any fbserver memory optimisation in my app.

Some questions I'd like to understand:
1. Is fbserver quite smart at sharing memory? Details?
2. Is the above memory consumption pattern reasonable?
3. Are there any indicative studies on fbserver memory consumption?

Thanks for any insights.
--- In, "Leyne, Sean" <sleyne@a...>
> Gerhard,
> > our DB has a size of 13-16 GByte that is not a problem. Our
> > is what we have many connections 160-200 and so from time to time
> > will reach the 2GByte Limit of address space which can be handled
> > from FB. If the 2GB Limit is reached FB crashes and will be
> > immediately from the Guardian (Never did we lost any datas if the
> > crash happens !)
> I find it surprising that you are using more than 2GB of RAM!
> Are you running v1.0 or v1.5?
> What platform are you running on?
> Are you using Classic or SuperServer?
> Sean