有可能使用WAMP进行流RPC调用吗?



我想使用WAMP协议的RPC和Pub/Sub使用websockets。特别是,我对使用横梁很感兴趣。作为WAMP服务器。

我通读了WAMP的规范,不清楚是否可以将数据流作为来自客户端的RPC调用的一部分。不过,它似乎支持从服务器流式传输结果。

edit:我想澄清一下,我指的是所谓的渐进式请求,而不是简单的服务器作为客户端。

今天(2015/05),WAMP有渐进式结果,但没有渐进式请求。

WAMP的开发过去是(现在仍然是)由用例驱动的。我们有一个渐进结果的用例,但没有渐进请求。此外,渐进式请求的工作方式也不是完全直接的。

服务器和客户端在WAMP中是等同的。经典意义上的客户端(例如浏览器)可以为经典意义上的服务器提供一个过程来调用,并且可以使用渐进式调用结果。

您应该能够通过简单地进行多个调用并使用某种排序/分块来在多个调用中拆分数据,从而相当容易地模拟这一点。或者,您也可以呼叫预期的接收方,让他们知道数据已准备好,然后让接收方发起呼叫,然后利用渐进式呼叫结果。

WAMP不支持此操作。出于这个原因和其他原因,我编写了RPEP协议。RPEP有三种模式:发布/订阅模式(称为"fireandforget")、普通RPC模式和流式模式。在第三种模式中,您调用命令,命令返回一个发出事件的流。这里有一个javascript (web和node.js)的实现:https://github.com/Tixit/rpep.js

最新更新