Node.js 서비스 배포 PM2 사용하여 server 성능 향상(멀티스레드) Node.js는 기본적으로 싱글 스레드로 동작하는데, 이는 Node.js의 이벤트 기반 아키텍처 때문입니다. 하지만 이는 대규모 애플리케이션의 경우 한계가 있기 때문에 멀티스레딩을 사용하여 성능을 높이는 것이 필요합니다. 이번에는 PM2를 이용하여 Node.js에서 멀티스레딩을 사용하는 방법에 대해 알아보겠습니다. PM2란 무엇인가? PM2는 Node.js 애플리케이션의 프로세스 관리자로, Node.js 애플리케이션을 데몬으로 실행하고 모니터링할 수 있습니다. 이를 이용하면 Node.js 애플리케이션을 쉽게 배포하고 관리할 수 있습니다. PM2에서 멀티스레딩 사용하기 PM2를 사용하여 Node.js에서 멀티스레딩을 사용하려면 ..
Node.js Socket.io 사용법 및 예제 코드 Node.js를 이용해 웹 어플리케이션을 개발할 때 실시간 통신이 필요한 경우가 있습니다. 이런 경우에 Node.js에서는 Socket.io를 사용하여 손쉽게 실시간 통신을 구현할 수 있습니다. 이번 글에서는 Node.js와 Socket.io를 이용한 실시간 통신 구현 방법에 대해 알아보도록 하겠습니다. 1. Socket.io란? Socket.io는 Node.js를 이용해 웹 어플리케이션에서 실시간 통신을 구현하기 위한 라이브러리입니다. Socket.io는 웹소켓(WebSocket)을 기반으로 동작하며, 웹소켓이 지원되지 않는 브라우저에서는 폴링(Polling) 방식을 사용하여 실시간 통신을 구현합니다. 2. Socket.io 설치 Socket.io를..
Node.js는 많은 개발자들이 선호하는 서버 사이드 자바스크립트 런타임입니다. Node.js를 사용하여 스케줄링 작업을 수행하려면, node-cron 라이브러리를 사용할 수 있습니다. node-cron은 Cron을 이용하여 작업을 예약하고 실행하는 것을 도와주는 라이브러리입니다. 이번 글에서는 node-cron을 사용하는 방법에 대해 알아보겠습니다. 1. node-cron 설치하기 node-cron을 사용하기 위해서는 우선 npm을 통해 라이브러리를 설치해야 합니다. 다음 명령어를 사용하여 설치할 수 있습니다. npm install --save node-cron 2. 예제 코드 작성하기 node-cron을 사용하기 위해서는 예약하려는 작업을 실행할 함수를 작성해야 합니다. 예를 들어, "Hello, w..
MySQL은 데이터베이스 시스템 중 하나로, 위도와 경도를 이용한 거리 계산에도 사용될 수 있습니다. 이번 글에서는 MySQL에서 위도와 경도를 이용하여 거리를 계산하는 방법과 그 구현 방법을 알아보겠습니다. 1. 위도와 경도 위도와 경도는 지도상의 위치를 나타내는 좌표입니다. 위도는 적도를 기준으로 북쪽과 남쪽으로, 경도는 그리니치 천문대를 기준으로 동쪽과 서쪽으로 나타냅니다. 2. 거리 계산 위도와 경도를 이용하여 거리를 계산하는 방법은 여러 가지가 있습니다. 그 중에서도 대표적인 방법은 하버사인 공식(Haversine formula)을 이용한 방법입니다. 하버사인 공식은 지구를 구와 비슷한 모양으로 가정하고, 지구의 반지름을 이용하여 두 지점 사이의 거리를 계산하는 공식입니다. 3. MySQL에서 ..
Node.js는 비동기 처리 방식으로 빠른 성능을 제공합니다. 하지만 이러한 비동기 처리 방식은 콜백 지옥과 같은 문제점을 야기하기도 합니다. 이번 글에서는 Node.js의 비동기 처리 방식과 콜백 지옥에서 벗어나기 위한 다양한 방법을 알아보겠습니다. Node.js의 비동기 처리 방식 Node.js는 싱글 스레드 기반의 비동기 처리 방식을 사용합니다. 이 방식은 이벤트 루프와 콜백 함수를 활용하여 비동기 작업을 처리합니다. 이벤트 루프는 노드가 이벤트를 감지하고 처리하는 메커니즘으로, 이벤트가 발생하면 콜백 함수가 실행됩니다. 이러한 방식으로 노드는 다수의 클라이언트 요청을 동시에 처리할 수 있습니다. 하지만 이러한 비동기 처리 방식은 콜백 함수의 중첩이 발생하면서 콜백 지옥이라는 문제가 발생하기도 합니..
소켓 프로그래밍에서 Socket.IO는 매우 인기있는 라이브러리 중 하나입니다. 하지만, 기본적으로 Socket.IO는 일정 시간동안 클라이언트와 서버 간의 연결이 없을 경우 연결을 끊어버리는 기능이 있습니다. 이는 보안상의 이유로 필요한 조치이긴 하지만, 때로는 이러한 연결 끊김이 원치 않을 때도 있습니다. 그래서 이번 글에서는 Socket.IO에서 일정 시간 후에 연결이 끊어지는 것을 방지하는 방법에 대해 알아보겠습니다. 1. pingTimeout 설정 변경하기 Socket.IO에서 일정 시간동안 연결이 없으면 연결이 끊어지는 기능을 막기 위해, 클라이언트와 서버 간의 상태를 확인하기 위한 ping 이벤트를 주고 받습니다. pingTimeout은 이 ping 이벤트를 주고 받는 시간 간격을 나타내며,..
Node.js와 Express를 이용하여 서버를 개발할 때, 캐싱을 구현하여 서버의 응답 속도를 높일 수 있습니다. 이번 글에서는 Node.js와 Express를 이용한 서버 캐싱 구현 방법에 대해 알아보겠습니다. 1. Node-cache 모듈을 이용한 메모리 캐싱 구현 방법 Node-cache는 Node.js에서 사용할 수 있는 메모리 캐시 모듈입니다. Node-cache를 이용하여 캐시를 구현하면, 서버의 응답 속도를 높일 수 있습니다. 먼저, Node-cache 모듈을 설치합니다. npm install node-cache --save 다음으로, Node-cache 모듈을 사용하여 캐시를 구현합니다. 아래 예제 코드는 Node-cache 모듈을 이용하여 getUser 함수의 결과를 캐싱하는 방법을 보..
- Total
- Today
- Yesterday
- node.js
- 건강한 식습관
- 혈당 관리
- 관리
- 다이어트
- 서버
- 당뇨
- 관절염
- 스포츠
- 라이프스타일
- 건강
- 고혈압
- 체중 감량
- 예방
- 단백질
- socket.io
- 웹 개발
- 요리
- 딥링크
- 고지혈증
- Firebase Cloud Messaging
- 운동 효과
- 크로스핏
- pm2
- FCM
- javascript
- express.js
- 운동
- vue.js
- mysql
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |