What's the best Firebird configuration for Citrix server?
It you wish to use Firebird via Terminal Server, here are some useful tips:
* don't put Firebird on the same machine that is acting as a Terminal Server, especially if you need to handle many terminal sessions. Terminal server itself is CPU and memory intensive. Using a single machine is not scalable and you'd also have a single point of failure.
* if all your clients access the same database, you must use a single Firebird Server to serve all of them. It's best to dedicate one machine just for that. You can have multiple Citrix boxes accessing a single Firebird server.
* avoid the "local" access, which won't work, and use TCP/IP even if the Firebird server runs on the same machine (i.e. localhost:c:\path\to\database.fdb).
* while it works with SuperServer, Classic is much more scalable. It can support more concurrent users and has better utilisation of RAM. Super server is a single process and allocates memory for all its clients. When number of clients grows it might reach the limit imposed for a single process. On the other hand, Classic runs a separate process for each connection and single-process allocation limit is quite irrelevant as there is no chance you would reach it. In any case, give the machine a lot of RAM as each process in Classic has it's own database cache. Another argument pro Classic is that it can use all the CPUs on the machine.
The Firebird FAQ