cloud foundry
我一直在尝试编写用于将应用程序部署到Cloud Foundry的gradle插件 ,并在上一篇文章中写了有关此插件的文章 。 现在,我通过使用两种方法支持将无停机时间部署到Cloud Foundry中来增强此插件: 自动驾驶风格部署和更常用的蓝绿色风格部署 。
要完全了解该插件,一旦对其进行了彻底的配置,您要做的就是以下操作:
对于自动驾驶风格
./gradlew cf-push-autopilot
对于蓝绿色部署:
./gradlew cf-push-blue-green
插件任务将处理其余的工作。
解决了什么
如果使用Cloud Foundry CLI将应用程序推送到Cloud Foundry,则该应用程序的现有实例将停止,替换并启动。 这会导致应用程序停机,直到应用程序的新实例启动为止。 为了演示这种行为,下图显示了将应用程序推送到Cloud Foundry时网站的稳定访问量–新应用程序启动时出现了30秒的闪烁。
自动驾驶仪和蓝绿色样式部署
通过仔细协调应用程序的部署,使面向外部的路由始终指向应用程序的工作版本,自动驾驶仪和蓝绿色部署样式解决了该问题。
现在,该插件本机执行这两种无停机部署样式所需的所有步骤。
这是使用该插件进行自动驾驶仪样式类型部署时该图的外观,请注意,新应用程序进入时的响应时间会稍长一些。一旦启动,响应时间就会变得平稳:
并使用此插件进行蓝绿色样式部署
参考文献:
1.有关如何安装和配置插件的详细信息,请参见此处 – https://github.com/pivotalservices/ya-cf-app-gradle-plugin
2. 在此处配置了该插件的示例应用程序– https://github.com/bijukunjummen/cf-show-env
3.可在此处使用加特林进行负载测试
翻译自: https://www.javacodegeeks.com/2016/08/no-downtime-deployment-using-yet-another-cloud-foundry-gradle-plugin.html
cloud foundry