You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by "이승재 (인증플랫폼팀)" <sj...@kt.com> on 2016/03/08 02:48:15 UTC

Problem jetty dead lock base ServiceMix5.3.0

Hi,

I have a problem with camel in ServiceMix v5.3.0

I developed web-service through camel-jetty, camel-recipentlist in servicemix.
This package is good performance but resource lock and thread full occurred it. This system process 40 Call per second.

The problem is that pool threads aren't released properly sometimes.
After a few hours following the start of an application I can see using jstack tool that some threads are stuck in a WAITING state:

configuration is as follows:
- servicemix 5.3.0
- camel 2.13.2
- using component (camel-jetty , camel-recipentlist  based Spring DSL)

-------------- SOURCE ----------------------------------------------------------------------
<route customId="true" >
    <from uri="direct:giop_addr_async">
        <recipentList>
              <simple>jetty://http://api.host.lm?x=$<http://api.host.lm/?x=$>{header.x}&y=${header.y}</simple>
        </recipentList>
        <bean ref="soapDecode" method="userDecode"/>
        <to uri="direct:sendEndPoint">
</route>

<route customId="true>
        <from uri="direct:sendEndPoint">
        <to uri="jetty://http://resultMap?httpClient.soTimeout=8000"/><http://resultMap?httpClient.soTimeout=8000%22/%3e>
</route>




-------------- LOG ---------------------------------------------------------------------------

ps -eLf  | wc -l --> 32500

"CamelJettyClient(0x3d0b240d)-26916" damen prio=10 tid=0x000000000ff69800 nid =0x10ef wating on condition [0x00002b4b3ba3f0000]
   java.lang.Thread.State: TIMED_WAITNG(parking)
     at sun.misc.Unsafe.park(Native Method)
 - parging to wati for <0x000000006f13f19b0> (a java.util.concurrent.locks.AbstractQueuedsynchronizer$ConditionObject)
 at java.util.concurrent.locks.LocsSupport.parkNanos(LockSupport,java:226)
 at org.eclipse.jetty.util.BlockingArrayQueue.poll(BlockingArrayQueue.java:342)
 at org.eclipse.jetty.util.thread.QueuedThreadPool.idleJobPoss(QueuedThreadPool.java:526)
 at org.eclipse.jetty.tuil.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
 atjava.lnag.thread.run(Thread.java:745)



Above log more than 30000line......

Can you suggest what else can be checked? Am I missing something? Or may be
this is a bug in Camel?

[슬로건 메일명함]


[http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/emailsign_final_02.png]

이승재

[http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/logo_ktds.gif]


과장SDP팀

플랫폼담당 성장사업본부

[http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/email_sign_4x_07-08.png]

[http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/emailsign330_08.png]

[http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/emailsign_final_09.png]

010-8850-6556

[http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/emailsign330_11.png]

010-8850-6556



[http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/emailsign330_13.png]

[http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/emailsign_final_15_dshome.png]

www.ktds.com<http://www.ktds.com>

[http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/emailsign330_17.png]

sjlee7373@kt.com<ma...@kt.com>



















이 메일은 지정된 수취인만을 위해 작성되었으며, 중요한 정보나 저작권을 포함하고 있을 수 있습니다. 어떠한 권한 없이, 본 문서에 포함된 정보의 전부 또는 일부를 무단으로 제3자에게 공개, 배포, 복사 또는 사용하는 것을 엄격히 금지합니다. 만약, 본 메일이 잘못 전송된 경우, 발신인 또는 당사에 알려주시고, 본 메일을 즉시 삭제하여 주시기 바랍니다.
This E-mail may contain confidential information and/or copyright material. This email is intended for the use of the addressee only. If you receive this email by mistake, please either delete it without reproducing, distributing or retaining copies thereof or notify the sender immediately.

Re: Problem jetty dead lock base ServiceMix5.3.0

Posted by 이듀이 <de...@gmail.com>.
Hi

I think that you didnot understand camel components.

1. recipentList (http://camel.apache.org/recipient-list.html) use usually to
route messages to a number of dynamically specified recipients for EIP
Pattern.
    It is a feature, such as To-node
2. simple is also Simple Expression Language you can use. for example, To
get the body of the in message: "body", or "in.body" or "${body}".
3. jetty in To Node is jetty client. jetty's uriformat is "jetty:
http://hostname[:port][/resourceUri][?options]". Is the host name
"resultMap"?


I think that
you want to make provider using this (jetty://http://api.host.lm?x=$
<http://api.host.lm/?x=$>{header.x}&y=${header.y})
after processing,
you want to receive response. (jetty://
http://resultMap?httpClient.soTimeout=8000"/>)

is it Okay?

I suggest that following step:
1. if you want to make webservice(SOAP), You use camel-cxf componet. You
make cxf:bean:XXXX" in From Node.
2. if you want to route different endpoint, then you use receptList and
simple.
3. if you want to process business logic, then you use cxf
service(serviceHandler).
4. after processing business logic, it return result value.


2016-03-08 10:48 GMT+09:00 이승재(인증플랫폼팀) <sj...@kt.com>:

> Hi,
>
> I have a problem with camel in ServiceMix v5.3.0
>
> I developed web-service through camel-jetty, camel-recipentlist in
> servicemix.
> This package is good performance but resource lock and thread full
> occurred it. This system process 40 Call per second.
>
> The problem is that pool threads aren't released properly sometimes.
>
> After a few hours following the start of an application I can see using
> jstack tool that some threads are stuck in a WAITING state:
>
> configuration is as follows:
> - servicemix 5.3.0
> - camel 2.13.2
> - using component (camel-jetty , camel-recipentlist  based Spring DSL)
>
> -------------- SOURCE
> ----------------------------------------------------------------------
>
> <route customId="true" >
>     <from uri="direct:giop_addr_async">
>         <recipentList>
>               <simple>jetty://http://api.host.lm?x=$
> <http://api.host.lm/?x=$>{header.x}&y=${header.y}</simple>
>         </recipentList>
>         <bean ref="soapDecode" method="userDecode"/>
>         <to uri="direct:sendEndPoint">
> </route>
>
> <route customId="true>
>         <from uri="direct:sendEndPoint">
>         <to uri="jetty://http://resultMap?httpClient.soTimeout=8000"/>
> </route>
>
>
>
> -------------- LOG
> ---------------------------------------------------------------------------
>
> ps -eLf  | wc -l --> 32500
>
> "CamelJettyClient(0x3d0b240d)-26916" damen prio=10 tid=0x000000000ff69800
> nid =0x10ef wating on condition [0x00002b4b3ba3f0000]
>    java.lang.Thread.State: TIMED_WAITNG(parking)
>      at sun.misc.Unsafe.park(Native Method)
>  - parging to wati for <0x000000006f13f19b0> (a
> java.util.concurrent.locks.AbstractQueuedsynchronizer$ConditionObject)
>  at java.util.concurrent.locks.LocsSupport.parkNanos(LockSupport,java:226)
>  at
> org.eclipse.jetty.util.BlockingArrayQueue.poll(BlockingArrayQueue.java:342)
>  at
> org.eclipse.jetty.util.thread.QueuedThreadPool.idleJobPoss(QueuedThreadPool.java:526)
>
>  at
> org.eclipse.jetty.tuil.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
>
>  atjava.lnag.thread.run(Thread.java:745)
>
>
>
> Above log more than 30000line......
>
> Can you suggest what else can be checked? Am I missing something? Or may
> be
> this is a bug in Camel?
>
>
>
> [image: 슬로건 메일명함]
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/emailsign_final_01.png]
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/emailsign_final_02.png]
>
> 이승재
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/logo_ktds.gif]
>
> 과장[image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/dot3.png]
> SDP팀
>
> 플랫폼담당 성장사업본부
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/email_sign_4x_07-08.png]
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/emailsign330_08.png]
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/emailsign_final_09.png]
>
> 010-8850-6556
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/emailsign330_11.png]
>
> 010-8850-6556
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/email_sign_4x_09.png]
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/emailsign330_13.png]
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/emailsign_final_15_dshome.png]
>
> www.ktds.com
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/emailsign330_17.png]
>
> sjlee7373@kt.com
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/emailsign_final_19.png]
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/스페이서.gif]
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/스페이서.gif]
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/스페이서.gif]
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/스페이서.gif]
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/스페이서.gif]
>
> [image:
> http://massmail.group.kt.com/NameCardImage/MailNameCard/NameCardTemplate/contentImage/스페이서.gif]
>
>
>
>
>
>
> 이 메일은 지정된 수취인만을 위해 작성되었으며, 중요한 정보나 저작권을 포함하고 있을 수 있습니다. 어떠한 권한 없이, 본 문서에
> 포함된 정보의 전부 또는 일부를 무단으로 제3자에게 공개, 배포, 복사 또는 사용하는 것을 엄격히 금지합니다. 만약, 본 메일이 잘못
> 전송된 경우, 발신인 또는 당사에 알려주시고, 본 메일을 즉시 삭제하여 주시기 바랍니다.
> This E-mail may contain confidential information and/or copyright
> material. This email is intended for the use of the addressee only. If you
> receive this email by mistake, please either delete it without reproducing,
> distributing or retaining copies thereof or notify the sender immediately.
>