i have small hbase
cluster running java
frontend. have working test code establishes connection, runs test data, , disconnects, need extend webapp part of larger project. suggested use tomcat
http
service interface database, , part of need set connection pool.
i understand connection pools on conceptual level (a pile of persistent connections db handed out clients needed , returned pool when discarded), i've never written webapp before , tomcat
vexxing me. can find loads of documentation on how setup connection pool sql
server using jdbc
, nothing on hbase
(or, matter, sql
) , nothing on how (or whether can or should) write custom interface working tomcat
. doable, or possible, or should taking different approach?
i think hard find made tomcat
, don't think such thing exist. people using custom classes. being said, should build around htablepool
comes hbase
.
here example of can use in project :
public class htablemanager { public static int htable_pool_size = 15; private static htablemanager instance; private static htablepool htablepool; /** * private constructor */ private htablemanager() { try { configuration config = hbaseconfiguration.create(); config.set("hbase.defaults.for.version.skip", "false"); htablepool = new htablepool(config, htable_pool_size); } catch (ioexception ex) { // error handling } } /** * @return hbasetablemanager instance */ public static htablemanager getinstance() { if (instance == null) { instance = new htablemanager(); } return instance; } /** * method used retrieve htable instance. * * @param tablename table name * @return htableinterface instance * @throws ioexception */ public synchronized htableinterface gethtable(string tablename) throws ioexception { return htablepool.gettable(tablename); } }
and can use :
htablemanager htablemanager = htablemanager.getinstance(); htableinterface htable = htablemanager.gethtable("yourtablename"); ... // work htable instance ... // call close method returns pool htable.close();
Comments
Post a Comment