最近在code review看到有代码在每收到消息存储到hbase中,每次会创建connection,如下
public void msgArived(){
connection= ConnectionFactory.createConnection(hbaseConfig.configuration());
}
后来通过jvm查看java jvm情况时候发现有很多

实际hbase连接相当于一个连接池,不需要每次创建,一个程序或者说一个进程共用一个connection对象,在配置文件或者注解里面设置连接数目
config.set("hbase.client.ipc.pool.type","RoundRobinPool");
config.set("hbase.client.ipc.pool.size",8);//cpu个数+1
connection = ConnectionFactory.createConnection(config);

本文探讨了在使用HBase进行消息存储时的连接优化策略。指出频繁创建连接的不当之处,并介绍如何利用连接池实现资源的有效管理和复用,提高应用程序性能。
3412

被折叠的 条评论
为什么被折叠?



