You mean to say this is inefficient? If yes, then what should I do instead
of below?

String responseBody = IOUtils.toString(entity.getContent(), StandardCharsets
.UTF_8);

On Fri, May 13, 2016 at 4:03 AM, Oleg Kalnichevski <ol...@apache.org> wrote:

> On Thu, 2016-05-12 at 13:17 -0700, Check Peck wrote:
> > I have a library which is being used by customer and they are passing
> > DataRequest object which has userid, various timeouts and some other
> fields
> > in it. Now I use this DataRequest object to make a URL and then I make an
> > HTTP call using Apache HttpClient and my service returns back a JSON
> > response which I use it to make a DataResponse object and return this
> > DataResponse object back to them.
> >
> > Below is my DataClient class used by customer by passing DataRequest
> object
> > to it.
> >
> > https://gist.github.com/TechGeeky/250be2d9cdef3fa5107a17058a265d4c
> >
> > And here is DataFetcherTask class:
> >
> > https://gist.github.com/TechGeeky/c1b21025e0f81d222b792dedac0a817d
> >
> > Customer within our company will use my library like this as shown below
> by
> > using my factory in their code base -
> >
> >     // if they are calling getSyncData() method
> >     DataResponse response =
> > DataClientFactory.getInstance().getSyncData(key);
> >
> >     // and if they want to call getAsyncData() method
> >     Future<DataResponse> response =
> > DataClientFactory.getInstance().getAsyncData(key);
> >
> > I am implementing "sync call as async + waiting" since I want to throttle
> > them with the number of threads otherwise they can bombard our service
> > without any control. My library will be used by lot of customers within
> our
> > company and their applications won't ever shutdown, they will keep
> running
> > always. The only thing will happen is their machines will get restarted,
> > that's all.
> >
> > Is this the right way to use Apache HttpClient in production in
> > multithreaded environment? Or there is any better/efficient way?
> >
> > I have to use various timeout values present in my DataRequest class in
> my
> > Apache HttpClient calls so that's  why I am creating RequestConfig and
> > using it in my call method. I have simplified the code so that idea gets
> > clear what I am trying to do.
>
> Looks OK for the most part. However I would consider conversion of
> response entity to a string rather inefficient.
>
> Oleg
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-users-unsubscr...@hc.apache.org
> For additional commands, e-mail: httpclient-users-h...@hc.apache.org
>
>

Reply via email to