Mysql
 sql >> Baza danych >  >> RDS >> Mysql

buforowanie połączeń node-mysql

Aktualizacja:luty 2013 - dodano obsługę puli do node-mysql, zobacz dokumentację

Przykład korzystania z wbudowanego basenu:

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

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

Rozwiązania sprzed 2013 roku:

Możesz użyć puli węzłów lub mysql-pool lub użyj własnego prostego basenu okrężnego

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;
}

teraz możesz mieć nadzieję, że wszystkie wywołania zwrotne zostaną wykonane w ciągu 1 sekundy:

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. Nieprawidłowy ciąg znaków UTF-8 podczas importu pliku CSV do bazy danych MySQL

  2. Czy jest coś podobnego do serwera Wamp?

  3. HQL jak dołączyć do trzech stołów

  4. MySQL wybierz dołącz gdzie ORAZ gdzie

  5. Funkcja wyszukiwania z greckimi znakami w MySQL