>  기사  >  운영 및 유지보수  >  NGINX 및 PM2를 사용하여 VPS 서버에서 서비스 확장 및 로드 밸런싱을 달성하는 방법

NGINX 및 PM2를 사용하여 VPS 서버에서 서비스 확장 및 로드 밸런싱을 달성하는 방법

王林
王林원래의
2023-09-28 22:25:021113검색

NGINX 및 PM2를 사용하여 VPS 서버에서 서비스 확장 및 로드 밸런싱을 달성하는 방법

NGINX 및 PM2를 사용하여 VPS 서버에서 서비스 확장 및 로드 밸런싱을 달성하는 방법은 무엇입니까?

높은 동시 접속률을 처리하고 서버 성능을 향상시켜야 하는 상황에서 서비스 확장과 로드 밸런싱이 중요한 솔루션이 되었습니다. 이 기사에서는 NGINX 및 PM2를 사용하여 VPS 서버에서 서비스 확장 및 로드 밸런싱을 달성하는 방법을 소개합니다.

1.NGINX와 PM2란 무엇인가요?

  1. NGINX는 리버스 프록시, 로드 밸런싱, 캐싱 및 기타 기능을 갖춘 오픈 소스 고성능 웹 서버입니다. 뛰어난 성능과 신뢰성으로 인해 인터넷 분야에서 널리 사용되고 있습니다.
  2. PM2는 Node.js 애플리케이션의 배포, 모니터링 및 자동 재시작을 관리하는 데 도움이 되는 최신 Node.js 프로세스 관리자입니다.

2. 서비스 확장 및 로드 밸런싱을 위해 NGINX를 사용하세요

  1. NGINX 설치

먼저 VPS 서버에 NGINX를 설치해야 합니다. 운영체제별로 구체적인 설치 방법을 검색하여 찾아볼 수 있습니다.

  1. NGINX 역방향 프록시 구성

로드 밸런싱을 위해 NGINX를 사용하기 전에 요청을 백엔드 서버로 전달하도록 역방향 프록시를 구성해야 합니다. NGINX 구성 파일을 편집하고 http 블록에 다음 내용을 추가합니다.

upstream backend {
    server backend1;
    server backend2;
    server backend3;
}

server {
    listen 80;
    server_name example.com;
    
    location / {
        proxy_pass http://backend;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

여기서 backend1, backend2 및 backend3은 백엔드 서버의 주소이며 실제 상황에 따라 구성할 수 있습니다.

  1. NGINX 서비스 시작

구성 파일을 저장한 후 다음 명령을 사용하여 NGINX 서비스를 시작합니다.

sudo service nginx start

이 시점에서 예제를 방문하여 역방향 프록시가 유효한지 테스트할 수 있습니다. .com.

3. Node.js 애플리케이션의 확장 및 로드 밸런싱을 위해 PM2를 사용하세요.

  1. PM2 설치

VPS 서버에 Node.js 및 PM2를 설치하세요. 운영체제별로 구체적인 설치 방법을 검색하여 찾아볼 수 있습니다.

  1. Node.js 애플리케이션 배포

PM2를 통해 Node.js 애플리케이션을 서버에 배포할 수 있습니다. 프로젝트의 루트 디렉터리에서 다음 명령을 실행합니다.

pm2 start app.js

여기서 app.js는 Node.js 애플리케이션의 항목 파일입니다.

  1. PM2의 프로세스 수 및 로드 밸런싱을 구성하세요

기본적으로 PM2는 하나의 프로세스만 시작합니다. 로드 밸런싱을 달성하기 위해 여러 프로세스를 시작해야 하는 경우 다음 명령을 사용할 수 있습니다.

pm2 scale app +3

여기서 앱은 PM2의 Node.js 애플리케이션 이름이고 +3은 세 개의 프로세스를 시작한다는 의미입니다. 서버의 구성 및 성능에 따라 프로세스 수를 직접 조정할 수 있습니다.

4. NGINX와 PM2를 결합하여 서비스 확장 및 로드 밸런싱 달성

  1. NGINX 구성 수정

이전에 구성한 NGINX 구성 파일에서 역방향 프록시의 전달 주소를 노드에서 모니터링하는 주소로 변경합니다. Node.js 애플리케이션 주소 및 포트(예:

upstream backend {
    server 127.0.0.1:3000;
    server 127.0.0.1:3001;
    server 127.0.0.1:3002;
}
  1. NGINX 및 PM2 다시 시작

구성 파일을 저장한 후 다음 명령을 사용하여 NGINX 및 PM2 서비스를 다시 시작합니다.

sudo service nginx restart
pm2 restart all

이 시점에서 NGINX 및 PM2가 완료되었습니다. 서비스 확장 및 로드 밸런싱 구성 . example.com에 액세스하면 요청이 처리를 위해 NGINX에 의해 백엔드의 여러 Node.js 프로세스로 전달됩니다.

이 글에서는 NGINX와 PM2를 사용하여 VPS 서버에서 서비스 확장 및 로드 밸런싱을 달성하는 방법을 간략하게 소개합니다. PM2의 다중 프로세스 배포와 결합된 NGINX의 역방향 프록시 및 로드 밸런싱 구성을 통해 서버의 성능과 안정성을 향상시킬 수 있습니다. 실제 애플리케이션에서는 특정 요구 사항에 따라 NGINX 및 PM2를 더 자세히 구성하고 조정할 수 있습니다.

위 내용은 NGINX 및 PM2를 사용하여 VPS 서버에서 서비스 확장 및 로드 밸런싱을 달성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.