Hello all,
We have a website that uses toplink to connect to a relational oracle database.
We want to do a bi-directional synchronization with another application. The access between both applications will happen over a leased line. The other application I'm talking about is in fact a
consolidation server that has data from several off line applications that is syncronized with the consolidation server at regular times. The offline applications are used for data entry of books.
We want to synchronize operations between the website application server and the consolidation server like:
create a new book, including images (app. server <-> cons. server)
modify a book's properties (app. server <-> cons. server)
delete a book (app. server <-> cons. server)
visitor statistics (app. server -> cons. server)
order a book (app. server <-> cons. server)
As you can see some synchronization needs to be bi-directional and some synchronization is only uni-directional.
We thought to describe the transactions in XML and put them on the disc of the website application server and to create a
thread that reads from
an IN directory. A process at the consolidation server put XML files in the IN directory over a SSH connection. Our application puts XML
transactions in the OUT directory.
It's also needed to synchronize jpegs, that will be stored on disk and not in the database, the JPG's will also be put on disk. The XML transaction eveloppe describes the transaction to be done and has references to the images (jpg's) that belong to the transaction.
The transactions execution time can range from 5 sec to 3 minutes.
Is this a good solution? IS
SOAP an alternative here? What are the drawbacks/advantages of such a solution?
thanks for any input.
Kris