たとえば、私は2つのサービスを持っています:dbとキュー dbの後にサーバを起動し、amqpがサーバに接続する必要があります。今のすべてのサービスが開始された後にstart node.js app
私はこのserver.jsのようなものがあります。
let mongo = require('./server/db');
let qManager = require('./server/amqp');
mongo.connect(()=>{
qManager.connect(()=>{
http.listen(3001, function() {
console.log('listening on *:3001');
});
});
});
Mongoの接続方法:
const connectDb = (callback) => {
if (state.db) return state.db;
let connection = MongoClient.connect(mongoUrl, (err, db) => {
if (err) {
connectDb();
}
state.db = db;
console.log('Mongo connected.');
callback();
});
};
RabbitMQの接続方法:
const connect = (callback) => {
connection = amqp.connect(url)
.then(conn => {
module.connection = conn;
channel = conn.createChannel();
console.log('Queue connected.');
pythonResultListener();
callback()
})
.catch(err => {
console.error('Connect failed: %s', err);
});
return connection;
};
は多分あまりがありますもっといい方法?ありがとう。