在Windows服务器上启动Erlang应用程序

时间:2010-08-18 15:47:57

标签: windows erlang windows-server-2008 otp erlang-shell

我有一个部署在Windows Server 2008服务器上的Erlang应用程序。

我这样做的方式:

  1. 在Erlang lib 目录中复制应用程序文件夹。
  2. 打开命令行(cmd)。执行 erl
  3. 在Erlang shell中执行应用程序:start(app_name)
  4. 有没有更好的方法来启动应用程序?如何使应用程序在Windows启动时启动?

3 个答案:

答案 0 :(得分:4)

我没有使用Windows的经验,但是......

'1。首先,您可能希望了解Erlang中release的概念。从本质上讲,

  

当我们编写了一个或多个应用程序时,我们可能希望创建一个由这些应用程序和Erlang / OTP应用程序子集组成的完整系统。这称为发布。

`2。然后,您可能想要创建一个包含以下内容的脚本:

erl -boot ch_rel-1

基本上你使用上面创建的启动脚本启动Erlang / OTP(只需按照发布页面中的说明进行操作)

`3。本文介绍如何在Windows Server 2008中创建启动脚本(未经测试,只需用Google搜索):

http://technet.microsoft.com/en-us/magazine/dd630947.aspx

希望这会有所帮助。好问题。

答案 1 :(得分:1)

也许rebar可能会有所帮助。它使构建应用程序框架和发布非常容易。一个很好的教程是here

答案 2 :(得分:0)

熟悉版本后,请查看start_erl和erlsrv的手册页(erl -man)。我用它们在Windows 2003中启动嵌入式系统(http://www.erlang.org/doc/embedded/embedded_nt.html),希望它在Windows 2008中仍适用于你。 使用erlsrv创建服务后,可以通过标准的Windows命令行和GUI工具进行管理,例如:设置启动模式并重启策略。

可能你可以通过提供“-s app_name”作为erl / start_erl附加标志来启动你的应用程序,但我没有尝试,因为我不得不走很长的路线与嵌入式系统发布。在这种情况下,请确保您有“start() - >应用程序:start(?MODULE)。”在你的“app_name.erl”。