Prestazioni di iBatis rispetto a JDBC

18 aprile 2008 at 19:44 (Java, Tecnologia) (, , , )

Ho fatto un veloce test per verificare l’overhead di iBatis rispetto a dei semplici statement JDBC. Ho scritto una query che estrae un solo record dato l’id. Ho scritto un programmino Java per far girare la query 100 mila volte sia in modo iBatis che in modo JDBC. L’id del record è sempre rimasto uguale: questo per garantire che il db utilizzasse sempre la sua cache in memoria. Il db utilizzato è stato Postgresql.

Ho ripetuto l’esperimento più volte e fatto la media. I tempi registrati (in microsecondi) sono stati i seguenti:

  • iBatis: 312usec
  • JDBC: 304usec

Quindi, sì, iBatis ha un impatto sulle prestazioni ma è solo del 3%, quindi minimo.

Un’ultima osservazione: facendo girare la query in psql e registrando i tempi con “explain analyze” i tempi sono costantemente di 51 microsecondi. Cioè Java vede tempi sei volte più lunghi di quello che il db è in grado di fornire. Hmmmm…

1 commento

  1. Mirko Sciachero ha detto,

    Una sola domanda, per i confronti dei tempi, misuravi prima o dopo di aver staccato la connessione al DB?
    Su Oracle l’avvio di un ServerProcess ha comunque un tempo non indifferente (anche 2/3 decimi di secondo).

Lascia un Commento

Fill in your details below or click an icon to log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Log Out / Modifica )

Foto Twitter

You are commenting using your Twitter account. Log Out / Modifica )

Foto di Facebook

You are commenting using your Facebook account. Log Out / Modifica )

Connecting to %s

Iscriviti

Get every new post delivered to your Inbox.