java - Chef 对已部署应用程序的健全性检查

标签 java tomcat chef-infra

我正在使用使用 Chef 部署 java 应用程序(war 文件)的 AWS Opsworks

问题是 Chef Recipe 完成了,但是当发生这种情况时,tomcat 设置为重新启动。

因此,从部署成功到应用实际可用之间有一段时间。

而且那段时间tomcat重启也有可能失败。

是否有一本 Recipe 可以通过超时 ping 特定的 url,并且只有在 ping 成功时才认为 chef 运行成功?

最佳答案

您可以将其添加到您的 Recipe 代码中:

ruby_block 'wait for tomcat' do
  block do
    until (Chef::HTTP.new('http://localhost').get('/') rescue false)
      sleep(1)
    end
  end
end

或者类似的东西。

关于java - Chef 对已部署应用程序的健全性检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27511718/

相关文章:

java - RC4解密Java

java - FragmentTransaction Replace() 方法仅替换布局中的某些元素

java - 无法找到错误的根本原因(GWT-Umbrella 异常)

java - Tomcat集群中如何维护应用范围?

ruby - opscode Chef 可以执行等待直到条件成立吗?

java - 使用java处理应用内苹果收据

java - tomcat jdbc 领域 - j_security 不重定向

tomcat - 与 Tomcat 一起使用时,Forked Grails VM 因错误退出

chef-infra - 从 Chef 通知中最小化服务重启?

Vagrant + Chef 盒子 throw "uninitialized constant Opscode::Mysql"