java - hbase连接

import com.desheng.bigdata.personas.common.time.DateUtils;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.client.Connection;
import org.apache.hadoop.hbase.client.ConnectionFactory;

import java.io.IOException;
import java.util.LinkedList;

public class HBaseUtils {


    private static LinkedList<Connection> pool = new LinkedList<>();


    static {
        try {
            Configuration conf = HBaseConfiguration.create();
            for(int i = 0; i < 10; i++) {
                pool.push(ConnectionFactory.createConnection(conf));
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }


    public static Connection getHBaseConnection() {
        while (pool.isEmpty()) {
            DateUtils.sleep(1000);
        }
        return pool.poll();
    }


    public static void release(Connection connection) {
        pool.push(connection);
    }
}

 

posted @ 2021-01-12 15:43  快乐的张小凡  阅读(354)  评论(0编辑  收藏  举报