F5로드 밸런서가 시간 초과시 요청을 다시 보냅니다.


8

저는 시스템 관리자가 아니라 프로그래머라고 말하면서이 서문을 시작하겠습니다.

최근 시스템 관리자가 F5로드 밸런서를 설치했습니다. 그 이후로 요청 시간이 초과되어 500을 던질 때마다로드 밸런서는 다른 서버로 동일한 요청을 보냅니다. 스크립트가 실제로 계속 실행되고 있어도 IIS는 시간 초과 응답을 보냅니다. 스크립트가 5 분 이상 실행되면 POST 요청도 복제됩니다. 이는 특히 고객 청구가 관련된 전자 상거래 사이트에서 잠재적 인 문제인 것 같습니다.

이것은 오래 실행되는 스크립트 중 일부에만 문제가되지만 심각한 문제입니다. 이것이 예상되는 동작이라는 말을 들었으며 코드를 변경해야합니다. 그래서 내 질문은 :

  • 이것이 예상되는 동작입니까?
  • 사용자가 새로 고칠 필요가없는 시간 초과 후로드 밸런서가 요청을 복제하면 어떤 이점이 있습니까?
  • 이 아키텍처를 사용하면 서버를 중단 시키거나 리소스를 낭비하는 스크립트가 실행되면 두 서버에서 모두 실행됩니다. 정말 최적인가요?

다른 서버에 '같은 요청을 보냅니다'라고 말할 때 구성된 상태 확인 또는 사용자 요청을 참조하고 있습니까? 내 감각은 아니오이지만 명확히 할 가치가 있습니다. 이에 대한 답변은 답변 및 / 또는 제안을 변경합니다.
mcauth

@mcauth 사용자 요청을 다시 보냅니다. 기본적으로 사용자가 500 오류를 표시하는 조치를 수행하는 경우로드 밸런서는 동일한 정확한 요청을 다른 서버로 보내 단일 HTTP 요청에서 두 개의 응답을 작성합니다.
Jim D

1
나는 오랫동안 Big-IP 궤도에 있었고, 요청을로드하기 위해 HTTP :: collect를 버퍼링하기 위해 iRule을 통해 그렇게 지시하지 않는 한 요청을 재생하는 것을 결코 알지 못했습니다. . 매우 이상합니다. 실행중인 구성을 보지 않으면 말하기가 매우 어렵습니다.
mcauth

이 스레드를 약간 부딪쳐서 정확히 똑같은 문제가 발생했음을 알려줍니다. 그것을 해결하는 데 더 도움이 되었습니까?
BitMask777

@ BitMask777-불행히도 우리는 이것으로 더 이상 아무것도 얻지 못했습니다. 이것은 여전히로드 밸런서의 동작이며 "처리하고 있습니다".
Jim D

답변:


3

Big-IP의 수동 애플리케이션 모니터링에 대한이 항목을 살펴보십시오.

귀하의 질문에 대한 나의 대답은 실망 스럽지만

  • 아마도 (수동 모니터링 구성에 따라 다름)

  • 사용자에게 오류가 표시되지 않습니다

  • 어쩌면 (사용자 오류를 처리하거나 다른 곳에서 요청을 시도하고 싶습니까?)

"서비스 중단시 작업"은 구성 가능한 설정입니다.


답변 주셔서 감사합니다. 당신은 그것이 조금 실망 스럽습니다. 나는 더 구체적인 것을 기대하고있었습니다. 나는 확실한 대답이 없다고 설명하는 것이 구체적이라고 생각합니다.
Jim D

0

500 오류가 발생하면 웹 서버에 문제가 있음을 나타냅니다. 그런 다음 F5는이 오류를 연결 클라이언트에 전달합니다. 자체 협정 요청을 "재전송"하지 않습니다. 이 문제가 발생할 수있는 유일한 방법은 클라이언트가 요청을 다시 시도하는 것입니다. 이 시점에서이 요청은 다른 풀 멤버에로드 밸런싱 될 수 있지만 보장은 없으며 지속성 또는 사용 된로드 밸런싱 방법 (라운드 로빈, 최소 연결 등)을 기반으로합니다.

즉, F5에 정말 미친 iRule이 없으면 스크립트 자체로 인한 동작입니다.

(참고 : 저는 LTM과 함께 일하면서 1 년 반 동안 F5의 Nework 지원 엔지니어였습니다)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.