개발스토리

HikariCP가 뭘까?! 본문

Spring & SpringBoot

HikariCP가 뭘까?!

무루뭉 2021. 8. 30. 14:19

스프링부트를 공부하면서 위 사진처럼 계속해서 찍어주는 것이 궁금했다..!

쓰고는 있지만 무엇인지 모르는 것은 이제 지양하자..!

 

그래서 알아보았다.

 

HikariCP

 

HirakiCP는 가볍고 안정적이고 빠른 JDBC Connection Pool이다!! 제로-오버헤드라고 홍보를 하고 있다.

 

Connection Pool 개념을 모른다면 고고씽! 2021.08.30 - [Computer Science/데이터베이스] - Database Connection Pool

 

스프링부트 2.0부터 default이다.

또, 아래와 같은 벤치마크 결과도 제공한다.

 

connection pool을 관리하는 게 중요한 이유는 바로 성능에 있다. 성능에 큰 영향을 끼친다. connection을 맺는 과정은 복잡하면서 컴퓨터의 자원을 많이 소모한다. 

HirakiCP는 미리 정해놓은 만큼 connection을 pool에 담아 두고 요청이 오면 thread가 connection을 요청하고, 미리 담아 놓은 pool 내에 connection을 연결해준다.

 

 @Bean
    @ConfigurationProperties(prefix = "spring.datasource.hikari")
    public HikariConfig hikariConfig() {
        return new HikariConfig();
    }

    @Bean
    public DataSource dataSource() throws Exception {
        DataSource dataSource = new HikariDataSource(hikariConfig());
        System.out.println(dataSource.toString());
        return dataSource;
    }
spring.datasource.hikari.driver-class-name=net.sf.log4jdbc.sql.jdbcapi.DriverSpy
spring.datasource.hikari.jdbc-url= jdbc:log4jdbc:mysql://localhost:3306/...
spring.datasource.hikari.username=username
spring.datasource.hikari.password=password
spring.datasource.hikari.connection-test-query=SELECT 1

 

나는 위에 코드로 연결했다. 잘 되는지 테스트 쿼리도 날려 보았다.

 

 

 

이제 이것들이 무엇을 의미하는 지 알겠다!!! 가즈아~

'Spring & SpringBoot' 카테고리의 다른 글

Spring REST Docs 적용  (1) 2021.11.11
Spring REST Docs 도입 이유  (0) 2021.11.11
@Bean, @Component, @Configuration  (3) 2021.08.31
Service와 ServiceImpl  (1) 2021.08.31
Spring Security  (1) 2021.08.20
Comments