Subject RE: [firebird-support] Re: Is embedded version of the FireBird can handle request from more than one ap
Author Alan McDonald
> Disclaimer: I am talking about embedded for Windows here.
>
> The embedded server put simply is the SuperServer database guts
> embedded inside what the client application sees as the client library.
>
> That means that your process launches an instance of a Superserver
> (without all of the TCP listening stuff). You can make multiple
> connections to the server from different threads of your application
> (the client library is not threadsafe so a different connection per
> thread is required).
>
> You can NOT however use two different applications to connect to the
> single database using the embedded server. Each application would
> create their own instance of the database engine, and then you would
> have the same sort of scenario if two SuperServer database engines
> attempted to play with the same database file (ie Fireworks).
>
> You can write a data abstraction layer service that wraps around the
> embedded server. It would work as a proxy to the database engine, and
> both of your programs could connect to your service.
>
> The embedded server is a good fit for multi-tier applications, where
> there is only a single application or service talking to a given tier
> database. It is not a good candidate for a client-server scenario. You
> can technically hit a nail into a wall using a spanner, but it is an
> inappropriate tool, a hammer is a better choice. It is the same with
> embedded. Its architecture is great in some cases, but this can also
> get in your way in other cases. Embedded has less flexibility (only
> supports local connections, only accepts connections from single
> process which means no admin tool browsing while your application is
> running, does not enforce password security, tricky to do a 'hot
> backup')

not so tricky - you still have access to the services manager and from
within the app you do your backup. - reasonably trivial
Alan

> but is easier to manage from an installation perspective
> (drop in the files and forget, not that the full server is that complex).
>
> Other options you have is that you can install more than one instance
> of Firebird on different ports.
>
> Adam