部署 – 在生产中更新playframework应用程序的最佳工作流程

我正在尝试提出一个最佳的工作流程来更新我在Play框架上运行的Web应用程序.

我使用启动脚本来启动它,但是更新代码的最佳做法是什么,以便为用户提供尽可能无缝的代码?

在Apache PHP应用程序中,通常将新的* .php文件放在目录中就足够了,在许多情况下,用户甚至都不会注意到这种变化.

您可以与Play框架分享您的工作流程吗?

最佳答案
播放框架与在apache上使用像php这样的东西非常不同.当用户请求页面时,Apache会解释Php.所以你需要做的就是更改文件以更新站点.但是使用java(除非你使用.jsp文件,有时甚至是有时),代码是经过编译的,webserver需要在启动时加载它和它的库.这意味着只更换新编译的文件将无法正常工作.您需要重新启动Web容器或让它重新加载应用程序以获取更改.对于在重新加载完成的同时尝试访问站点的任何用户来说,这总是会引起注意.

您可以拥有一个Web服务器(不一定是Apache),它指向您当前的游戏安装作为代理并同时启动它的新版本,然后将您的代理Web服务器点切换到您的新版本并转换旧版本版本关闭.这可能是最简单的方法,可以编写脚本.

另一种方法是只有一个Web应用程序,将用户重定向到应用程序并执行类似于上面的并行更改.

这两个选项都需要一些设置和编码才能使它们无缝地工作.然而,这项工作可能是值得的,因为一旦你有它设置推出生产变得非常容易.

转载注明原文:部署 – 在生产中更新playframework应用程序的最佳工作流程 - 代码日志