浏览 1053 次
|
锁定老贴子 主题:Erlang和Python如何交互?
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
最后更新时间:2007-09-20 关键字: erlang python 集成 分布
我有几台机器上,都是用Python作的应用,现在需要一个网络分布的层把他们结合起来。打算尝试下Erlang,用erlang来处理网络分布的部分。由一台机器的python调用当前机器的erlang节点,然后到另一台机器上由erlang调用Python取得结果返回。
Python和Erlang之间用什么通讯比较合适? 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
最后更新时间:2007-09-20
你可以使用 erlang 的 port 机制。port 机制即利用 os 的 pipe 来与外界程序进行通讯,也就是 stdin/stdout 作为通讯的数据流。启动 port 程序,发送命令,等待反馈。在 port 的外层,可以包裹 erlang 的程序接口,或者放到 otp gen-server 中。
这里有一个 erlang - python 利用 port 进行通讯的例子,很简单,但足以作为参考。 |
|
| 返回顶楼 | |
|
最后更新时间:2007-09-20
具体到你的应用场景,可以在每一个机器上构建 erlang 环境,分别通过 port 与本机的 python 程序通讯。然后这一组机器形成一个 erlang 的服务群。
彼此之间通过 erlang 的通讯机制来互相通讯实现分布逻辑。 如果你的 client 是 python 的,那么最外层可以再用一个 port ,可以通过它来提供 python 的 api 。 即, 最终可以形成这样的结构:python <- port -> erlang --(分布层)lan-- (*)erlang <- port -> python 不过,如果这么做架构的话,因为 erlang 主要的业务其实还是 io ,erlang 只是充当传输层的作用,并没有充分发挥出它的优势。意义不会很不明显。这种场景,还不如用 lvs 之类的集群方案来得简单高效。 关键还看你的应用。莫为了技术而技术才好。 |
|
| 返回顶楼 | |
|
最后更新时间:2007-09-27
http://www.ketralnis.com/roller/dking/entry/20070903
写的相当清楚 专注 高性能 容错 分布服务器的实现(erlang) http://mryufeng.javaeye.com |
|
| 返回顶楼 | |






