I'm writing a program that needs to transfer accrued sales data from various slave nodes to a master node, over an ethernet LAN. The master application software is written in C++/MFC for Windows and the slaves application software is written in C++/Qtopia for Linux. I think that the most effective way of doing this is by accrueing a single day's sales data into a single XML file, transfering this XML file to the master, have the master parse this and store it in its database and then delete its local copy. The slave keeps its original XML file, should it be needed again.
My questions are:
1. Is my basic approach a sensible way of doing it? Convenience of implementation is important. I'm hoping to use someone else's nice Apache/BSD licenced API.
2. How should I transfer the XML file? Obviously, I favour something efficient, with a low-overhead. I don't like the look of SOAP. Using http as a "transport" protocol probably incurs an unnecessary overhead, and is aesthetically ugly. There has to be a better way. That said, we aren't talking about transfering very large files here, and they'll be transfered at full 100mb ethernet speed, so efficiency isn't an all-important consideration.