Stocarea sesiunilor - depășirea stivei în limba rusă

Dacă comparați stocarea într-o bază de date și în sistemul de fișiere.

Avantajele mele:

  • Simplificarea curățare prin utilizarea indicilor (de obicei, baze de date relaționale sau orientate spre documente) sau tastele de curățare automată (de obicei, cheie-valoare DB).
  • Dacă baza de date este relațională, este posibilă conectarea altor entități cu sesiuni. Sesiunea a fost închisă, rândul a fost eliminat - ON DELETE CASCADE a curățat automat obiectele asociate.
  • Securitate mai mare pentru găzduirea în comun, unde, în cazul unei configurații incorecte a serverului, puteți accesa fișierele cu date de sesiune sau cel puțin listați numele acestora (identificatori).
  • Dacă serializare este de casă sau într-un format comun, puteți partaja sesiune între mai multe subsisteme, inclusiv realizate și în diferite limbi și tehnologii.






Vizibil de mine contra:







  • În funcție de baza de date, viteza de lucru cu sesiunile poate fi semnificativ mai mică, încetinind încărcarea paginilor. De exemplu, în PostgreSQL, aș fi participat la sesiuni doar pe o necesitate grav justificată. În cazul în care DB oferă unele garanții de fiabilitate a stocării, atunci, probabil, doar petrece timp suplimentar.
  • Informațiile cu valoare scăzută din baza de date pot duce la proliferarea sa excesivă. Sesiunile nu trăiesc foarte mult - datele sunt, de fapt, efemere. De exemplu, cu baza de date în memorie (de exemplu, MemcacheDB, Redis) cu privire la numărul bucal mic de vizitatori activi care nu doresc să ia, cookie-urile au (roboți sunt bune), puteți pierde cu ușurință o mulțime de memorie inutile. Defragmentarea și eliberarea - dând-o înapoi la sistem - poate să nu fie cea mai ușoară sarcină.

ответ дан 8 Nov '12 la 0:14







Articole similare

Trimiteți-le prietenilor: