고성능 서버 부하 균형을 위한 실행 가능한 방안
1806 단어 부하 균형
대략적인 의미는 여러 개의 사용자 요청 서비스, 서버는 하나의 집단으로 고객과 서버 사이에 부하 균형을 더해서 모든 사용자가 정상적으로 서비스를 요청할 수 있고 부하 균형 기구는 사용자의 요청을 적당한 서버로 나눌 수 있다는 것이다.이렇게 하면 서버가 최상의 작업 상태에 도달할 수 있다.
그러나 이런 문제에 대해 대다수 사람들이 제시한 해결 방안은 모두 socket과 Epool을 바탕으로 하는 것이다. 그러나 이런 방안에서 한 대의 기계도 200-300Mbps의 유량 부하를 처리한다.다음은 또 다른 해결 방안을 제시한다.네트워크 패킷 기반 캡처 솔루션
플랫폼: Linux + 서광 제로 복제 NIC
서광 제로 카피는 천메가 네트워크 카드와 만메가 네트워크 카드를 내놓았는데, 말하자면 포획 속도가 1000Mbps와 10000Mbps이다.
_______ _________ ________
| | | | | |
|Clients| ----->|Balancer |------------->|Servers |
|_______| |_________| |________|
데이터 패키지를 수정하여 부하 균형을 맞출 수 있다.예를 들어 클라이언트가 Balancer를 요청하면 Balancer는 여러 서버의 상황에 따라 적합한 서버를 선택하여 처리한다. 그 다음에 이 패키지의 목적 IP를 선택한 서버의 IP로 바꾸고 목적 MAC를 서버의 MAC로 바꾸며 원본 MAC를 Balancer 자체의 MAC로 바꾼다.그러면 다시 인터넷 카드를 통해 수정된 가방을 보낼 수 있습니다.이 패키지는 해당 서버에 의해 처리됩니다.서버가 되돌아온 데이터 패키지입니다. 우리는 그 원본 IP를 Balancer의 IP로 바꾸고, 원본 MAC를 Balancer의 MAC로 바꾸고, 목적 MAC를 클라이언트의 MAC로 바꾸고, 그 다음에 네트워크 카드를 통해 발송합니다.이렇게 하면 Balancer의 기본 기능을 실현할 수 있다.주의해야 할 것은 클라이언트 서버의 대응 관계를 유지해야 한다는 것이다.이 대응 관계는 유지하기 쉬울 뿐만 아니라 매우 효율적으로 할 수 있다.그리고 데이터 패키지를 수정하는 MAC와 IP는 전혀 비용이 들지 않습니다.
지금 이 방안이 앞의 방안에 비해 장점을 좀 봅시다.
Balancer 양방향 송수신 패키지 때문에 처리된 최고 유량은 20% 할인해야 합니다.10000Mbps의 네트워크 카드를 사용하면 5000Mbps를 양방향으로 처리할 수 있다.(10000Mbps 데이터를 포획할 수 있는 네트워크 카드는 내가 헛소리를 한 것이 아니다. 우리는 당시에 이 네트워크 카드로 7Gb/s의 데이터를 처리한 적이 있다. 왜냐하면 우리는 정말 더 큰 데이터를 얻지 못하기 때문이다.)그러니까 이런 Balancer가 socket 방식의 20개의 Balancer를 당해낸 거야.다시 계산해 보자. 만약에 원래 100개의 Balancer가 있었다면 지금은 5개의 Balancer만 있으면 절약한 95대의 서버는 적지 않은 비용이지만 95대의 서버의 전기료와 유지보수비도 절약했다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Haproxy 웹 클러스터 구축실험 준비: Haproxy 서버 1대, Nginx 서버 2대, 클라이언트 1대(로컬 컴퓨터 사용) Nginx 서버: ### 참고: 둘 다 비슷한 작업을 수행해야 합니다. Haproxy 서비스: 테스트: 클라이언트가 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.