[nodejs] MongoDB 연동을 위한 클러스터링 설정
Node.js는 데이터베이스로 MongoDB를 기본적으로 지원하며, 클러스터링은 MongoDB의 확장성과 안정성을 향상시키는 중요한 구성 요소입니다. 이 블로그 포스트에서는 Node.js 애플리케이션에서 MongoDB 클러스터링을 위한 설정과 연동 방법에 대해 알아보겠습니다.
MongoDB 클러스터 구성
- Replica Set 설정
- Sharding 설정
Node.js에서의 MongoDB 클러스터 연동
Node.js에서 MongoDB 클러스터와의 연동은 Mongoose나 MongoDB Node.js 드라이버와 같은 라이브러리를 사용하여 쉽게 구현할 수 있습니다.
Mongoose를 사용한 연동 예제
const mongoose = require('mongoose');
mongoose.connect('mongodb://<username>:<password>@<cluster-1-url>,<cluster-2-url>,<cluster-3-url>/<database-name>?ssl=true&replicaSet=<replica-set-name>&authSource=admin', {
useNewUrlParser: true,
useUnifiedTopology: true
});
const db = mongoose.connection;
db.on('error', console.error.bind(console, 'MongoDB 연결 오류:'));
db.once('open', function() {
console.log('MongoDB 클러스터 연결 성공');
});
MongoDB Node.js 드라이버를 사용한 연동 예제
const { MongoClient } = require('mongodb');
const uri = 'mongodb://<username>:<password>@<cluster-1-url>,<cluster-2-url>,<cluster-3-url>/<database-name>?ssl=true&replicaSet=<replica-set-name>&authSource=admin';
const client = new MongoClient(uri, { useUnifiedTopology: true });
async function connectToCluster() {
try {
await client.connect();
console.log('MongoDB 클러스터 연결 성공');
} catch (e) {
console.error('MongoDB 연결 오류:', e);
} finally {
await client.close();
}
}
connectToCluster();
마치며
MongoDB 클러스터링을 통한 안정성과 확장성은 Node.js 애플리케이션의 성능 및 신뢰성을 향상시킬 수 있습니다. 올바르게 구성 및 연동하여 안정적이고 확장 가능한 애플리케이션을 구축할 수 있도록 노력해 보시기를 권장합니다.
이렇게 MongoDB 클러스터링과 Node.js의 연동 방법에 대해 간단히 살펴보았습니다. 부가적인 정보가 필요하다면 MongoDB 및 Node.js 공식 문서를 참고하시기 바랍니다.