2012-04-20 9 views
8

현재 프로덕션 환경에서 JBoss 5.1이 실행되고 있으며, JBoss 7.1로 마이그레이션 할 가치가 있는지 여부를 논의 해 왔습니다. 단순한 서버 업그레이드 인 경우에는 문제가되지 않습니다. 그러나 유감스럽게도 구성을 변경해야하며 약간의 노력이 필요합니다. 또한 서버가 클러스터에서 실행되며 JBoss 7.1에 더 많은 클러스터 지원이 있다는 것을 알았습니다.JBoss 5.1에서 JBoss 7.1로 업그레이드 할 가치가 있습니까?

그래서 가치가 있느냐 없습니까?

감사합니다.

답변

12

우리는 현재 같은 상황에 있습니다.

은 긍정적 인 측면에 사물의 많은 것 같다 :

  • 우리는 한 지점에서 떨어져 5.1 마이그레이션해야합니다. 우리는 완전한 프로필이 필요하고 많은 OSS 대안 (GlassFish 및 아마도 Geronimo)이 없습니다. PCI-DSS가 EoL'd 소프트웨어를 사용하지 못하게 한 이후로이 지점만으로도 마이그레이션이 이루어질 것입니다.
  • 구성이 훨씬 쉽고 간단합니다. 더 이상 XML 파일의 측면을 구성하는 20 개의 XML 파일이 아니라 하나의 중앙 위치에 분산되어 있습니다. 모든 포트는 한 곳에서 구성되므로 더 이상 server.xml을 변환하는 XSL 파일이 없습니다. 클래스의 구현 세부 사항을 모른 채 구성 파일을 이해할 수 있습니다. JBoss를 설정 한 적이 없다면이 점을 고맙게 생각해보십시오.
  • EJB 원격 처리는 소켓 당 더 이상 스레드를 사용하지 않습니다.
  • 필요하지 않은 하위 시스템을 제거하는 것이 훨씬 쉽습니다.
  • 클래스 코딩 모델이 정상적으로 보이고 jboss-deployment-structure.xml을 통해 많은 제어 권한을 얻게됩니다.
  • EJB 클라이언트 라이브러리가 훨씬 더 정리 된 것처럼 보입니다. 20에서 10 JAR까지 내려갔습니다. 그 중 절반은 OSGi 번들입니다 (클라이언트는 Eclipse RCP 응용 프로그램입니다).
  • 우리는 Java EE 6에 대해 우리 SLSB 중 일부를 @Singleton beans로 바꾸는 것에 너무 흥분하지는 않지만 일부 EJB는 SAR을 Tim EJB로 대체하는 것이 분명 흥미로울 것입니다.
  • 빠른 시작과 적은 메모리 사용 (적어도 빈 서버 또는 소규모 배포의 경우). 아직 대규모 배포를 테스트하지 않았습니다. 우리는 Infinispan 성능에 대해 조금 걱정

    • :
    • 배포 폴더는 우리가 아직 조사 할 필요가 기본

    것들에 의해 비어 있습니다. 현재 JBoss Cache의 TreeCache API를 사용하고 있습니다. 동일한 API를 제공하는 Infinispan 용 어댑터가 있지만 일부 이론적 테스트는 더 나쁜 쓰기 성능을 보여줍니다. 이것은 Infinispan의 트리 API에만 적용됩니다.

  • ExternalContext는 더 이상 .bindings는
  • JMX 콘솔가 없어 파일에서 우리는 현재 당신이 적응해야 할이 기반으로 무엇이든이있는 경우, 편집이하는 JNDI 트리를 채우는 데 사용, 지원되지 않습니다 실제로 JMX-Console의 포트를 사용할 수 있습니다. AS7-2227

우리는 클러스터에서 실행되지 않으므로 이에 대해 언급 할 수 없습니다.

아마 우리가 어떤 식 으로든 보스와 다른 상호 작용하는 모든 쉘 스크립트 (설치, 통합 테스트, ...)를 마이그레이션됩니다에 대한 가장 큰 노력이 될 것입니다 무엇.

업데이트는

우리는 이주과는 확실히 가치가 있었다. 위의 사항에 대한 일부 업데이트는 다음과 같습니다.

  • 대규모 배치조차도 최소한의 조정만으로도 빠릅니다.
  • 중앙 집중식 로깅 (Slf4j, JUL, JCL, Log4j, ...)이 정말 좋습니다.
  • 7.1에는 버그가 너무 많아서 사용할 수 없으므로 7.2/EAP 6.1이며 7.3/EAP 6.2로 이동할 계획입니다. 여전히 버그는 상당 부분 있지만 우리는 해결할 수 있습니다. 특히 최소한의 권한으로 스크립트를 실행할 수있게 해주는 관리 인터페이스에 대한 역할 기반 액세스 제어가 기대됩니다.
  • 프로덕션 용도로 큰 물음표를 표시하는 지원되는 버전의 GlassFish 4는 없습니다.
  • EJB 원격 보안의 유연성이 훨씬 낮습니다. 이전에는 인증 된 EJB 호출과 인증되지 않은 EJB 호출을 혼합하기 때문에 몇 가지 해결 방법을 사용해야했습니다. 더 이상 가능하지 않습니다.
  • JBoss의 JEE 6 BOM POM은 혼합 백입니다. 이론적으로 JEE 의존성의 모든 버전을 관리하기 때문에 좋다. 실제로 JEE 7로 마이그레이션 할 때 성가신 일이 될 artifactId의 버전에는 좌표가 끔찍합니다. JEE API 구현을 테스트에 포함하려는 경우 좌표가별로 도움이되지 않습니다.
  • Infinisan 트리 API 성능은 문제가되지 않았습니다.
  • JMX 콘솔 스크립트를 DMR 스크립트로 대체했습니다. SSL을 통해 EJB 원격을 사용하는 경우

업데이트 2

  • deadlock 있습니다. 이 교착 상태는 EAP 6.2에도 있습니다. 이제 WildFly에서 AS 7로 백 포켓 된 기능 패치 세트가있는 시점에 있습니다.
1

JBoss 5.1.0에서 모든 것이 작동합니까? 당신의 공연은 당신이 살 수있는 것입니까?

나는 보스 7.1.1에 보스 5.1.0GA에서 업그레이드 중간에 현재 해요 그것은 전혀 쉽지 않았다. 기본적으로 새 응용 프로그램 서버로 업그레이드 중입니다. 내가 추측하는이 노력을 위해 많은 예산을 책정해야합니다.

는 5.1.0가 (적어도 시간을 시작)에 보스 7.1.1이 매우 빠르게 비교하고 있다고 말했다 가졌어요. 나는 앞으로 6 개월 내에 (또는 그렇게) 대부분의 "어려운"마이그레이션 및 전환 문제가 jboss 포럼이나 버그 수정을 통해 구체화 될 것이라고 생각합니다. 이 시점에서 귀하와 귀하의 팀은 마이그레이션을 원한다면 재평가 할 수 있습니다.

행운을 빈다.

1

SSL을 사용하는 경우 업그레이드에 대한 한 가지 이점은 JBoss 7.1.1이 TLS 1.1 & 1.2를 지원하는 jdk 1.7에서 실행된다는 것입니다. 반면 JDK 1.6은 TLS 1.0까지만 지원합니다. JBoss 5는 Java 1.7에서 실행되지 않으므로 BEAST 공격에 취약합니다.

1

나는 조금 기다릴 것입니다.

AS 5는 EE5 서버이고 AS 7.1은 EE6 서버입니다 (EE6 사양은 2009 년에 나왔습니다). 따라서 새로운 런타임 환경을 위해 많은 노력을 기울이지 만, 당신에게 멋진 아키텍처를 제공하지는 못합니다.

WildFly 8.0.0.CR1은 이미 출시되었으며 EE7 서버는 WebSockets 및 JAX-RS 2.0 (http://www.slideshare.net/dandreadis/2013-11devoxxwild-flybof)과 같은 새로운 흥미로운 개발 가능성을 제공합니다. 단일 인스턴스 패칭과 같은 새로운 관리 기능 JBossWeb/Tomcat 대신 언더 토우 (Undertow)와 같은 주요 새로운 것들이 소개되기 때문에 AS7에서 WildFly8까지는 매우 쉽게 마이그레이션 할 수 있을지 확신 할 수 없습니다.

가야한다면 가야합니다. 7. U가 죽은 7.x 경로를 감아 버린다면, 훨씬 더 개선 된 7.2.0.Final 태그를 손에 넣는 것을 잊지 마십시오. .1). 그러나 현재 Beta/CR 릴리스를 사용하여 개발/마이그레이션을 시작하고 안정적인 WildFly 8.x.x 프로덕션 환경을 유지하기 위해 몇 달을 기다릴 수 있다고 생각한다면 다음 주요 업데이트를하기 전에 더 오래 앉아있을 수 있습니다.

br, jens

관련 문제