Hi Serega,
I am very interesting in the reason why per application need to create 5  
instead of only one HConnection instances during servlet initialization?








At 2015-02-04 01:01:38, "Serega Sheypak" <serega.shey...@gmail.com> wrote:
>Hi, guys from group helped me a lot. I did solve pretty the same problem
>(CRUD web-app)
>
>1. Use single instance of HConnection per application.
>2. Instantiate it once.
>3. create HTable instance for each CRUD operation and safely close it
>(try-catch-finally). Use the same HConnection to create any HTable for CRUD
>operation.
>4. DO NOT close HConnection after CRUD operation
>
>I have logic controllers which get HConnection injection in
>HttpServlet.init method.
>So I have 5 HConnection instances per application created during servlet
>initialization
>
>
>2015-02-03 18:12 GMT+03:00 Ted Yu <yuzhih...@gmail.com>:
>
>> Please see '61.1. Cluster Connections' under
>> http://hbase.apache.org/book.html#architecture.client
>>
>> Cheers
>>
>> On Tue, Feb 3, 2015 at 6:47 AM, sleimanjneidi <jneidi.slei...@gmail.com>
>> wrote:
>>
>> > Hi all,
>> > I am using hbase-0.98.1-cdh5.1.4 client and I am a bit confused by the
>> > documentation of HConnection. The document says the following:
>> >
>> > HConnection instances can be shared. Sharing is usually what you want
>> > because rather than each HConnection instance having to do its own
>> > discovery of regions out on the cluster, instead, all clients get to
>> share
>> > the one cache of locations. HConnectionManager does the sharing for you
>> if
>> > you go by it getting connections. Sharing makes cleanup of HConnections
>> > awkward. .
>> >
>> > So now I have a simple question: Can I share the same HConnection
>> instance
>> > in my entire application?
>> > And write some magic code to know when to close or never close at all?
>> > Or I have to create an instance and close it every time I do a CRUD
>> > operation ?
>> >
>> > Many thanks
>> >
>> >
>> >
>>

Reply via email to