Re: I/O thread blocking under high concurrent load

2017-02-02 Thread Sudheera Palihakkara
Hi,

Yes of course. The reason behind my concern is all these blocks seems to be
occurred in EPoll related operations and there are quite a lot of these
blocks. I'm worried about this has a impact on the performance of the
application. Is there any configuration parameter to switch off this EPoll
usage in order to perform a round of testing without it. Thanks

Regards,
Sudheera.

On Thu, Feb 2, 2017 at 5:36 PM, Oleg Kalnichevski  wrote:

> On February 2, 2017 7:05:07 AM GMT+01:00, Sudheera Palihakkara <
> catchsudhe...@gmail.com> wrote:
> >Hi all,
> >
> >I'm currently using httpcore-nio 4.4 for a proxy-like application and
> >make
> >use of the file channels when content transferring. Recently I have
> >profiled my code under a high concurrent load and observed few unusual
> >thread blocking occurrences. Stack traces are listed below.
> >
> >*I/O threads*
> >
> >S-I/O-dispatcher-1 [BLOCKED]
> >sun.nio.ch.EPollSelectorImpl.doSelect(long) EPollSelectorImpl.java:88
> >java.lang.Thread.run() Thread.java:745
> >
> >S-I/O-dispatcher-5 [BLOCKED]
> >org.apache.http.impl.nio.reactor.IOSessionImpl.setEvent(int)
> >IOSessionImpl.java:164
> >org.apache.http.impl.nio.DefaultNHttpClientConnection.
> submitRequest(HttpRequest)
> >DefaultNHttpClientConnection.java:339
> >
> >*Worker threds*
> >
> >pool-2-thread-99 [BLOCKED]
> >sun.nio.ch.EPollArrayWrapper.setInterest(int, int)
> >EPollArrayWrapper.java:213
> >org.apache.http.nio.protocol.HttpAsyncService$HttpAsyncExchangeImpl.
> submitResponse(HttpAsyncResponseProducer)
> >HttpAsyncService.java:1037
> >
> >pool-2-thread-96 [BLOCKED]
> >sun.nio.ch.EPollSelectorImpl.wakeup() EPollSelectorImpl.java:191
> >org.apache.http.nio.protocol.HttpAsyncService$HttpAsyncExchangeImpl.
> submitResponse(HttpAsyncResponseProducer)
> >HttpAsyncService.java:1037
> >
> >Previously I have used httpcore-nio 4.2.5 for the same application and
> >did
> >not encountered any such thread blockings. Can you help me out to
> >figure
> >out what might be the issue here? Thank you very much.
>
> Synchronized sections of code can cause threads to block on the
> synchronization object under load. This does not necessarily mean there is
> a problem.
>
> Oleg
> --
> Sent from my Android device with K-9 Mail. Please excuse my brevity.
>



-- 
*Sudheera Palihakkara.*
Undergraduate
Department of
*Computer Science and Engineering,*Faculty of Engineering,
*University of Moratuwa*,
Sri Lanka.


Re: I/O thread blocking under high concurrent load

2017-02-02 Thread Oleg Kalnichevski
On February 2, 2017 7:05:07 AM GMT+01:00, Sudheera Palihakkara 
 wrote:
>Hi all,
>
>I'm currently using httpcore-nio 4.4 for a proxy-like application and
>make
>use of the file channels when content transferring. Recently I have
>profiled my code under a high concurrent load and observed few unusual
>thread blocking occurrences. Stack traces are listed below.
>
>*I/O threads*
>
>S-I/O-dispatcher-1 [BLOCKED]
>sun.nio.ch.EPollSelectorImpl.doSelect(long) EPollSelectorImpl.java:88
>java.lang.Thread.run() Thread.java:745
>
>S-I/O-dispatcher-5 [BLOCKED]
>org.apache.http.impl.nio.reactor.IOSessionImpl.setEvent(int)
>IOSessionImpl.java:164
>org.apache.http.impl.nio.DefaultNHttpClientConnection.submitRequest(HttpRequest)
>DefaultNHttpClientConnection.java:339
>
>*Worker threds*
>
>pool-2-thread-99 [BLOCKED]
>sun.nio.ch.EPollArrayWrapper.setInterest(int, int)
>EPollArrayWrapper.java:213
>org.apache.http.nio.protocol.HttpAsyncService$HttpAsyncExchangeImpl.submitResponse(HttpAsyncResponseProducer)
>HttpAsyncService.java:1037
>
>pool-2-thread-96 [BLOCKED]
>sun.nio.ch.EPollSelectorImpl.wakeup() EPollSelectorImpl.java:191
>org.apache.http.nio.protocol.HttpAsyncService$HttpAsyncExchangeImpl.submitResponse(HttpAsyncResponseProducer)
>HttpAsyncService.java:1037
>
>Previously I have used httpcore-nio 4.2.5 for the same application and
>did
>not encountered any such thread blockings. Can you help me out to
>figure
>out what might be the issue here? Thank you very much.

Synchronized sections of code can cause threads to block on the synchronization 
object under load. This does not necessarily mean there is a problem.

Oleg
-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.

-
To unsubscribe, e-mail: httpclient-users-unsubscr...@hc.apache.org
For additional commands, e-mail: httpclient-users-h...@hc.apache.org



I/O thread blocking under high concurrent load

2017-02-01 Thread Sudheera Palihakkara
Hi all,

I'm currently using httpcore-nio 4.4 for a proxy-like application and make
use of the file channels when content transferring. Recently I have
profiled my code under a high concurrent load and observed few unusual
thread blocking occurrences. Stack traces are listed below.

*I/O threads*

S-I/O-dispatcher-1 [BLOCKED]
sun.nio.ch.EPollSelectorImpl.doSelect(long) EPollSelectorImpl.java:88
java.lang.Thread.run() Thread.java:745

S-I/O-dispatcher-5 [BLOCKED]
org.apache.http.impl.nio.reactor.IOSessionImpl.setEvent(int)
IOSessionImpl.java:164
org.apache.http.impl.nio.DefaultNHttpClientConnection.submitRequest(HttpRequest)
DefaultNHttpClientConnection.java:339

*Worker threds*

pool-2-thread-99 [BLOCKED]
sun.nio.ch.EPollArrayWrapper.setInterest(int, int)
EPollArrayWrapper.java:213
org.apache.http.nio.protocol.HttpAsyncService$HttpAsyncExchangeImpl.submitResponse(HttpAsyncResponseProducer)
HttpAsyncService.java:1037

pool-2-thread-96 [BLOCKED]
sun.nio.ch.EPollSelectorImpl.wakeup() EPollSelectorImpl.java:191
org.apache.http.nio.protocol.HttpAsyncService$HttpAsyncExchangeImpl.submitResponse(HttpAsyncResponseProducer)
HttpAsyncService.java:1037

Previously I have used httpcore-nio 4.2.5 for the same application and did
not encountered any such thread blockings. Can you help me out to figure
out what might be the issue here? Thank you very much.

-- 
*Sudheera Palihakkara.*
Undergraduate
Department of
*Computer Science and Engineering,*Faculty of Engineering,
*University of Moratuwa*,
Sri Lanka.