한 사이트에 두 개의 서로 다른 서버를 사용할 수 있나요? 어떻게?

한 사이트에 두 개의 서로 다른 서버를 사용할 수 있나요? 어떻게?

동일한 사이트에 대해 서로 다른 데이터를 사용하여 두 대 이상의 서버를 사용할 수 있습니까?

예를 들어 server1에는 page1.html이 있고 server2에는 page2.html이 있으며 둘 다 에서 액세스할 수 있습니다 www.site.com. 가능합니까?

그게 어떻게 가능하다고 생각하시나요?

음, 각 DNS는 특정 서버를 가리키지만 NS1, NS2, NS3과 같은 몇 가지 서버를 지정할 수 있습니다...

내가 뭘 하려는 거지?

저는 PHP 기반의 기존 웹사이트를 가지고 있는데 asp.net-mvc를 사용하여 웹사이트를 확장하고 싶습니다. 현재 둘 다 동일한 서버에 설치되어 있으며 파일은 동일한 가상 디렉터리에 있습니다. 두 개의 다른 서버로 분할하고 싶습니다.

서버 세부정보:

윈도우 서버 2008 R2 및 윈도우 서버 2008.

추신

누군가 이 q에 태그를 다시 지정할 수 있나요? 올바른 태그가 무엇인지 모르겠습니다. 감사해요.

답변1

특정 URL 패턴에 대한 요청을 적절한 백엔드로 보내는 이를 수행하기 위해 계층 7 로드 밸런서를 사용할 수 있습니다(또는 다른 데이터 센터에 있는 일련의 로드 밸런서).

Varnish, Squid, Apache, Nginx, Lighttpd는 모두 이 문제를 어느 정도 잘 처리할 수 있습니다. LVS는 이를 수행할 수 있는 Linux용 소프트웨어 로드 밸런서(커널 내)입니다.http://www.linuxvirtualserver.org/ 이를 처리할 수 있는 상용 제품도 있습니다.

DNS는 원하는 방식으로 요청을 적절한 서버로 라우팅하지 않습니다. DNS는 요청을 가장 가까운 로드 밸런서(또는 각 밸런서 IP를 방금 게시한 경우 라운드 로빈)로 라우팅한 다음 밸런서가 콘텐츠를 제공할 백엔드를 파악합니다.

답변2

Microsoft NLB가 이를 달성할 것입니다. 2개의 다른 IIS 서버를 설정하고 이를 포트 80/443에서 50/50 분할을 수행하는 NLB 클러스터에 넣은 다음 각 웹 사이트의 다른 버전을 각 노드의 inetpub에 넣습니다. NLB IP 주소를 가리키도록 FQDN을 구성하면 단일 URL로 이동하여 액세스할 수 있는 두 가지 버전의 웹 사이트가 만들어지기 시작합니다.

이는 액세스 중인 노드를 선택할 수 있도록 허용하지 않지만 오히려 다른 모든 요청이 다른 서버로 이동하도록 보장합니다.

답변3

저는 현재 Apache의 Reverse Proxy 모듈을 사용하여 프로덕션 환경에서 이 작업을 수행하고 있습니다. ProxyPass 지시문을 사용하면 들어오는 URL을 기반으로 다양한 백엔드 서버에 요청을 전달할 수 있습니다.

www.site.com에서 수신 대기하도록 프런트엔드 Apache 서버를 설정한 다음, 요청된 URL을 기반으로 2개의 백엔드 서버인 server1 및 server2에 요청을 전달합니다. Google에서 Apache Reverse Proxy를 검색하면 이를 수행하는 방법에 대한 다양한 방법이 제공됩니다.

관련 정보