Python和Scala程序之间的进程间通信

时间:2014-05-27 09:00:25

标签: python scala interprocess

我有一个由CherryPy Web框架和scala程序支持的网站,该程序在同一台机器上运行并包含一个actor系统。操作系统是Ubuntu 12.04。

我想要的是:一旦用户填写并提交表单,我将数据从CherryPy后端发送到scala程序作为JSON字符串。如何才能做到这一点?我应该在python和scala程序中使用什么来实现这个功能?

2 个答案:

答案 0 :(得分:4)

您可以考虑像RabbitMQ这样的消息代理,而不是使用原始套接字。它支持Scala和Python。

http://www.rabbitmq.com/tutorials/tutorial-one-python.html

在Scala方面,Akka有一个AMQP模块,它将AMQP Connection,Producer和Consumer作为演员进行抽象。

http://doc.akka.io/docs/akka-modules/1.3.1/modules/amqp.html

答案 1 :(得分:1)

当您使用* nix系统时,您可能需要查看Unix domain sockets(该链接包含一个非常明确的示例用法)。

您可以使用python socket模块轻松创建Unix套接字:

import socket
sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)