>운영 및 유지보수 >엔진스 >NGINX PM2 VPS: 확장 가능한 애플리케이션 서버를 빠르게 구축

NGINX PM2 VPS: 확장 가능한 애플리케이션 서버를 빠르게 구축

PHPz
PHPz원래의
2023-09-26 10:41:021210검색

NGINX PM2 VPS: 快速搭建可扩展的应用服务器

NGINX PM2 VPS: 확장 가능한 애플리케이션 서버를 빠르게 구축

소개:
현대 애플리케이션 개발에서는 확장 가능한 애플리케이션 서버를 구축하는 것이 중요해졌습니다. NGINX, PM2 및 VPS는 세 가지 강력한 도구이며 이들의 조합을 통해 확장 가능한 애플리케이션 서버를 빠르게 구축할 수 있습니다. 이 기사에서는 이러한 도구를 사용하여 고성능 애플리케이션 서버를 구축하는 방법을 소개하고 구체적인 코드 예제를 제공합니다.

1.NGINX란 무엇인가요?
NGINX는 고성능 웹 서버이자 역방향 프록시 서버입니다. 동시성이 높은 요청을 처리하고 빠르게 응답할 수 있으며 안정적인 로드 밸런싱과 보안을 갖추고 있습니다. 확장 가능한 애플리케이션 서버를 구축할 때 NGINX는 일반적으로 클라이언트 요청을 수신하고 요청을 백엔드 애플리케이션 서버로 전달하는 프런트 엔드 서버로 사용됩니다.

2. PM2란 무엇인가요?
PM2는 Node.js 애플리케이션 실행 시 애플리케이션 관리 및 모니터링 기능을 제공할 수 있는 프로세스 관리 도구입니다. PM2는 애플리케이션의 안정적인 작동을 보장하고 애플리케이션을 자동으로 다시 시작하며 애플리케이션이 충돌할 때 오류 로그를 제공합니다. 확장 가능한 애플리케이션 서버를 구축할 때 PM2를 사용하여 여러 애플리케이션 프로세스를 관리하고 모니터링할 수 있습니다.

3. VPS란 무엇인가요?
VPS(Virtual Private Server)는 하나의 물리적 서버에 여러 개의 독립적인 가상 서버를 분할할 수 있는 가상화 기술입니다. 각 가상 서버에는 자체 운영 체제와 리소스가 있으며 응용 프로그램을 독립적으로 실행할 수 있습니다. 확장 가능한 애플리케이션 서버를 구축할 때 VPS를 사용하여 여러 애플리케이션에 대한 가상 서버를 할당하고 관리할 수 있습니다.

확장 가능한 애플리케이션 서버를 빠르게 구축하는 4단계:

  1. VPS 구매
    먼저, Alibaba Cloud, Tencent Cloud 등과 같은 잘 알려진 VPS 제공업체를 선택할 수 있습니다. 귀하의 필요에 맞는 구성을 선택하고 하나 이상의 VPS를 구입하십시오.
  2. NGINX 설치
    VPS에 로그인하고 패키지 관리 도구(예: apt, yum)를 통해 NGINX를 설치하세요. 설치가 완료되면 다음 명령을 실행하여 NGINX 서비스를 시작합니다.
sudo systemctl start nginx
  1. NGINX 역방향 프록시 설정
    NGINX 구성 파일 /etc/nginx/sites-available/default 편집 , 다음 콘텐츠를 추가하고 클라이언트를 추가합니다. 백엔드 애플리케이션 서버에 요청 전달: /etc/nginx/sites-available/default,添加以下内容,将客户端的请求转发到后端的应用服务器:
server {
    listen 80;
    server_name example.com;

    location / {
        proxy_pass http://localhost:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

保存并退出配置文件,然后重新加载 NGINX 配置:

sudo systemctl reload nginx
  1. 安装 Node.js 和 PM2
    使用包管理工具安装 Node.js,并全局安装 PM2。安装完成后,进入应用程序的根目录,执行以下命令启动应用程序:
pm2 start app.js

应用程序现在会在后台运行,并由 PM2 进程管理工具监控。可以使用以下命令查看应用程序的状态:

pm2 list
  1. 添加更多的应用程序
    如果要添加更多的应用程序,可以在不同的端口上启动多个应用程序进程。例如,要添加第二个应用程序,可以执行以下命令:
pm2 start app2.js
  1. 配置负载均衡器
    如果希望将请求分发到不同的后端应用服务器,可以使用负载均衡器来实现。可以使用 NGINX 的 upstream 模块来配置负载均衡。编辑 NGINX 配置文件 /etc/nginx/sites-available/default
  2. upstream backend {
        server localhost:3000;
        server localhost:3001;
        # 添加更多的后端服务器
    }
    
    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;
        }
    }
구성 파일을 저장하고 종료한 다음 NGINX 구성을 다시 로드합니다.

sudo systemctl reload nginx

    Install Node.js Node.js 및 PM2

    패키지 관리 도구를 사용하여 Node.js를 설치하고 PM2를 전역적으로 설치하세요. 설치가 완료되면 애플리케이션의 루트 디렉터리로 이동하고 다음 명령을 실행하여 애플리케이션을 시작합니다.

    rrreee
    이제 애플리케이션이 백그라운드에서 실행되고 PM2 프로세스 관리 도구로 모니터링됩니다. 다음 명령을 사용하여 애플리케이션 상태를 볼 수 있습니다:

    rrreee
      🎜애플리케이션 추가🎜더 많은 애플리케이션을 추가하려면 서로 다른 포트에서 여러 애플리케이션 프로세스를 시작할 수 있습니다. 예를 들어, 두 번째 애플리케이션을 추가하려면 다음 명령을 실행할 수 있습니다. 🎜🎜rrreee
        🎜로드 밸런서 구성🎜요청을 다른 백엔드 애플리케이션 서버로 분산하려면 로드 밸런서를 사용할 수 있습니다. 만족시키다. 로드 밸런싱은 NGINX의 업스트림 모듈을 사용하여 구성할 수 있습니다. NGINX 구성 파일 /etc/nginx/sites-available/default를 편집하고 다음을 추가합니다. 🎜🎜rrreee🎜구성 파일을 저장하고 종료한 다음 NGINX 구성을 다시 로드합니다. 🎜rrreee🎜이제, NGINX 로드 밸런싱을 달성하기 위해 다른 백엔드 응용 프로그램 서버에 배포를 요청합니다. 🎜🎜결론: 🎜NGINX, PM2 및 VPS를 결합하면 확장 가능한 애플리케이션 서버를 빠르게 구축할 수 있습니다. NGINX는 고성능 요청 처리 및 로드 밸런싱 기능을 제공하고, PM2는 애플리케이션 관리 및 모니터링 기능을 제공하며, VPS는 애플리케이션을 독립적으로 실행할 수 있는 가상 환경을 제공합니다. 이 기사에 제공된 코드 예제가 확장 가능한 애플리케이션 서버를 구축하는 데 도움이 되기를 바랍니다. 🎜

위 내용은 NGINX PM2 VPS: 확장 가능한 애플리케이션 서버를 빠르게 구축의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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