4

What are the best-practice / industry standard technologies for the folowing requirements

  1. Allow transfer of business objects from one client / server to another
  2. Language and platform independent
  3. Supports Streaming to alow passing large data (e.g. a connected statefull conversation)
  4. Is Asynchronous in nature (doesn't block, allows monitoring progress)

SOAP workaround

1,2 point on SOAP web services, but 3 and 4 make it a little hard to implement (don't they?)

I was thinking of the following "hack", but I both don't like it, and I'm sure there is a better solution.

To support 3 and 4 the SOAP web service can have methods that pass the data in chunks, e.g.

void startObjTransfer(String objectId);
void addObjChunk(String objectId, ObjData currentChunk);
void endObjTransfer(String objectId);

Where ObjData contains a partial graph of the data, and knowledge of its location in the graph.

to better support 4 a method like this can be used to ask how much progress was made

void getObjTransferProgress(String objectId);

What do you think about the above? isn't there (hopefully there is) a better one? (even non SOAP)


RMI / COM / .NET Remoting / DCOM

Not language independed


CORBA

Well, no.


REST

Not answering 3 and 4, (SOAP + Buzz?)


AJAX / COMETD

Related to question: Asynchronous web service streaming

Not sure how this will work, please explain


Message Queue?

Will that work for this purpose?

Community
  • 1
  • 1
Eran Medan
  • 44,555
  • 61
  • 184
  • 276
  • 1
    Do you mean language independent or platform independent? Using WCF in .NET would be language independent but not platform independent. – John Saunders Jan 30 '10 at 01:30
  • @John - WCF services will run only on .Net but the client can be on any platform written in any language (C#, Java, PHP, Ruby etc.) http://stackoverflow.com/questions/856368/is-wcf-platform-independent – Pavel Nikolov Jan 31 '10 at 14:38
  • @Pavel: I know. That's why I asked which one he meant. – John Saunders Jan 31 '10 at 23:00
  • @Pavel: http://stackoverflow.com/questions/856368/is-wcf-platform-independent/857825#857825 – John Saunders Feb 01 '10 at 05:59

1 Answers1

1

I think Coucho Hessian should fulfill your needs (including streaming, platform independence...). You might also take a look Thrift from the Facebook guys.

Zakaria
  • 14,892
  • 22
  • 84
  • 125
Lars Tackmann
  • 20,275
  • 13
  • 66
  • 83