我想使用Ratchet(
http://socketo.me)在iPhone应用程序和服务器之间永久连接.我需要在应用和服务器之间交换数据.
从这个例子(http://socketo.me/docs/hello-world)我发现我有一个函数onMessage,当应用程序发送一个按摩服务器和服务器可以发送一个响应到应用程序将被调用.
但服务器也必须能够将数据发送到应用程序,而无需从应用程序获取数据.例如,应用程序和服务器之间的连接已经建立.在服务器上发生了一些事情,我们需要向应用发送一个新的数据.如何做到这一点呢?
主要问题是如何从服务器发送数据到App?
感谢您的任何帮助.
这的确有可能.您需要以某种方式与WebSocket服务器进程进行通信.您可以通过使用某种形式的消息传递来实现,无论是RPC还是消息队列.
棘轮本身是基于React事件循环.这意味着与Ratchet的任何形式的通信必须与该事件循环集成. On the React homepage你可以看到已经存在的一些集成:
> Predis/Async(可以使用redis pub / sub进行消息传递)
> DNode-PHP(dnode是基于TCP的RPC协议)
> React/ZMQ(将事件循环与ZeroMQ集成)
> React/Stomp(执行STOMP协议,让您可以与RabbitMQ等消息进行通话)
> JCook21/ReactAMQP(AMQP绑定用于React PHP)
在Ratchet文档中有a tutorial on how to use React/ZMQ,以便将消息从任何地方推送到WebSocket服务器.