2011-06-05 111 views
0

我是Erlang的新手,一直在阅读O'Reilly的伟大着作,我也在Internetz上关注过一些教程。我可以像应用程序工作站那样获得基本的Mochiweb聊天,并且还可以从运行的AMQP队列中获取一小部分代码。Mochiweb + AMQP消费者

我的问题现在来了,我希望所有这些都在一起运行。然而,我在mochiweb使用(make app PROJECT = projname PREFIX = $ HOME/PROJECT /)生成的代码中感到困惑,在那里我可以启动我的AMQP使用者。

我打算让一些代码将消息从AMQP“路由”到像我建立的应用程序一样的mochiweb聊天。我还希望能够产生多个消费者和路由器,以便在需要时进行扩展。

有人能给我一些关于构建我的项目的建议吗?我会在哪里开始我的消费者?在projname.erl start() - >位?

我读过的大部分内容都很好的介绍了语法和概念,但是如何用Erlang构建体面的可伸缩体系结构就是我努力的方向。我想你会说要去读我没有的乔阿姆斯特朗书。

回答

0

将您的消费者添加到为您的项目生成的应该是projname_sup.erl的主管。

在这个模块中,你会发现一个监督树只包含一个名为“网络”儿童的定义:

init([]) -> 
Web = web_specs(dnd_server_web, 8080), 
Processes = [Web], 

只要创建主管规格为您AMQP消费者,并将其添加到进程列表。