Subject [IBO] Re: How to maintain coherence between 2 databases
Author Mihai Chezan
> If you don't want to pay for the replication components, you can
> study an html version of the helpfile by clicking on the link that's
> on the Replication module's "Module" page on the main website
> (http://www.ibobjects.com/iborpl.html). Also, the IB_RPL.dpr
> project in your IBO root directory is a demo setup.
Thank you for the link. After reading a little bit I see that ibo
replication tools are not so 'simple' after all and you can make a lot
of customisations to the replication process which is a good thing.

> Really, the answer should be "defining replication as part of an
> application has recognised limitations."
:)
Some times you have to implement a custom made replication solution to
satisfy the requirements of your application. With a custom
implementation you can obtain an efficient replication (speed,
bandwidth) at the cost of flexibility (it only does what your
application needs to) and portability (it will only work for your
application).

> Simply put, the integrity of both sides of the replication relation
> is totally dependent on one application. It's really only "safe"
> where the application vendor has tight control over what users do
> with the database;
I agree and in my case "tight control" was never a problem.

> and it is between "hard" and "impossible" to protect it from
> communication problems.
No problems until now and the system scales very well from 1 client to
1000 clients. If you want more clients just buy more bandwidth and
more severs for handling http clients (tomcat knows load balancing out
of the box). This might not be enough to be able to serve more
concurent clients because of the db server limitations. The solution
is simple: define an average of concurent users that can be served
concurently and queue the rest of the clients or, for costs reasons,
use a time multiplexing sistem: client connects to the internet, then
connects to the server, the server tells the client it's busy and to
come back in xx minutes, then the client disconects from the internet
and will retry after xx minutes.