每当我想部署我的新版本的rails应用程序。我想停止接受客户端的请求。如何在升级rails站点时停止接受请求?
示例:用户正在填写表格。在后面,我正在升级我的rails web(不是rails或ruby版本)。当用户在升级发生或发生时提交表单时,我想显示“网站已升级,请重试”等内容。实际上是可能的,还是以某种方式实现它。
编辑:假设用户正在填写10分钟的大表格(尚未按下提交)。我们的升级花了1分钟,当用户提交时,想要显示消息。
每当我想部署我的新版本的rails应用程序。我想停止接受客户端的请求。如何在升级rails站点时停止接受请求?
示例:用户正在填写表格。在后面,我正在升级我的rails web(不是rails或ruby版本)。当用户在升级发生或发生时提交表单时,我想显示“网站已升级,请重试”等内容。实际上是可能的,还是以某种方式实现它。
编辑:假设用户正在填写10分钟的大表格(尚未按下提交)。我们的升级花了1分钟,当用户提交时,想要显示消息。
一个常用的方法是在这样大的发布之前将站点切换到维护模式。在维护模式下,所有功能都处于脱机状态,服务器使用相同的静态HTML回复所有请求(“网站正在维护中,请稍后再试”或其他)。
例如,在heroku this is built-in。
大版本之前,您启用维护模式
heroku maintenance:on
做你的版本,升级数据库等,然后使网站重新上线
heroku maintenance:off
如果你不是在Heroku上,你要么自己实现这个想法(这个想法是非常简单的),或者可能有这样的宝石。
我建议你寻找到做服务的维护页面nginx的和你必须建立一个html页面由nginx服务
请阅读以下文章,了解如何使nginx服务于维护页面
感谢您的快速回复。网站在亚马逊上。将研究它。 – user2657198