2009-03-11 3 views
2

Tomcat/BlazeDS/ActiveMQ 스택에서 연결이 끊어졌습니다. 우리의 BlazeDS StreamingAMFChannel이 기본 idle-timeout-minutes가 0으로 설정되어 있지만, 약 30 분의 유휴 시간이 지나면 시간 초과 된 것 같습니다 (로그 참조). 그 시간 동안 클라이언트는 어떤 요청도하지 않으며 우리는 또한 ActiveMQ 주제에서 메시지를 푸시하지 않습니다.Tomcat/BlazeDS/ActiveMQ 연결 해제 문제

activeMQ 및 BlazeDS에서 디버그 로깅을 활성화하고 BlazeDS가 소비자를 제거하고 있음을 확인했습니다. 불행하게도 연결 해제 메시지 이전에는 로그 메시지가 없으므로 BlazeDS에서이 메시지가 호출 될 때 실제로 추적 할 수 없습니다.

누구든지이 경험이 있거나 해결책을 제공 할 수 있습니까?

* ActiveMQ를 로그 *

11 Mar 2009 16:25:47,405 [ActiveMQ Transport: tcp:///127.0.0.1:49971] DEBUG activemq.broker.region.AbstractRegion - Removing consumer: ID:TMSNEC02.traficon.int-52586-1236783284912-2:3:1:1 
11 Mar 2009 16:25:47,406 [ActiveMQ Transport: tcp:///127.0.0.1:49971] DEBUG activemq.broker.region.AbstractRegion - Removing consumer: ID:TMSNEC02.traficon.int-52586-1236783284912-2:3:-1:1 
11 Mar 2009 16:25:47,407 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] DEBUG activemq.transport.tcp.TcpTransport - Stopping transport tcp://localhost/127.0.0.1:61616 
11 Mar 2009 16:25:47,408 [ActiveMQ Transport Stopper: /127.0.0.1:49971] DEBUG apache.activemq.broker.TransportConnection - Stopping connection: /127.0.0.1:49971 
11 Mar 2009 16:25:47,409 [ActiveMQ Transport Stopper: /127.0.0.1:49971] DEBUG activemq.transport.tcp.TcpTransport - Stopping transport tcp:///127.0.0.1:49971 
11 Mar 2009 16:25:47,413 [ActiveMQ Transport Stopper: /127.0.0.1:49971] DEBUG apache.activemq.broker.TransportConnection - Stopped connection: /127.0.0.1:49971 
11 Mar 2009 16:25:47,417 [ActiveMQ Transport Stopper: /127.0.0.1:49971] DEBUG apache.activemq.broker.TransportConnection - Connection Stopped: /127.0.0.1:49971 
11 Mar 2009 16:25:47,427 [ActiveMQ Transport: tcp:///127.0.0.1:50680] DEBUG activemq.broker.region.AbstractRegion - Removing consumer: ID:TMSNEC02.traficon.int-52586-1236783284912-2:4:1:1 
11 Mar 2009 16:25:47,430 [ActiveMQ Transport: tcp:///127.0.0.1:50680] DEBUG activemq.broker.region.AbstractRegion - Removing consumer: ID:TMSNEC02.traficon.int-52586-1236783284912-2:4:-1:1 
11 Mar 2009 16:25:47,431 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] DEBUG activemq.transport.tcp.TcpTransport - Stopping transport tcp://localhost/127.0.0.1:61616 
11 Mar 2009 16:25:47,431 [ActiveMQ Transport Stopper: /127.0.0.1:50680] DEBUG apache.activemq.broker.TransportConnection - Stopping connection: /127.0.0.1:50680 
11 Mar 2009 16:25:47,431 [ActiveMQ Transport Stopper: /127.0.0.1:50680] DEBUG activemq.transport.tcp.TcpTransport - Stopping transport tcp:///127.0.0.1:50680 
11 Mar 2009 16:25:47,435 [ActiveMQ Transport Stopper: /127.0.0.1:50680] DEBUG apache.activemq.broker.TransportConnection - Stopped connection: /127.0.0.1:50680 
11 Mar 2009 16:25:47,438 [ActiveMQ Transport Stopper: /127.0.0.1:50680] DEBUG apache.activemq.broker.TransportConnection - Connection Stopped: /127.0.0.1:50680 
11 Mar 2009 16:25:47,439 [ActiveMQ Transport: tcp:///127.0.0.1:50681] DEBUG activemq.broker.region.AbstractRegion - Removing consumer: ID:TMSNEC02.traficon.int-52586-1236783284912-2:5:1:1 
11 Mar 2009 16:25:47,439 [ActiveMQ Transport: tcp:///127.0.0.1:50681] DEBUG activemq.broker.region.AbstractRegion - Removing consumer: ID:TMSNEC02.traficon.int-52586-1236783284912-2:5:-1:1 
11 Mar 2009 16:25:47,440 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] DEBUG activemq.transport.tcp.TcpTransport - Stopping transport tcp://localhost/127.0.0.1:61616 
11 Mar 2009 16:25:47,440 [ActiveMQ Transport Stopper: /127.0.0.1:50681] DEBUG apache.activemq.broker.TransportConnection - Stopping connection: /127.0.0.1:50681 
11 Mar 2009 16:25:47,441 [ActiveMQ Transport Stopper: /127.0.0.1:50681] DEBUG activemq.transport.tcp.TcpTransport - Stopping transport tcp:///127.0.0.1:50681 
11 Mar 2009 16:25:47,441 [ActiveMQ Transport Stopper: /127.0.0.1:50681] DEBUG apache.activemq.broker.TransportConnection - Stopped connection: /127.0.0.1:50681 
11 Mar 2009 16:25:47,441 [ActiveMQ Transport Stopper: /127.0.0.1:50681] DEBUG apache.activemq.broker.TransportConnection - Connection Stopped: /127.0.0.1:50681 

* 블레이즈 DS는 로그인 *

[BlazeDS]03/11/2009 15:55:39.776 [DEBUG] [Endpoint.AMF] Serializing AMF/HTTP response 
Version: 3 
    (Message #0 targetURI=/4/onResult, responseURI=) 
    (Externalizable Object #0 'DSK') 
     (Externalizable Object #1 'flex.messaging.io.ArrayCollection') 
     (Array #2) 
1.236783339776E12 
(Byte Array #3, Length 16) 
(Byte Array #4, Length 16) 
(Byte Array #5, Length 16) 

[BlazeDS]03/11/2009 16:25:47.391 [INFO] [Service.Message.JMS] JMS consumer for JMS destination 'java:comp/env/eventMessagesFlexTopic' is being removed from the JMS adapter 
[BlazeDS]03/11/2009 16:25:47.392 [INFO] [Service.Message.JMS] JMS consumer for JMS destination 'java:comp/env/eventMessagesFlexTopic' is stopping. 
[BlazeDS]03/11/2009 16:25:47.417 [DEBUG] [Client.MessageClient] MessageClient with clientId '7A98D7BC-F0B3-922C-A968-BE0BFB7D9080' for destination 'eventMessageFeed' has been invalidated. 
[BlazeDS]03/11/2009 16:25:47.419 [INFO] [Service.Message.JMS] JMS consumer for JMS destination 'java:comp/env/detectorsFlexTopic' is being removed from the JMS adapter 
[BlazeDS]03/11/2009 16:25:47.423 [INFO] [Service.Message.JMS] JMS consumer for JMS destination 'java:comp/env/detectorsFlexTopic' is stopping. 
[BlazeDS]03/11/2009 16:25:47.435 [DEBUG] [Client.MessageClient] MessageClient with clientId '7A9BC826-2199-C772-0A1B-FE6FAE9F7402' for destination 'detectorsFeed' has been invalidated. 
[BlazeDS]03/11/2009 16:25:47.438 [INFO] [Service.Message.JMS] JMS consumer for JMS destination 'java:comp/env/scenariosFlexTopic' is being removed from the JMS adapter 
[BlazeDS]03/11/2009 16:25:47.438 [INFO] [Service.Message.JMS] JMS consumer for JMS destination 'java:comp/env/scenariosFlexTopic' is stopping. 
[BlazeDS]03/11/2009 16:25:47.440 [DEBUG] [Client.MessageClient] MessageClient with clientId '7A9BCE40-A0DA-18D6-9FA1-6D6AA2088256' for destination 'scenarioMessageFeed' has been invalidated. 
[BlazeDS]03/11/2009 16:25:47.441 [DEBUG] [Client.FlexClient] FlexClient with id '7A95FDE9-0091-B1CD-3660-D8E9CD6CD3E6' has been invalidated. 
[BlazeDS]03/11/2009 16:25:47.441 [DEBUG] [Endpoint.StreamingAMF] Endpoint with id 'my-streaming-amf' is streaming message: Flex Message (flex.messaging.messages.CommandMessage) 
operation = disconnect 
clientId = null 
correlationId = null 
destination = null 
messageId = 7ED1C45A-10A7-BFBB-E24E-94B9C03047EE 
timestamp = 1236785147441 
timeToLive = 0 
body = null 
[BlazeDS]03/11/2009 16:25:47.441 [DEBUG] [Endpoint.FlexSession] FlexSession with id '71A76CA22AC435285736F6DB0E38AC11' for an Http-based client connection has been invalidated. 
[BlazeDS]03/11/2009 16:25:47.444 [DEBUG] [Client.FlexClient] FlexClient with id '7A941468-80E5-8343-A2AE-A3AFFA135734' has been invalidated. 
[BlazeDS]03/11/2009 16:25:47.444 [DEBUG] [Endpoint.FlexSession] FlexSession with id '1238AA40EF8B016F3942C6D6BDBA29B9' for an Http-based client connection has been invalidated. 
[BlazeDS]03/11/2009 16:25:47.444 [DEBUG] [Endpoint.StreamingAMF] Streaming thread 'http-8080-1' for endpoint with id 'my-streaming-amf' is releasing connection and returning to the request handler pool. 
[BlazeDS]03/11/2009 16:25:47.444 [INFO] [Endpoint.FlexSession] Number of streaming clients for FlexSession with id '71A76CA22AC435285736F6DB0E38AC11' is 0. 
[BlazeDS]03/11/2009 16:25:47.444 [DEBUG] [Endpoint.StreamingAMF] Number of streaming clients for endpoint with id 'my-streaming-amf' is 0. 
[BlazeDS]03/11/2009 16:25:47.489 [DEBUG] [Endpoint.FlexSession] FlexSession created with id 'E5BCC7617F3937139CCAD377EEB85D45' for an Http-based client connection. 
[BlazeDS]03/11/2009 16:25:47.489 [INFO] [Endpoint.General] Channel endpoint my-streaming-amf received request. 

답변

3

우리는 30 초마다 클라이언트에서 서버로 연결 유지 메시지를 보내이를 해결했습니다. 이 세션은 Tomcat의 기본 세션 타임 아웃 이후에 시간이 초과 된 FlexSession이었습니다. keep-alive 메시지가 낮은 간격으로 보내지기 때문에 서버의 세션 시간 초과를 낮은 값으로 설정하여 서버의 메모리 소비를 향상시킵니다.

+0

감사합니다 ... 그것은 방금 내 자신의 FlexSession 만료 문제를 해결하는 데 도움이되었습니다! –

0

당신은 분리 이벤트에 응답하고 필요하면 다시 연결할 수 있습니다.