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.