用于传输对象数据的流式、异步、语言独立技术
满足以下要求的最佳实践/行业标准技术是什么
- 允许将业务对象从一个客户端/服务器传输到另一客户端/服务器
- 独立于语言和平台
- 支持流式传输以允许传递大数据(例如连接的全状态对话) )
- 本质上是异步的(不阻塞,允许监视进度)
SOAP 解决方法
1,2 点关于 SOAP Web 服务,但是 3 和 4 使其实现起来有点困难(不是吗? )
我正在考虑以下“黑客”,但我都不喜欢它,而且我确信有更好的解决方案。
为了支持 3 和 4,SOAP Web 服务可以具有以块的形式传递数据的方法,例如,
void startObjTransfer(String objectId);
void addObjChunk(String objectId, ObjData currentChunk);
void endObjTransfer(String objectId);
其中 ObjData
包含数据的部分图以及其在图中的位置的知识。
为了更好的支持4可以用这样的方法来询问取得了多少进展,
void getObjTransferProgress(String objectId);
您对以上有何看法?没有(希望有)更好的吗? (甚至非 SOAP)
RMI / COM / .NET Remoting / DCOM
不独立于语言
CORBA
嗯,不。
REST
不回答 3 和 4,(SOAP + Buzz?)
AJAX / COMETD
与问题相关:异步 Web 服务流
不确定这将如何工作,请解释一下
消息队列?
这可以用于此目的吗?
What are the best-practice / industry standard technologies for the folowing requirements
- Allow transfer of business objects from one client / server to another
- Language and platform independent
- Supports Streaming to alow passing large data (e.g. a connected statefull conversation)
- 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?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我认为 Coucho Hessian 应该满足您的需求(包括流媒体、平台独立性......)。您还可以看看 Facebook 人员的 Thrift。
I think Coucho Hessian should fulfill your needs (including streaming, platform independence...). You might also take a look Thrift from the Facebook guys.