sql >> Databáze >  >> RDS >> Mysql

Připravená mezipaměť příkazů s MySQL a JDBC

Ano, ukládání do mezipaměti neublíží, pokud víte, co děláte. Kombinace mezipaměti na straně klienta a mezipaměti na straně serveru přináší výhody výkonu, pokud znovu použijete připravené příkazy tak, jak mají (spousta lidí zapomíná na nejdůležitější část :D). Stačí nastavit Vlastnosti konektoru/J vlastnosti správně:

cachePrepStmts=true&useServerPrepStmts=true

I když nejsem velkým fanouškem mikro benchmarků, tady je jeden abych podpořil svá prohlášení (zamýšlená chabá hříčka). Zajímavá část benchmarku je, že ukazuje, že povolení ukládání do mezipaměti na straně serveru může ve skutečnosti zpomalit věci bez nějakého ukládání do mezipaměti na straně klienta, ale s povolenými oběma vrstvami mezipaměti a správným opětovným použitím připravených příkazů můžete ve skutečnosti dosáhnout dobrého zrychlení. .



  1. Referenční alias v klauzuli WHERE

  2. ORA-12516, TNS:listener nemohl najít dostupnou obsluhu

  3. Zkontrolujte, zda všechny hodnoty v poli existují ve sloupci databáze

  4. Ovladač Mysql JDBC ClassNotFoundException