2011-09-07 4 views
0

과 연결된 순수 자바 분산 시스템에서 우리는 JMS (ActiveMQ)와 만 연결된 분산 Java 시스템 (확장 가능해야 함 ;-))을 빌드하고 있습니다. Spring Integration을 공부했고, 우리가 그것을 사용한다면 어떤 이점이 있는지 확신하지 못합니다. 우리는 JavaService에서 다른 JavaService로 메시지를 보내는 등 Spring Core Project의 JMS-Templeate를 사용하는 것이 더 바람직하다고 생각합니다.스프링 통합을 사용하거나 사용하지 않습니까? JMS (ActiveMq)

답변

2

당신이 구입하는 여분의 추상화가 비용의 가치가 있다고 생각한다면 스프링 통합 (또는 다른 프레임 워크)을 사용하십시오. 응용 프로그램을 빌드 할 때 필요한 견고한 기초를 제공해야합니다. Spring에 의해 쓰여진 소프트웨어는 당신이나 내가 처음부터 쓴 것보다 낫다.

모든 프레임 워크에는 비용이 있습니다. 추가 종속성이 있습니다. 때때로 더 큰 추상화는 너무 많이 가려 질 수 있습니다.

스프링 통합의 유무에 관계없이 프로토 타입을 작성하여 비용이 들지 있는지 확인해야합니다.

이미 Spring 사용자가 아닌 경우 큰 엔터프라이즈 프로젝트로 이동하기 전에 Spring을 배우는 것이 좋습니다.

+0

당신은 내가하는 것보다 훨씬 외교적입니다. 프레임 워크를 사용하는 것보다 훨씬 많은 증거를 보았습니다. 어쩌면 내가 노인이되면 내 마음이 바뀔거야. –

+0

나는 당신이 본 증거가 무엇인지 모르지만, 나는 봄의 큰 팬이다. 나는 그것이 멋지다라고 생각한다. – duffymo

0

정말 강력한 시스템 통합 티어가 필요하다면 스프링 통합을 사용해야합니다. 이것은 시스템이 커질 때 도움이되는 추상 수준입니다. SI를 사용하면 두 시스템간에 새로운 통합 처리 규칙을 추가하는 데 몇 초가 걸립니다.

다른 한편으로는 SpringIntegration + ActiveMQ 프로젝트에서 일했으며,이 브로커가 SI와 안정적인 방식으로 작동하도록 구성하는 것은 거의 불가능했습니다. 따라서 SI를 사용하기로 결정했다면 HornetQ를 JMS 브로커로 사용하는 것이 좋을 것입니다.

+0

SI + ActiveMQ의 문제점은 무엇입니까? StackOverflow에 게시 했습니까? –

+0

나는 대략 5messages/sec를 보내는 생산자와 가진 프로젝트에 일했다. 기본 activemq 구성 (다운로드 및 시작)을 사용하면 ~ 15 분 후에 브로커가 중단됩니다. 물론, 아마도 더 잘 작동하도록 구성 할 수는 있지만 내 생각에 문서화에는 심각한 결함이 있습니다. 이전에 activemq를 사용 해본 적이없는 사람에게는 작동시키기가 거의 불가능했습니다. HornetQ 상황이 다르기 때문에 - 다운로드, 시작하고 작동합니다. ;) –

2

SpringIntegration은 엔터프라이즈 통합 패 턴을 사용할 준비를합니다.

스플리터, 라우터, 필터, 게이트웨이, 애그리 게이터, 트랜스포머 등이 필요합니까? 대답이 '아니오'이면 일반 Java + ActiveMQ로 이동하십시오.

관련 문제