In loc de a crea si administra conexiuni una cate una, modulul "mysql" are incorporat si connecxiune "pooling", folosind metoda mysql.createPool(config).
O conexiune "pool" este o memorie cache a conexiunilor bazei de date intretinute astfel incat conexiunile sa fie refolosite atunci cand sunt necesare mai multe cereri catre baza de date.
Conectarea "pool" e folosita pentru a imbunatati performanta executiei comenzilor intr-o baza de date.
Dupe ce o conexiune "pooling" este creata, este pusa in obiectul pool si se poate folosi din nou astfel incat sa nu fie necesara stabilirea unei noi conexiuni. Daca toate conexiunile sunt folosite, o noua conexiune este creata si adaugata in pool.
mysql.createPool() accepta aceleasi optiuni ca si o conexiune cu createConnection(). Cand se creaza o noua conexiune, optiunile sunt pur si simplu transmise constructorului de conexiuni.
Exemplu:
const mysql = require('mysql');

const pool = mysql.createPool({
  host: 'localhost',
  user: 'root',
  password: 'pass',
  database: 'nodedb',
  charset: 'utf8'
});

let sql ='SELECT 1 + 1 AS solution';

pool.query(sql, (err, res, fields)=>{
  if(err) throw err;
  console.log('The solution is: ', res[0].solution);
});

- Se apeleaza metoda pool.getConnection() pentru a refolosi o conexiune din pool.
Cand ati terminat cu o conexiune, se apeleaza con.release();, si conexiunea se va intoarce in pool, gata sa fie folosita din nou cu alta cerere sql.
const mysql = require('mysql');

const pool = mysql.createPool({
  host: 'localhost',
  user: 'root',
  password: 'pass',
  database: 'nodedb',
  charset: 'utf8'
});

//use pool connection
var sql ='SELECT 1 + 1 AS solution';

pool.query(sql, (err, res, fields)=>{
  if(err) throw err;
  console.log('The solution is: ', res[0].solution);
});

//another connection
pool.getConnection((err, con)=>{
  sql ='SELECT id, name FROM friends LIMIT 1';

  // Use the connection
  con.query(sql, (err, res, fields)=>{
    console.log(res[0]);
    con.release(); //done with the connection, free memory

    // Handle error after the release
    if(err) throw error;

    // Don't use the connection here, it has been returned to the pool.
  });
});
Resultat:
The solution is: 2
{id: 1, name: 'Olpram'}
- Daca vreti sa inchideti conexiunea si sa o stergeti din pool, se foloseste con.destroy();. Pool-ul va crea o noua conexiune data viitoare cand getConnection() este apelata.

- Pentru mai multe detalii si exemple, vezi documentatia: Node.js MySQL Pooling connections.

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Ce atribut indica faptul ca un camp de formular trebuie completat?
required="required" autofocus="autofocus" placeholder="text"
<input type="text" name="name1" required="required" />
Ce metoda CSS misoreaza sau mareste dimensiunile unui element (inclusiv continutul)?
translate() scale() skew()
#some_id:hover {
  transform: scale(2, 1.5);
  -ms-transform: scale(2, 1.5);    /* IE 9 */
  -moz-transform: scale(2, 1.5);   /* Firefox */
}
Click pe metoda obiectului Date care returneaza ziua din luna.
setDate() getMonth() getDate()
var rightnow = new Date();
var day = rightnow.getDate();
alert(day);
Ce functie este folosita pentru a incarca un fisier pe server?
is_file() move_uploaded_file() fopen()
if(move_uploaded_file($_FILES["field_name"]["tmp_name"], "dir/file_name")) {
  echo "Fisierul a fost incarcat";
}
Cum se spune in engleza expresia: "Ploua cu galeata"?
rain cats and dogs rain buckets quiet rain
In Bucharest it`s raining cats and dogs.
- In Bucuresti ploua cu galeata.
Cum se spune in spaniola expresia: "Ploua cu galeata"?
llover cubo llover a cántaros lluvia tranquila
En Madrid está lloviendo a cántaros.
- In Madrid ploua cu galeata.
MySQL Conectare Pooling

Last accessed pages

  1. Conditional IF in Limba Engleza - Fraze Conditionale (58542)
  2. Curs si Tutoriale Ajax (33303)
  3. Verbele regulate 3 (3061)
  4. Curs CSS Online Tutoriale CSS3 (38502)
  5. Blog si Cugetari Personale (32941)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (1059)
  2. Curs HTML gratuit Tutoriale HTML5 (764)
  3. Curs si Tutoriale JavaScript (697)
  4. Curs si Tutoriale Ajax (662)
  5. Curs CSS Online Tutoriale CSS3 (644)