【发布时间】:2017-01-20 15:22:18
【问题描述】:
我有一个受监督的 elixir 应用程序,我正在运行它:- MIX_ENV=dev mix run。现在,如果我更改代码,那么如何通过不先杀死它来优雅地重新启动应用程序。 (就像我们使用 HUP 优雅地重启 supervisord 进程)
【问题讨论】:
标签: elixir
我有一个受监督的 elixir 应用程序,我正在运行它:- MIX_ENV=dev mix run。现在,如果我更改代码,那么如何通过不先杀死它来优雅地重新启动应用程序。 (就像我们使用 HUP 优雅地重启 supervisord 进程)
【问题讨论】:
标签: elixir
您可以在此问题的答案中找到实际代码热交换的细节:
Achieving code swapping in Erlang's gen_server
关于如何使重新加载过程自动化,您可以查看 phoenix 以及它是如何进行重新加载的。它的摘要是它使用 fs lib 来监视文件系统更改并调用类似于上述问题的答案中概述的过程。
【讨论】: