hikaricp适配华为云&Gaussdb
HikariCP 是一个高性能的 JDBC 连接池,它在 Java 环境中用于管理数据库连接。它通过提供高效的连接池管理来改善数据库访问性能,广泛应用于需要频繁与数据库交互的应用程序中。HikariCP 的特点包括:
主要特点:
1. 高性能:
HikariCP 被设计为高性能的 JDBC 连接池,其性能优于许多传统的连接池实现,如 C3P0 和 DBCP。其高效的内部实现使得它能够处理大量并发请求,并减少连接的创建和销毁时间。
2. 轻量级:
它的代码库非常小,简单且高效,避免了不必要的复杂性。HikariCP 通过尽可能少的操作来减少资源消耗。
3. 优化的连接管理:
它使用了许多先进的技术来优化连接池的性能。例如,它支持连接池的连接泄露检测、最大池大小的灵活配置、自动回收等功能。
4. 兼容性好:
HikariCP 支持 JDBC 4.0 及以上版本,并且兼容多种数据库。它的配置项非常丰富,用户可以根据需求进行定制化配置。
5. 简单易用:
HikariCP 提供了简单直观的 API 和配置项,用户可以快速集成到项目中。
主要配置项:
• dataSourceClassName 或 jdbcUrl:设置数据源类名或 JDBC URL。
• username 和 password:用于设置连接数据库的用户名和密码。
• maximumPoolSize:设置连接池中最大连接数。
• minimumIdle:设置连接池中最小空闲连接数。
• connectionTimeout:设置从连接池获取连接的超时时间。
• idleTimeout:连接池中连接的空闲超时时间。
• maxLifetime:连接池中连接的最大生命周期。
• leakDetectionThreshold:设置连接泄漏的检测阈值。
集成:
HikariCP 可以与大多数框架和容器集成,例如 Spring、Hibernate、MyBatis 等。它是默认的连接池选择之一,在 Spring Boot 中,HikariCP 已经成为默认的数据库连接池实现。
性能优势:
HikariCP 的主要优势在于它的速度和低延迟,它通过最小化同步操作、优化线程管理以及减少资源占用来达到这一点。相比其他连接池,它在高负载情况下表现出更低的延迟和更高的吞吐量。
总的来说,HikariCP 是一个可靠且高效的 JDBC 连接池,适用于对性能要求较高的应用程序。
目前华为云的Gaussdb存在大量适配任务,在开源开发者平台可以看到hikaricp适配Gaussdb的任务,今天就完成一下这个任务。
任务的目的
因为华为云采用了自己的cpu指令集和操作系统,所以可能有些软件不适配。所以诞生了此次任务。我领取的任务适配hikaricp,在华为云上部署,看看适配能够正常运行。
报名流程
- 在喜欢的任务上进行报名,填写自己的申请,留下自己的邮箱,之后华为官方会发送任务计划书到邮箱内。
- 开通开发者空间,进行实名认证,加入沃土云创计划个人方向。
- 进入激励管理》开源共创,进入任务,此时在需求分析节点,提交之前发送到邮箱内的任务计划书。
- 提交任务计划书之后,审批后进入开发阶段,阅读任务计划书,了解需要开发的内容。
- 此时需要申领服务器,主要是Gaussdb,华为云ECS。
- 开发完整之后,在ECS上进行验证。
- 测试完成后,可以申请任务验收。将自己的代码分支博文等信息打包成zip文件进行上传。
开发代码
- 华为云提供了官方demo(https://gitcode.com/HuaweiCloudDeveloper/servicecomb-fence/overview),首先在自己的账号下导入仓库。
- 现在这个项目是在Mybatis上改的,一些基础的类,例如student已经存在了。所以就不需要再写了
- 我的项目https://gitcode.com/wsm921225/opensource-demo-hikaricp-241106/overview,分支dev_hikaricp
开发思路
因为mybatis-spring-boot-starter中已经引入hikaricp的包,所以只需要在properties中启用就行,配置如下:
spring:
datasource:
url: jdbc:opengauss://ip:port/postgres?currentSchema=class # WARNING: please change ip and port
username: root
password: pwd
driver-class-name: org.opengauss.Driver
hikari:
minimum-idle: 5
maximum-pool-size: 10
connection-timeout: 20000
idle-timeout: 300000
max-lifetime: 1800000
logging:
level:
com:
zaxxer:
hikari: DEBUG
上云第一步-购买Gaussdb
第二步-购买ECS
成果访问
访问 http://公网ip/ui/admin/ 点击登录按钮后,页面显示如下
启用hikaricp的日志如下:
自此,成功完成hikaricp对接华为云的任务。
- 点赞
- 收藏
- 关注作者
评论(0)