이 라이브러리의 수정 된 버전 (https://github.com/kamermans/HAProxyAPI)을 사용하여 모든로드 밸런서 인스턴스에 연결합니다. 그러나 연결된 서버가 활성 인스턴스인지 아니면 백업 인스턴스인지 여부를 확인하려면 통계에서 'bck'속성을 사용해야합니다. ($ loadbalancer [ 'haproxy_stats'] -> info-> line-> data-> bck)PHP 보호 객체 속성 (haproxy)
$ loadbalancer [ 'haproxy_stats'] -> health-> backup에주의하십시오. 필요한 것이 아니기 때문에 백업 서버가이로드 밸런서에 있는지 여부 만 나타냅니다.
어떻게이 속성에 액세스 할 수 있습니까?
예제 Haproxy 통계 : HAProxy_Stats :: get ($ exec) -> getServiceStats ($ interface, $ server);
HAProxy_Stats_Service 개체 ( [정보] = > HAProxy_Stats_Info 개체 ( [지도 : 보호] = > 배열 ( [pxname] = > proxy_name
결과 (인 print_r)은 다음과 같습니다 [svname] = > service_name [weight] = > weight [pid] = > process_id [iid] =,743,925,862,473,210는 는 [SID = > SERVICE_ID 는 [트랙] = >는 [타입 = > 형 )
[type] => 2
[proxy_name] => core_loadbalancer
[service_name] => Core03
[process_id] => 1
[proxy_id] => 2
[service_id] => 3
[weight] => 1
[tracked] =>
[line:protected] => HAProxy_Stats_Line Object
(
[data:protected] => Array
(
[pxname] => core_loadbalancer
[svname] => Core03
[qcur] => 0
[qmax] => 0
[scur] => 0
[smax] => 0
[slim] => 20000
[stot] => 0
[bin] => 0
[bout] => 0
[dreq] =>
[dresp] => 0
[ereq] =>
[econ] => 0
[eresp] => 0
[wretr] => 0
[wredis] => 0
[status] => UP
[weight] => 1
[act] => 0
[bck] => 1
[chkfail] => 6
[chkdown] => 0
[lastchg] => 523133
[downtime] => 0
[qlimit] =>
[pid] => 1
[iid] => 2
[sid] => 3
[throttle] =>
[lbtot] => 0
[tracked] =>
[type] => 2
[rate] => 0
[rate_lim] =>
[rate_max] => 0
[check_status] => L4OK
[check_code] =>
[check_duration] => 0
[hrsp_1xx] => 0
[hrsp_2xx] => 0
[hrsp_3xx] => 0
[hrsp_4xx] => 0
[hrsp_5xx] => 0
[hrsp_other] => 0
[hanafail] => 0
[req_rate] =>
[req_rate_max] =>
[req_tot] =>
[cli_abrt] => 0
[srv_abrt] => 0
[] =>
)
)
)
목적은 계속
하지만 문자 제한이을 ... 추적 proxy_id