처리 능력은 소프트웨어 성능의 핵심입니다. 몇 년 된 컴퓨터에서 새 컴퓨터로 업그레이드할 때 성능이 크게 향상되었음을 금방 눈치챌 수 있습니다. 무어의 법칙은 CPU가 처음 발명된 이후로 CPU의 트랜지스터 수가 약 2년마다 두 배로 증가했다고 설명합니다. 이로 인해 컴퓨팅 성능이 지속적으로 증가하여 정기적인 업그레이드 주기가 이루어졌습니다.
현재 고급형 컴퓨터의 고성능에도 불구하고 많은 작업이 한 대의 컴퓨터가 합리적인 시간 내에 처리하기에는 너무 많습니다. 고맙게도 이러한 작업의 대부분은 일반 가정 사용자나 많은 표준 사무실 작업에 영향을 미치지 않습니다. 그러나 전문화된 전문 워크로드에서 이러한 종류의 워크로드를 찾기 시작할 수 있습니다.
이를 처리하는 한 가지 옵션은 관련 인력을 보다 강력한 고급 컴퓨터에 할당하는 것입니다. 그러나 이 전략은 비용이 많이 들고 많은 경우 처리 요구 사항이 너무 높기 때문에 차이가 없습니다.
서버 팜은 개인 장치에 점점 더 많은 성능을 집어넣고 관련 직원당 하나의 장치를 갖고 있지만 여전히 필요한 성능을 갖추지 못하는 대신 다른 옵션입니다. 서버 팜은 기본적으로 처리 능력을 아웃소싱합니다. 이 경우 직원이 서버 팜에 할당한 무거운 처리 작업을 수행하는 여러 서버를 함께 클러스터링해야 함을 의미합니다. 그런 다음 처리 작업이 서버로 전달됩니다.
서버 팜의 주요 기능 및 장점
서버 팜의 정의 요소는 더 이상 처리를 수행하는 하나의 장치로 제한되지 않는다는 것입니다. 대신, 처리 능력은 모두 클러스터에 그룹화된 수십, 수백 또는 수천 대의 서버에 의해 제공됩니다.
서버 자체는 일반적으로 서버실이나 데이터 센터에 있습니다. 여기에서 처리할 워크로드를 수신하고 제때에 완료된 워크로드를 다시 전송하기 위해 고속 네트워킹과 서로 간의 고속 연결로 구성할 수 있습니다.
모든 서버의 실제 성능을 주의 깊게 관리함으로써 합리적인 비용으로 전체 성능을 조정할 수 있습니다. 서버는 일반적으로 24시간 연중무휴로 운영되지만 워크로드에 따라 달성하지 못할 수도 있습니다. 항상 최대 성능으로 실행하는 것은 많은 전력을 사용합니다. 그것은 또한 더 많은 전력이 필요하고 더 많은 냉각이 필요하다는 것을 의미합니다. 많은 서버 팜이 와트당 고성능을 달성하기 위해 최고 성능 이하로 실행될 수 있습니다.
하위 유형 및 변형
코드 개발 작업에서 많은 언어는 애플리케이션을 실행하기 전에 컴파일해야 합니다. 이 컴파일 프로세스는 프로세서 집약적이며 대규모 응용 프로그램에서는 몇 시간이 걸릴 수 있습니다. 서버 팜은 단일 컴퓨터에서 가능한 것보다 더 높은 성능을 제공하여 컴파일 시간을 줄이는 데 도움이 될 수 있습니다. 서버 팜은 또한 24/7을 실행할 수 있으므로 개발자는 자신의 컴퓨터를 끌 수 있는 동안 밤새 실행되도록 컴파일 프로세스를 대기열에 추가할 수 있습니다. 소프트웨어 컴파일에만 사용되는 서버 팜을 컴파일 팜이라고 합니다.
컴퓨터 그래픽 역할에서 렌더링 시간은 종종 길 수 있습니다. 시간이 걸릴 수는 있지만 정지 이미지의 경우 큰 문제는 아닙니다. 비디오 렌더링은 특히 시네마급 영화의 경우 시간이 오래 걸릴 수 있습니다. 장면은 엄청나게 복잡할 뿐만 아니라 고해상도이며 초당 많은 프레임이 필요하기 때문에 장면이 많습니다. 렌더링 작업 전용 서버 팜을 렌더링 팜이라고 할 수 있습니다.
서버 팜과 슈퍼컴퓨터 사이에는 거의 차이가 없습니다. 둘 다 작업을 수행하기 위해 함께 작동하도록 설계된 광범위한 서버 모음입니다. 둘 사이에는 명확한 정의 차이가 없습니다. 역사적으로 슈퍼컴퓨터는 특수 목적의 하드웨어를 사용했습니다. 그러나 슈퍼컴퓨팅의 현재 추세는 기성 서버 구성 요소를 더 많이 사용하는 것입니다.
흐린 미래
서버 팜은 비쌉니다. 전력 소모가 많고 냉각이 많이 필요하며 데이터 센터 인프라가 필요합니다. 서버 팜은 초기 하드웨어 비용이 많이 들고 설정 비용도 많이 듭니다. 설상가상으로 그들은 정기적인 노후화에 직면해 있습니다. 일반적으로 고급 데이터 센터 업계에서는 7년 된 데이터 센터가 더 이상 쓸모가 없다고 생각합니다. 이 짧은 시간 내에 성능 요구 사항이 증가함에 따라 워크로드가 증가할 수 있습니다.
이에 대한 유일한 실제 솔루션은 하이퍼스케일러가 제공합니다. 하이퍼스케일러는 Google, Amazon 및 Microsoft와 같은 거대 기술 회사로, 많은 대규모 데이터 센터를 구축하고 운영할 수 있을 만큼 충분히 큽니다. 이러한 회사는 데이터 센터의 컴퓨팅 성능을 클라우드 플랫폼으로 임대합니다. 이 액세스는 종종 가상화됩니다.
하드웨어를 구매하고 실행하는 데 비용을 지불하는 대신 필요할 때 필요한 액세스 권한을 임대하기만 하면 됩니다. 여기에는 높은 반복적인 선행 비용이 발생하지 않는다는 연간 예산 친화적 요소가 있습니다. 대신 사용한 만큼만 비용을 지불하면 됩니다. 다행히도 정확히 하나의 하드웨어 설정으로 제한되지 않습니다. 작고 비교적 긴급하지 않은 작업량이 있다고 가정합니다. 이 경우 더 작고 – 결정적으로 – 더 저렴한 가상 서버에서 실행되도록 간단히 구성할 수 있습니다. 이것은 또한 다른 방향으로 간다. 크거나 긴급한 프로젝트가 있는 경우 더 빨리 완료할 수 있도록 더 많은 처리 능력을 갖기 위해 더 큰 가상 인스턴스에 더 많은 비용을 지불할 수 있습니다.
현실적으로 클라우드 서비스는 서버 팜에 비해 몇 가지 강력한 이점을 제공합니다. 유일한 잠재적인 문제는 비용이며, 이는 상용 서비스로서 로컬 서버 팜보다 처리 단위당 더 높을 수 있습니다. 하이퍼스케일러는 가격으로 필터링되는 규모의 경제의 이점을 누릴 수 있습니다.
결론
서버 팜은 일반적으로 서버실이나 데이터 센터에 위치하며 많은 처리 능력을 필요로 하는 작업이 팜아웃되는 서버 모음입니다. 이는 고성능 및 연중무휴 작동을 비롯한 여러 이점을 제공합니다. 하이퍼스케일러의 클라우드 서비스가 주요 경쟁 옵션입니다. 초기 하드웨어 비용이 부족하고 작업별 가격/성능 유연성을 포함하여 몇 가지 강력한 이점을 제공합니다.