HAProxy HTTP 및 TCP


17

HAProxy는 모드를 TCP 또는 HTTP로 설정하는 옵션을 제공합니다. 또한 포트를 설정할 수 있습니다.

포트를 선택할 수있게한다면 왜 HTTP와 TCP를 선택할 수 있습니까? HTTP를 원한다면 TCP와 포트 80을 선택할 수 있습니까?

왜 TCP와 HTTP 만? HTTP가 TCP가 아님을 암시하는 것 같습니다. TCP, HTTP, SNMP, FTP 등이없는 이유는 무엇입니까?

왜 HTTP와 TCP입니까? HTTP가 TCP 인 경우 왜 이러한 옵션 중 하나가 있습니까? 매우 혼란스럽고 비 http (s) 서비스의로드 밸런싱에 대한 정보를 찾기가 정말 어렵습니다.

답변:


28

HAProxy 구성에서 HTTP 메소드를 사용하면 여러 HTTP 특정 옵션에 액세스 할 수 있습니다. 예를 들어 HTTP 요청의 URL을 기반으로 다른 백엔드를 선택할 수 있습니다. TCP 모드를 지정할 때 HAProxy는 패킷의 HTTP 헤더를 평가하지 않습니다.

따라서 HTTP 트래픽에 TCP를 사용할 수는 있지만 추가 HTTP 옵션은 없습니다. 참고로 SSL 기능을 사용하지 않는 한 패킷이 암호화되고 HAProxy가 HTTP 헤더를 볼 수 없으므로 HTTPS 트래픽에 TCP를 사용해야합니다.


감사. 그것은 정말 나를 위해 그것을 이해하는 데 도움이되었습니다. 건배.
— marflar

6

누군가 이것에 블로그 게시물을 썼습니다 : http://www.linickx.com/645/load-balance-anything-with-haproxy

어쨌든, haproxy를 유지 관리하는 사람들이 선택한 구문을 사용하는 이유를 모르겠지만 오해의 소지가있는 것으로 마음에 들지 않습니다 ( 뇌에 HTTP 또는 TCP 나사가 있을 수 있음 ). HAProxy로 무엇이든로드 밸런스 할 수 있으며 HTTP가 아닌 경우 TCP와 올바른 포트 번호로 이동하십시오.


전송 계층에서 HTTP는 TCP이므로 전체 응용 프로그램은 TCP에 대한 전문화를 가진 TCP 일뿐입니다. 그건 그렇고 좋은 연결입니다.
— Signus
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.