Shielding users from Derby class-loading events

JVMs tend to load classes as they are needed, which means that the first time you need a class in a piece of software, it takes longer to use.

Derby has three clear cases when a lot of class loading occurs:

For any of these events, you can control the impact they have on users by starting them in separate threads while other tasks are occurring.

In addition, if you are using PreparedStatements, prepare them in a separate thread in the background while other tasks are occurring.

Tuning tips for multi-user systems

Tuning tips for single-user systems

Related concepts
Avoiding table scans of large tables
Avoiding compiling SQL statements