합의 알고리즘이란? 합의 알고리즘은 분산 컴퓨팅 시스템에서 여러 노드들이 동시에 발생한 트랜잭션의 순서와 내용에 대한 동의를 이루는 과정입니다. 이 과정에서는 시스템 내 모든 노드들이 동일한 결과를 도출해내어야 합니다. 분산 컴퓨팅 시스템에서는 다수의 노드들이 존재하며, 이들은 독립적으로 트랜잭션을 처리합니다. 이 때, 동시에 발생한 트랜잭션을 처리하는 노드들 간에는 트랜잭션의 순서에 대한 불일치가 발생할 수 있습니다. 이러한 불일치를 해결하기 위해서는 노드들 간에 합의 과정이 필요합니다. 합의 알고리즘에는 다양한 종류가 존재하며, 대표적으로는 Proof of Work(PoW), Proof of Stake(PoS), Delegated Proof of Stake(DPoS) 등이 있습니다. 이 중 PoW는 ..
Node.js에서 Sequelize는 ORM(Object-Relational Mapping) 라이브러리로서, 데이터베이스 쿼리를 추상화하여 개발자가 더 쉽게 데이터베이스를 다룰 수 있도록 합니다. Sequelize는 MySQL, PostgreSQL, MariaDB, SQLite, MSSQL 등 다양한 데이터베이스를 지원하며, 이번에는 Node.js에서 MySQL을 사용하는 Sequelize의 기본 설정과 사용 방법에 대해 알아보겠습니다. Sequelize 설치 Sequelize를 사용하기 위해서는 Node.js 환경에서 sequelize 패키지를 설치해야 합니다. 터미널에서 다음 명령어를 입력하여 sequelize를 설치합니다. npm install sequelize MySQL을 사용하는 경우, 다음 패..
Multer는 Node.js에서 파일 업로드를 처리하는 데 사용되는 미들웨어입니다. Multer multer 모듈 설치 Multer를 사용하려면 다음과 같은 단계를 거쳐야 합니다. npm i multer multer 설정하기 const storage = multer.diskStorage({ destination: function (req, file, cb) { cb(null, "uploads/"); }, filename: function (req, file, cb) { cb(null, Date.now() + "-" + file.originalname); }, }); 위의 코드에서 diskStorage() 함수를 사용하여 파일이 저장될 디렉터리와 파일명을 설정합니다. destination 속성은 파일이 저..
Express Session은 클라이언트와 서버 간의 세션 관리를 지원하는 미들웨어입니다. 세션은 클라이언트가 웹 서버에 접속한 후 해당 클라이언트의 상태 정보를 서버가 유지하는 것을 말합니다. 이를 통해, 로그인 상태 등의 사용자 정보를 유지하 고, 개인화된 서비스를 제공할 수 있습니다. Session Session 기본 설정 express-session 패키지 설치 npm i express-session Express 애플리케이션에 express-session 미들웨어를 추가합니다. const session = require("express-session"); app.use( session({ secret: "rainbowbear", resave: false, saveUninitialized: tru..