A solid, high-performance, zero-overhead JDBC connection pool for Java applications.
HikariCP is a high-performance JDBC connection pool for Java applications. It manages database connections efficiently, reducing overhead and improving application responsiveness. It solves the problem of costly connection acquisition and management by providing a fast, reliable pool with minimal configuration.
Java developers building database-driven applications that require efficient connection management, such as web services, enterprise software, and high-traffic systems.
Developers choose HikariCP for its proven performance, reliability, and simplicity. It outperforms other connection pools in benchmarks, offers sensible defaults, and requires less tuning while handling real-world scenarios like database failures and spike demands effectively.
光 HikariCP・A solid, high-performance, JDBC connection pool at last.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
JMH benchmarks show HikariCP significantly outperforms competitors like Apache DBCP and c3p0 in connection and statement cycles, with minimal overhead and efficient spike demand handling.
At roughly 165Kb, the library is lightweight, reducing memory usage and startup times compared to bulkier alternatives, as emphasized in the project description.
HikariCP comes pre-configured with optimal settings for most deployments, minimizing tuning needs and reducing configuration errors, as highlighted in the 'Essentials' section.
It automatically handles connection lifecycle, validation using JDBC4 isValid(), and recovery, with features like keepaliveTime to prevent timeouts, as detailed in the configuration knobs.
HikariCP intentionally omits PreparedStatement caching at the pool layer, calling it an anti-pattern, which forces reliance on driver-specific caches that may not be available for all databases.
The pool requires accurate NTP synchronization for reliable operation; the README warns that lack of time sync can cause failures and will not be supported, adding operational overhead.
It lacks support for XA data sources and some legacy configurations, as noted in the 'Missing Knobs' section, necessitating additional tools for distributed transactions or complex setups.