marathon提供多种健康检查方式
常用的有TCP和HTTP,
TCP检查端口是否存在,存在则认为实例健康;
HTTP检查指定URL的HTTP返回码,返回码正常(2xx、3xx)则认为实例健康;
这两种方式在重启过程中会有差别:
1)TCP:由于端口存在到服务可用之间有一段时间,这段时间新的实例被认为‘健康’,但是无法响应服务,同时旧的实例被停止,导致有一段时间服务不可用;
2)HTTP:返回码正常的前提是服务可用;
如果希望重启过程服务一直可用,需要使用HTTP方式做健康检查;