首页 > 数据库 >hbase数据库连接池 未设置最大链接数导致数据库操作异常频发

hbase数据库连接池 未设置最大链接数导致数据库操作异常频发

时间:2024-07-26 14:07:12浏览次数:10  
标签:数据库 设置 hbase 异常 链接 连接池

hbase数据库连接池 未设置最大链接数导致数据库操作异常频发

简介

业务中将主要数据存储定位hbase存储,近期突然发现数据比对不上,发现实在创建环节发生异常导致逻辑执行终端(hbase存储或查询出现异常)。

表现:

供应商提供参考:

供应商提供的解决方案:

        关闭超过90s未使用的链接是一种保护方案,可以重新链接一下就好了

第一次按照解决方案优化结果

按照供应商提供的解决思路,对核心调用环节增加了异常捕获和重试(4次),依然还是有很多超过两次以上的异常报错,因为可能造成的影响很大,因此继续和供应商沟通是否有彻底解决方案,避免此类问题出现或者将降低频率降到最低,每天遇到几百次异常这个意味着我们应用属于不稳定不可靠

再次沟通,确认为什么需要释放链接以及满足什么条件释放超过90s未使用的链接

1.服务端链接数超过1000

2.链接超过90s未使用

应用现状

1.目前hbase实例只有我们一个业务再用

2.连接池初始值和最小连接数初始值都是10

3.未设置最大链接数据(最主要)

4.集群大小8

问题定位

1.因为业务有大量读写需求,可能会有负载不均的情况导致链接增长过快

2.连接池参数配置不合理

解决方案

1.现有代码不进行调整

2.设置最大链接数结合集群数量确保已知连接数不超过1000或控制在500以内 

注:链接池连接数并不是越大越好,创建和释放链接都是比较消耗资源和耗时的

3.最大链接数设置为50  (50*8=400)

注:集群最多占用400个链接不会触发服务端链接释放

结果:

        重启应用后链接释放异常得到解决,后续还需要持续观察两天。目前看已经彻底解决

参考资料:

通过Lindorm宽表SQL Java API连接并使用宽表引擎

 数据库连接池的大小你真的设置对了吗

Apache Druid数据库连接池的大小你真的设置对了吗

原文链接:https://blog.csdn.net/u011236069/article/details/123210238

标签:数据库,设置,hbase,异常,链接,连接池
From: https://www.cnblogs.com/sunny3158/p/18325252

相关文章

  • ElasticSearch第1讲(4万字详解 Linux下安装、原生调用、API调用超全总结、Painless、IK
    ElasticSearch官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/getting-started.html非官方中文文档:https://learnku.com/docs/elasticsearch73/7.3极简概括:基于ApacheLucene构建开源的分布式搜索引擎。解决问题:MySQLlike中文全文搜索不走索引......
  • 【Android】数据存储方案——文件存储、SharedPreferences、SQLite数据库用法总结
    文章目录文件存储存储到文件读取文件SharedPreferences存储存储获取SharedPreferences对象Context类的getSharedPreferences()方法Activity类的getPreferences()方法PreferenceManager类中的getDefaultSharedPreferences()方法示例读取记住密码的功能SQLite......
  • Oracle数据库状态信息自动化收集脚本
    #!/bin/bash#配置变量ORACLE_SID=CDBORACLE_HOME=/u01/app/oracle/product/19c/dbhome_1PATH=$ORACLE_HOME/bin:$PATHexportORACLE_SIDORACLE_HOMEPATH#数据库登录信息DB_USER=lcsdbDB_PASS=123456PDB_NAME=FS3_LCS#输出文件OUTPUT_DIR=/path/to/output/dire......
  • Oracle数据库监控和运维关注哪些方面
    全面的数据库监控和运维涉及多个方面。以下是一些关键的数据库状态信息,你应该关注这些方面,以确保数据库的健康和性能:1.数据库运行状态数据库状态:检查数据库是否运行正常,了解是否处于OPEN、MOUNT或NOMOUNT状态。实例状态:确保所有实例都正常运行,没有宕机或异常。2.内存使用......
  • KingbaseES数据库禁止某用户连接到数据库
    一、权限介绍KingbaseES数据库中的权限控制主要分为两个层次:实例级别和数据库级别。实例级别的权限由sys_hba.conf文件控制,而数据库级别的权限则由数据库内部的权限系统控制。对于数据库以及实例的权限控制,这两者权限控制可以理解为粗粒度,细粒度。实例级别权限:这主要通过sys_hba......
  • KingbaseES 数据库WAL日志暴增问题处理
    故障现象:kingbase数据库容量不足100G,业务繁忙程度小,但是每天产生112283个WAL日志,每个日志16M,生成约1.7T的归档日志分析过程:思路一:从数据库日志入手,分析过程如下:sys_log日志:2024-06-0223:54:05.497CST3130361b580b0.7a47182242021-12-1212......
  • KingbaseES 数据库无响应问题分析
    一、背景及理论阐述某项目数据库系统是集群环境,主库业务卡顿,应用反馈部分业务无法正常进行。在操作系统中,物理内存(RAM)是有限的资源,当内存需求超过物理内存的容量时,操作系统会使用页面调度机制来管理内存资源。页面调度涉及将不常用的内存页面(Page)移到磁盘上的交换空间(SwapSpace......
  • 聊一聊PostgreSQL数据库,以及PostgreSQL认证体系
    PostgreSQL数据库简介PostgreSQL是一种强大的开源关系型数据库管理系统(RDBMS)。它具有以下显著特点和优势:强大的功能:支持丰富的数据类型,包括数组、JSON、XML等复杂数据类型。提供完善的事务处理机制,确保数据的一致性和可靠性。高度的可扩展性:可以通过自定义函数、存储过程和......
  • 修改数据库的默认校对规则
    在Linux下,要修改MySQL服务器的默认字符集和校对规则,您需要按照以下步骤操作: ###1.查找MySQL配置文件 首先,您需要找到MySQL的配置文件。配置文件通常位于`/etc/mysql/my.cnf`或`/etc/my.cnf`。您可以使用`find`命令来查找它: ```bashsudofind/-namemy.cnf```......
  • docker搭建hadoop+hbase(待写完)
    参考文档:  1.官方文档 https://hub.docker.com/r/apache/hadoop一.创建集群配置根据文档可知,首先创建一个docker-compose.yaml文件我的文件内容如下version:"2"services:  namenode:   image:apache/hadoop:3.3.6   hostname:namenode  ......