2013-05-11 2 views
0

사용자가 데이터베이스에서 만든 작업을 볼 수있는 웹 응용 프로그램이 있습니다.동일한 서버의 다른 응용 프로그램에서 메서드 호출

데이터베이스의 모든 항목을 호출하고 작업이 최신 상태인지 또는 만료되었는지 확인하는 두 번째 응용 프로그램을 작성하려고합니다. 내 두 번째 응용 프로그램이 내 첫 번째 응용 프로그램의 모든 세션에 강제로 데이터를 다시로드 할 수있는 솔루션을 찾고 있습니다.

실행중인 모든 세션에 영향을 줄 수있는 방법을 호출하는 방법이 있습니까?

또는 이와 비슷한?

이 이미지는 문제를 이해하는 데 도움이 될 수 있습니다 :

enter image description here

또한 웹 서비스 및 서블릿과 솔루션을 검토 한 결과 그러나 나는 내 문제를 도와 줄 수있는 뭔가를 찾을 수 없습니다. 또는 검색 할 때 올바른 키워드를 사용하지 않았습니다.

답변

0

느슨하게 응용 프로그램을 연결하는 JMS 솔루션을 사용할 수 있습니다. webApp1은 작업 검사를 트리거하는 대기열에 메시지 (CheckForExpiredTasks)를 보낼 수 있습니다. webApp2는 해당 메시지를 수신하고 수신되면 만료 된 작업을 찾는 작업을 수행합니다. 실행중인 세션의 만료를 원하는 시나리오가 발생하면 webApp2가 "ExpireAllSessions"메시지를 대기열로 보냅니다. 올바른 대기열에서 수신 대기중인 webApp1은이 메시지를 수신하고 실행중인 세션이 모두 만료됩니다.

JMS를 사용하면 두 응용 프로그램의 배포 여부가 중요하지 않으므로 좋을 것입니다. 그들이 데이터를 얻을 수있는 한. webApp2는 웹 애플리케이션 일 필요는 없습니다. EJB 또는 Spring을 사용하는 간단한 서비스 응용 프로그램.

희망이 있습니다.

+0

JMS 도움말에 많은 감사드립니다. 당신이 좋은 해결책을 말한 것처럼 ^^. – Shibas

관련 문제