Martin, forget webservices. Nowadays they are all about "pull" or 
"submit", and you want to "push" data.

Did you consider a messaging system?

First, you probably want to chunk it to make each "delivery unit" more 
manageable. Next, you want them to be delivered as chunks, so a broken 
connection will not compromise the whole transfer. Finally you want it 
fast so you need to open several sockets at once.

If you need to exchange a lot of data it does not makes sense to force 
it through a single TCP connection. Most servers have a limited ability 
  to reach high speed in a single connection due to TCP handshaking 
limitations.

A quick and dirty recipe to transfer a zillion records of structured 
data as a stream:

a) Again, forget webservices and RPC.
    This is a raw data transfer problem.

b) Chunk your data and pack it in well formed XML documents, making them 
suitable to be handled in lots of platforms.

c) Send them through a messaging system. The simpler, the better. Is 
SMTP good enough? Go for it. If you want a sophisticated, "dog wags the 
tail" solution, there are also plenty of message-queue servers around.

d) Need to ensure chunk sequence? Here you will cover your hands with 
some dirt to write a transport handshake mechanism, like windows in TCP.


*Saran

Martin Jericho wrote:
>                  
>                 QUESTION 4:  All I really want to do is send a large
>                 array of structured data in a platform independent way. 
>                 I would like to use the standard RPC encoding of SOAP to
>                 avoid having to define my own XML schemas for the data,
>                 but I'm not sure whether today's SOAP implementations
>                 are mature enough to use for this purpose.  What do
>                 other people do in this situation?  I can't imagine I'm
>                 the only one.
>                  
>                  
>                 Thanks
>                 Martin Jericho
>                  
>                  
>                  
> 


Reply via email to