欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Node.js實(shí)現(xiàn)mysql連接池使用事務(wù)自動(dòng)回收連接的方法示例

 更新時(shí)間:2018年02月03日 10:43:29   作者:anhuisunfei  
這篇文章主要介紹了Node.js實(shí)現(xiàn)mysql連接池使用事務(wù)自動(dòng)回收連接的方法,結(jié)合實(shí)例形式分析了node.js操作mysql連接池實(shí)現(xiàn)基于事務(wù)的連接回收操作相關(guān)技巧,需要的朋友可以參考下

本文實(shí)例講述了Node.js實(shí)現(xiàn)mysql連接池使用事務(wù)自動(dòng)回收連接的方法。分享給大家供大家參考,具體如下:

var mysql = require('mysql'),
  Connection = require('mysql/lib/Connection.js');
var pool = mysql.createPool({
  host: '127.0.0.1',
  database: 'myDB',
  port: 3306,
  user: 'root',
  password: 'root',
  debug: false,
  connectionLimit: 3
});
var execPool = function() {
  pool.getConnection(function(err, conn) {
    transAutoRelease(conn);
    conn.beginTransaction(function(err) {
      if (err) throw err;
      conn.query("INSERT INTO test(id,name,date,test) values(1,'123',now(),1)",
        function(err, ret) {
          if (err) {
            console.error(err);
            conn.rollback(function() {});
          } else {
            console.log(ret);
            conn.query('UPDATE test set id=12321312 where id=1', function(err, ret) {
              if (err) {
                console.error(err);
                conn.rollback(function() {
                });
              } else {
                conn.commit(function() {
                  console.log('success' + JSON.stringify(ret));
                });
              }
            });
          }
        });
    });
  });
}
function after(fn, cb) { return function() {
    fn.apply(this, arguments);
    cb();
  }
}
function transAutoRelease(conn) {
  if (conn.commit == Connection.prototype.commit)
    conn.commit = after(conn.commit, release);
  if (conn.rollback == Connection.prototype.rollback)
    conn.rollback = after(conn.rollback, release);
  function release() {
    if (conn) {
      conn.release();
    }
  }
}
var intervalStartProcess = function() {
  setInterval(function() {
    execPool();
  }, 1000);
}
for (var i = 5 - 1; i >= 0; i--) {
  intervalStartProcess();
}

希望本文所述對(duì)大家nodejs程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • 基于Node-red的在線評(píng)語(yǔ)系統(tǒng)(可視化編程,公網(wǎng)訪問(wèn))

    基于Node-red的在線評(píng)語(yǔ)系統(tǒng)(可視化編程,公網(wǎng)訪問(wèn))

    Node-Red是IBM公司開(kāi)發(fā)的一個(gè)可視化的編程工具,在網(wǎng)頁(yè)內(nèi)編程,主要是拖拽控件,代碼量很小,這篇文章主要介紹了基于Node-red的在線評(píng)語(yǔ)系統(tǒng)(可視化編程,公網(wǎng)訪問(wèn)),需要的朋友可以參考下
    2022-01-01
  • Node.js的非阻塞I/O、異步與事件驅(qū)動(dòng)介紹

    Node.js的非阻塞I/O、異步與事件驅(qū)動(dòng)介紹

    這篇文章介紹了Node.js的非阻塞I/O、異步與事件驅(qū)動(dòng),文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06
  • 使用Node.js搭建Web服務(wù)器

    使用Node.js搭建Web服務(wù)器

    這篇文章介紹了使用Node.js搭建Web服務(wù)器的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06
  • express文件上傳中間件Multer詳解

    express文件上傳中間件Multer詳解

    multer是express官方推薦的文件上傳中間件,它是在busboy的基礎(chǔ)上開(kāi)發(fā)的。目前multer的最新版本為:~1.1.0。本文將詳細(xì)介紹express文件上傳中間件Multer的安裝與使用等,有需要的朋友們可以參考借鑒,下面來(lái)一起看看吧。
    2016-10-10
  • 在Express處理錯(cuò)誤和未匹配路由的解決方法

    在Express處理錯(cuò)誤和未匹配路由的解決方法

    在使用 Express 開(kāi)發(fā) Web 應(yīng)用程序時(shí),有效地處理錯(cuò)誤和管理未匹配任何定義處理程序的路由至關(guān)重要,這確保了應(yīng)用程序的健壯性和更好的用戶(hù)體驗(yàn),本文給出了詳細(xì)的解決方法,需要的朋友可以參考下
    2024-01-01
  • node.js基于mongodb的搜索分頁(yè)示例

    node.js基于mongodb的搜索分頁(yè)示例

    本篇文章主要介紹了node.js基于mongodb的搜索分頁(yè)示例,mongodb分頁(yè)很簡(jiǎn)單,這里整理了詳細(xì)的代碼,有需要的小伙伴可以參考下。
    2017-01-01
  • npm?ERR!Cannot?read?properties?of?null(reading?'pickAlgorithm')報(bào)錯(cuò)問(wèn)題解決

    npm?ERR!Cannot?read?properties?of?null(reading?'p

    這篇文章主要給大家介紹了關(guān)于npm?ERR!Cannot?read?properties?of?null(reading?'pickAlgorithm')報(bào)錯(cuò)問(wèn)題的解決方法,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-03-03
  • node.js中的http.get方法使用說(shuō)明

    node.js中的http.get方法使用說(shuō)明

    這篇文章主要介紹了node.js中的http.get方法使用說(shuō)明,本文介紹了http.get的方法說(shuō)明、語(yǔ)法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • nodejs+socket.io實(shí)現(xiàn)p2p消息實(shí)時(shí)發(fā)送的項(xiàng)目實(shí)踐

    nodejs+socket.io實(shí)現(xiàn)p2p消息實(shí)時(shí)發(fā)送的項(xiàng)目實(shí)踐

    本文主要介紹了nodejs+socket.io實(shí)現(xiàn)p2p消息實(shí)時(shí)發(fā)送,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • Node.js中fs模塊的使用方法

    Node.js中fs模塊的使用方法

    這篇文章介紹了Node.js中fs模塊的使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06

最新評(píng)論