Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

실시간 협업을 위한 웹 소켓 노드 서버 실행 가이드입니다.

목차

Table of Contents

실행환경

  • node: v16.13.1

forground 실행

웹 소켓 서버 실행

  • 웹 소켓 서버를 실행합니다.
  • 서버 실행 시 서버가 실행된 주소 및 포트번호를 확인할 수 있습니다.
  • Image Removed

windows

Code Block
languagebash
themeEmacs
# 노드 서버 실행
# collaboServer.js가 있는 곳에서 실행하거나 [collaboServer.js가 있는 폴더 경로]/collaboServer.js를 호출해 주세요

# cmd
set HOST=<호스트 주소>
set PORT=<포트 번호>
node collaboServer.js

# 예시
set HOST=58.161.1.23
set PORT=12000
node collaboServer.js


# powershell
$env:HOST=<호스트 주소>
$env:PORT=<포트 번호>
node collaboServer.js

# 예시
$env:HOST=58.161.1.23
$env:PORT=12000
node collaboServer.js

linux

Code Block
languagebash
themeEmacs
# 노드 서버 실행
# collaboServer.js가 있는 곳에서 실행하거나 [collaboServer.js가 있는 폴더 경로]/collaboServer.js를 호출해 주세요
HOST=<호스트 주소> PORT=<포트 번호> node collaboServer.js

# 예시
HOST=58.161.1.23 PORT=12000 node collaboServer.js
HOST=58.161.1.23 PORT=12000 node /home/abc/collaboServer/collaboServer.js
HOST=58.161.1.23 PORT=12000 node collaboServer/collaboServer.js

웹 소켓 서버 동작 확인

  • 실행중인 웹 소켓 서버를 확인합니다.
  • LISTENING 상태이면 서버가 동작 중입니다.

windows

Code Block
languagebash
themeEmacs
# 웹 소켓 서버가 올라가있는 포트번호로 동작 확인
netstat -ano |findstr ":<포트번호>"

# 예시
netstat -ano |findstr ":12000"

linux

Code Block
languagebash
themeEmacs
# 웹 소켓 서버가 올라가있는 포트번호로 동작 확인
lsof -i :<포트 번호>

# 예시
lsof -i :12000

웹 소켓 서버 종료

코멘드로 종료

  • ctrl + c 로 종료합니다.

프로세스 종료

  • 실행중인 웹 소켓 서버를 종료합니다.
windows
Code Block
languagebash
themeEmacs
# 웹 소켓 서버 종료
taskkill /f /pid <PID번호>

# 예시
taskkill /f /pid 4300

본 가이드는 웹 소켓 기반의 실시간 협업을 지원하는 서버 환경을 제공합니다. PM2를 사용하여 서버 환경을 구축하고 관리할 수 있습니다.

웹 소켓 서버의 설치 및 실행을 위해 필요한 js 파일은 별도의 요청을 통해 제공됩니다.
웹 소켓 서버 구축을 원하시는 경우, 기술지원팀으로 연락주시면 상세한 안내와 함께 필요한 파일(js)을 전달해 드립니다.

목차

Table of Contents

...

실행환경

  • node: v16.13.1

웹 소켓 서버 & PM2

  • 웹 소켓 서버의 프로세스 상태 모니터링 및 관리를 위해 PM2를 사용하는 것을 권장합니다.
  • PM2는 Node.js 애플리케이션의 프로세스 관리 도구로, 애플리케이션의 실행 상태를 지속적으로 모니터링하고, 비정상 종료 시 자동으로 재 시작하는 기능을 제공합니다.

  • PM2로 서버 실행시 background로 프로세스를 관리 할 수 있습니다.

PM2 설치

Code Block
languagebash
themeEmacs
# PM2를 소켓전역으로 서버설치합니다.
종료npm kill -9 <PID번호>

# 예시
kill -9 4300

background 실행

install pm2 -g


웹 소켓 서버 실행

  • 웹 소켓 서버를 PM2로 실행합니다.
  • 서버 실행 시 서버가 실행된 주소 및 포트번호를 확인할 수 있습니다.
  • Image Removed

windows

Code Block
languagebash
themeEmacs
# 노드cmd(관리자 서버 실행
# collaboServer.js가 있는 곳에서 실행하거나 [collaboServer.js가 있는 폴더 경로]/collaboServer.js를 호출해 주세요

# cmd권한 실행)
set HOST=<호스트 주소>
set PORT=<포트 번호>
pm2 start /b node collaboServer.js

# 예시
set HOST=58.161.1.23
set PORT=12000
pm2 start /b node collaboServer.js

# powershell(관리자 권한 실행)
$env:HOST=<호스트 주소>
$env:PORT=<포트 번호>
Start-Process -WindowStyle Hidden node pm2 start collaboServer.js

# 예시
$env:HOST=58.161.1.23
$env:PORT=12000
Start-Process -WindowStyle Hidden node pm2 start collaboServer.js

linux

Code Block
languagebash
themeEmacs
# 노드 서버 실행
# 백그라운드 실행 시 뒤에 앤퍼센트(&) 기호 추가
# collaboServer.js가 있는 곳에서 실행하거나 [collaboServer.js가 있는 폴더 경로]/collaboServer.js를 호출해 주세요.
# HOST=<호스트 주소> PORT=<포트 번호> nodepm2 start collaboServer.js &

# 예시
HOST=58.161.1.23 PORT=12000 pm2 nodestart collaboServer.js &
HOST=58.161.1.23 PORT=12000 pm2 nodestart /home/abc/collaboServer/collaboServer.js
&
HOST=58.161.1.23 PORT=12000 nodepm2 start collaboServer/collaboServer.js &

웹 소켓 서버 동작 확인

  • 실행중인 웹 소켓 서버를 확인합니다.
  • LISTENING 상태이면 status가 online이면 서버가 동작 중입니다.

windows

...

Code Block
languagebash
themeEmacs
# 웹 소켓 서버가 올라가있는 포트번호로 동작 확인
netstat -ano |findstr ":<포트번호>"

# 예시
netstat -ano |findstr ":12000"

, linux

Code Block
languagebash
themeEmacs
# 웹 소켓 서버가 올라가있는 포트번호로 동작 확인중인 lsof프로세스를 -i :<포트 번호>

# 예시
lsof -i :12000

# 백그라운드 실행 확인
jobs -l확인합니다.
pm2 list

웹 소켓 서버 종료

프로세스 종료 또는 삭제

  • 실행중인 웹 소켓 서버를 종료합니다서버 프로세스를 종료하거나 삭제합니다.

windows, linux

Code Block
languagebash
themeEmacs
# 웹 소켓 서버 프로세스 종료
taskkillpm2 /fkill /pid<filename>
<PID번호>

# 예시 taskkill /f /pid 4300
linux
Code Block
languagebash
themeEmacs
# 웹 소켓 서버 종료프로세스 kill삭제
-9pm2 <PID번호>

# 예시
kill -9 4300

...

delete <filename>

웹 소켓 서버 모니터링

프로세스 모니터링 및 관리

  • 웹소켓 서버의 프로세스 상태 모니터링 및 관리를 위해 pm2의 기능을 사용할 수 있습니다.
  • pm2는 Node.js 애플리케이션의 프로세스 관리 도구로, 애플리케이션의 실행 상태를 지속적으로 모니터링하고, 비정상 종료 시 자동으로 재시작하는 기능을 제공합니다.

  • pm2로 서버 실행시 background로 프로세스를 관리 할 수 있습니다.

...

  • PM2에 실행중인 웹 소켓 서버 프로세스 상태를 모니터링 합니다.
  • 메모리와 CPU의 사용량을 모니터링하고 실시간 로그를 확인할 수 있습니다.

windows, linux

Code Block
languagebash
themeEmacs
# pm2를 전역으로소켓 설치합니다.서버 npm프로세스 install pm2 -g
Code Block
languagebash
themeEmacs
# cmd
set HOST=<호스트 주소>
set PORT=<포트 번호>
pm2 start collaboServer.js

# 예시
set HOST=58.161.1.23
set PORT=12000
pm2 start collaboServer.js

# powershell
$env:HOST=<호스트 주소>
$env:PORT=<포트 번호>
pm2 start collaboServer.js

# 예시
$env:HOST=58.161.1.23
$env:PORT=12000
pm2 start collaboServer.js모니터링
pm2 monit