2016-11-15 59 views
0

每当我想部署我的新版本的rails应用程序。我想停止接受客户端的请求。如何在升级rails站点时停止接受请求?

示例:用户正在填写表格。在后面,我正在升级我的rails web(不是rails或ruby版本)。当用户在升​​级发生或发生时提交表单时,我想显示“网站已升级,请重试”等内容。实际上是可能的,还是以某种方式实现它。

编辑:假设用户正在填写10分钟的大表格(尚未按下提交)。我们的升级花了1分钟,当用户提交时,想要显示消息。

回答

0

一个常用的方法是在这样大的发布之前将站点切换到维护模式。在维护模式下,所有功能都处于脱机状态,服务器使用相同的静态HTML回复所有请求(“网站正在维护中,请稍后再试”或其他)。

例如,在heroku this is built-in

大版本之前,您启用维护模式

heroku maintenance:on 

做你的版本,升级数据库等,然后使网站重新上线

heroku maintenance:off 

如果你不是在Heroku上,你要么自己实现这个想法(这个想法是非常简单的),或者可能有这样的宝石。

+0

感谢您的快速回复。网站在亚马逊上。将研究它。 – user2657198