sheng-tedious-connection-pool

1.0.3 • Public • Published

How to use: 1, create a pool.js similar with following code, make sure your node app only execute one instance of ConnectionPool

const poolConfig = {
	min: 2,
	max: 4,
	log: true
};

const connectionConfig = {		
  server: 'http://database_server:14337',
  authentication: {
    type: 'default',
    options: {
      userName: USER,
      password: PASSWORD,
    },
  },
  options: {        
    trustServerCertificate: true,
    database: DATABASE,
    instanceName: INSTANCE,
  },
};

export const dbPoolFunc = () => {
  const dbpoolInstance = new ConnectionPool(
	poolConfig,
	connectionConfig,
  );

  dbpoolInstance.connect();
  return dbpoolInstance;
};

export const dbPool = dbPoolFunc();

2, Use the pool instance to execute your queries

dbPoolInstance.acquire(function (error, connection) {
  if (error) {
    console.error(error);
    return;
  }

  const request = new Request(queryStr, (err) => {
    if (err) {
      reject(`Request error: ${err.message}`);
    } 
      resolve(result);
    
  });
  ......
  
  connection.on('connect', (err) => {
    if (err) {
      reject(err);
    } else {
      connection.execSql(request);
    }
  });
  
  //should trigger connect method after 'Connecting' done
  if (connection.state && connection.state.name !== 'Connecting') {
    connection.connect();
  }

Package Sidebar

Install

npm i sheng-tedious-connection-pool

Weekly Downloads

2

Version

1.0.3

License

MIT

Unpacked Size

10.9 kB

Total Files

3

Last publish

Collaborators

  • shengqisong