nodejs link mysql cluster

const mysql = require('mysql2');
const config = require('../config/config');
module.exports = async (sql, options) => {
    const poolCluster = mysql.createPoolCluster({
        removeNodeErrorCount: 1, // Remove the node immediately when connection fails.
        defaultSelector: 'RR' //RR,RANDOM,ORDER
    });
    poolCluster.add('node1', config.mysql.node1);
    poolCluster.add('node2', config.mysql.node2);
    poolCluster.add('node3', config.mysql.node3);
    poolCluster.add('node4', config.mysql.node4);
    return new Promise((resolve, reject) => {
        poolCluster.getConnection((err, conn) => {
            if (err) {
                reject(err)
            } else {
                conn.query(sql, options, function (error, results, fields) {
                    if (error) {
                        reject(error)
                    } else {
                        conn.release();
                        resolve(results);
                    }
                });
            }
        });
    })
};

Guess you like

Origin www.cnblogs.com/qiyc/p/11573947.html