2015-11-04 55 views
3

我想在进程之间共享一个Mojo :: Transaction :: WebSocket对象。在进程之间共享一个复杂对象

原因是我正在建立一个websocket聊天,我不想限制Mojolicious只能与一名工作人员一起运行。

可存储没有为我工作,它只是给了我奇怪的错误。

任何想法,将不胜感激。

回答

0

您可以通过多种方式实现此目的。分享websocket本身就很困难,并且需要对流程分支/线程,共享文件描述符以及对可能需要改变的基础代码的了解。

如果您的目标是负载平衡或执行一些长时间运行的任务,您最好让mojo应用程序接受请求并将其添加到队列系统(如redis)中。您可以让多个进程监听特定请求,读取有效负载,并通过队列发回响应。

如果你只是想能够访问你的Mojo应用程序用于其他目的的内部,考虑证明你要发布的数据一个宁静的端点,

或者,你可以看看远程过程调用( RPC),它将允许您的Mojo进程调用函数,并将数据发送到其他进程。以RPC::Simple为例。