Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

penyatuan koneksi node-mysql

Pembaruan:Feb 2013 - dukungan kumpulan telah ditambahkan ke node-mysql, lihat dokumen

Contoh menggunakan kumpulan bawaan:

var pool = require('mysql').createPool(opts);

pool.getConnection(function(err, conn) {
  conn.query('select 1+1', function(err, res) {
    conn.release();
  });
});

Solusi sebelum 2013:

Anda dapat menggunakan node-pool atau mysql-pool atau gunakan kumpulan round-robin sederhana Anda sendiri

function Pool(num_conns)
{
    this.pool = [];
    for(var i=0; i < num_conns; ++i)
        this.pool.push(createConnection()); // your new Client + auth
    this.last = 0;
}

Pool.prototype.get = function()
{
    var cli = this.pool[this.last];
    this.last++;
    if (this.last == this.pool.length) // cyclic increment
       this.last = 0;
    return cli;
}

sekarang Anda dapat berharap agar semua panggilan balik kueri dijalankan dalam 1 detik:

var p = new Pool(16);
for (var i=0; i < 10; ++i)
{
    p.get().query('select sleep(1)', function() { console.log('ready'); } ); // server blocks for 1 second
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Haruskah kunci utama basis data berupa bilangan bulat?

  2. Pilih kolom di database yang berbeda

  3. Teks Lengkap Pencocokan MySQL

  4. Bagaimana Cara Memilih Bidang Tertentu di Laravel Eloquent?

  5. mysql memuat data peringatan acara lokal dari C #