Sun Java Enterprise System 2005Q4 기술 개요

4장 Java Enterprise System 솔루션 라이프 사이클 작업

이 장에서는 Java ES 솔루션 라이프 사이클의 각 단계와 관련된 개념과 용어를 설명합니다. 이 장에서는 배포 작업 특히 배포 설계 및 배포 구현 작업에 초점을 맞춥니다.

이 장의 내용은 다음과 같이 3단계로 나누어진 라이프 사이클로 구성됩니다.

솔루션 라이프 사이클 작업

1 장, Java Enterprise System 소개 에서 솔루션 라이프 사이클을 Java ES 소프트웨어를 사용한 비즈니스 솔루션 구현의 표준 접근 방법으로 소개하고 있습니다. 이 장에서는 라이프 사이클의 각 단계에 포함된 작업을 설명합니다. 쉽게 참조할 수 있도록 그림 4–1에서 라이프 사이클 다이어그램을 반복합니다.

그림 4–1 솔루션 라이프 사이클 작업

이 장의 후속 절에서 설명하는 여러 작업으로 이루어진 솔루션 라이프 사이클 단계를 설명하는 다이어그램.

배포 전

라이프 사이클의 배포 전 단계에서는 비즈니스 요구 사항 분석을 배포 시나리오로 변환합니다. 배포 시나리오는 배포 설계를 위한 사양으로 사용됩니다.

그림 4–1에 표시된 것처럼 배포 전 작업들은 세 단계로 구분됩니다.

성능, 가용성, 보안 및 기타 서비스 품질(QoS) 요구 사항들과 연관된 논리 구조는 다음 그림에 표시된 것처럼 배포 시나리오로 캡슐화됩니다. 라이프 사이클의 배포 전 단계에 대한 자세한 내용은 Sun Java Enterprise System 2005Q4 배포 계획 설명서를 참조하십시오.

그림 4–2 배포 시나리오 지정

비즈니스 요구 사항이 사용 사례 및 사용 분석을 통해 배포 시나리오로 변환되는 방법을 보여주는 다이어그램.

배포

라이프 사이클의 배포 단계에서는 배포 시나리오를 배포 설계로 변환한 다음 구현, 테스트 및 작업 환경으로 롤아웃합니다.

배포 프로세스에는 일반적으로 소프트웨어 솔루션을 지원하는 데 필요한 모든 계층과 모든 인프라 서비스 수준의 소프트웨어 구성 요소가 포함됩니다. 일반적으로 사용자 정의 개발 응용 프로그램 구성 요소(J2EE 구성 요소, 웹 서비스 또는 기타 서버) 및 해당 솔루션 지원에 필요한 Java ES 구성 요소를 모두 배포해야 합니다.

그림 4–1에 표시된 것처럼 배포 작업은 다음 두 단계로 구분됩니다.

배포 설계

배포 설계 단계에서는 높은 수준의 배포 구조 다음에 낮은 수준의 구현 사양이 이어지도록 만듭니다.

배포 구조

배포 구조는 배포 시나리오에 지정된 서비스 품질 요구 사항을 충족시키기 위해 응용 프로그램의 논리적 빌딩 블록(논리적 구조)을 물리적 컴퓨팅 환경으로 매핑하여 만듭니다.

다음 그림에 표시된 것처럼 배포 시나리오가 배포 구조로 변환됩니다.

그림 4–3 배포 시나리오를 배포 구조로 변환

배포 시나리오가 배포 구조로 변환되는 방법을 보여주는 다이어그램

성능, 가용성, 보안 및 기타 서비스 품질 요구 사항을 충족시키기 위해 물리적 환경(컴퓨터 개수 결정 및 해당 프로세서 전원 및 RAM 요구 사항 추정)의 크기를 지정하는 것이 이러한 구조적 설계의 한 측면입니다. 크기 지정이 완료되면, 물리적 환경의 여러 컴퓨터에 Java ES 구성 요소 및 응용 프로그램 구성 요소를 매핑합니다. 이 결과 만들어지는 배포 구조에서는 다른 컴퓨터의 기능, 시스템 인프라 서비스의 특성 및 총 소유 비용이나 총 가용성 비용에 대한 제한 사항을 고려해야 합니다.

배포 시나리오의 Java ES 구성 요소 수가 많을수록, 그리고 서비스 품질(QoS) 요구 사항이 많을수록 설계에서는 강력한 컴퓨터 및 높은 네트워크 대역폭이 더욱 더 필요합니다. 하드웨어가 제한되거나 지나치게 비싼 경우 고정 비용(하드웨어)과 가변 비용(인적 자원 요구 사항) 간 또는 다른 서비스 품질(QoS) 요구 사항 간의 균형 조정이 필요할 수 있습니다. 또한 설계를 보다 정교하게 해야 할 수도 있습니다.

배포 구조 설계는 종종 반복을 통해 향상시킬 수 있습니다. 그러나 배포 설계의 출발점으로 Java Enterprise System은 참조 배포 구조 세트를 개발합니다.

참조 구조는 특정 배포 시나리오 즉 특정 서비스 품질(QoS) 요구 사항을 갖는 논리적 구조를 기반으로 합니다. 참조 구조에서 소프트웨어 솔루션은 지정된 서비스 품질 요구 사항을 충족시키는 방식으로 특정한 물리적 환경에 배포됩니다. 지정된 로드에서 수행되는 성능 테스트는 배포 시나리오를 개발할 때 사용했던 것과 동일한 사용 사례 집합을 기반으로 합니다. 참조 구조 설명서는 비공개를 조건으로 Java ES 고객들이 사용할 수 있습니다.

참조 배포 구조 또는 참조 구조 조합을 기반으로 사용자의 배포 시나리오 요구 사항을 거의 충족시키는 첫 번째 배포 구조를 설계할 수 있습니다. 사용자의 배포 시나리오와 참조 구조가 기반으로 하는 배포 시나리오 간의 차이를 고려하여 참조 구조를 조정하거나 참조 구조를 참조점으로 사용할 수 있습니다. 이 방법으로 크기 지정, 성능, 보안, 가용성, 용량 및 서비스 가능성 요구에 대한 영향을 평가할 수 있습니다.

구현 사양

구현 사양은 배포 구조 구현에 필요한 세부 정보를 제공합니다. 일반적으로 사양에 포함되는 정보는 다음과 같습니다.

구현 계획

구현 계획에서는 배포 구현 단계에서 여러 가지 작업 수행을 계획하는 방법을 설명합니다. 일반적으로 계획에서는 다음 작업을 설명합니다.

배포 구현

배포 설계 구현은 이전 절에 나열되고 그림 4–1에 표시된 작업들로 구성됩니다. 이러한 작업의 순서가 엄격하게 정해져 있는 것은 아닙니다. 배포 프로세스는 본질적으로 반복되는 프로세스입니다. 다음 하위 절에서는 각각의 주 요배포 구현 작업에 대해 일반적으로 수행되는 순서에 따라 개별적으로 설명합니다. 이런 작업에 대한 자세한 설명을 보려면 Sun Java Enterprise System 2005Q4 설명서 로드맵을 참조하십시오.

하드웨어 설정

구현 사양에는 컴퓨터, 네트워크 설계, 네트워크 하드웨어(케이블 연결, 스위치, 라우터, 로드 밸런서 포함), 저장 장치 등과 같은 물리적 환경의 모든 세부 정보가 포함됩니다. 이 모든 하드웨어를 해당 Java ES 솔루션을 지원하는 플랫폼으로 설정해야 합니다.

소프트웨어 설치, 업그레이드 및 마이그레이션

배포 구조는 구현 사양에서 제공하는 추가 세부 정보와 함께 물리적 환경의 각 컴퓨터에 상주할 응용 프로그램 구성 요소와 Java ES 구성 요소를 알려줍니다. Java ES 통합 설치 프로그램을 사용하여 배포 구조의 각 컴퓨터에 적합한 Java ES 구성 요소를 설치합니다( Java Enterprise System 통합 설치 프로그램 참조).

설치 계획에서는 설치 프로그램 세션의 순서 및 범위를 설명합니다. 그러나 설치 작업을 수행하기 위한 접근 방법은 Java Enterprise System를 새로 설치하는지, 이전에 설치된 Java ES 구성 요소를 업그레이드하는지 또는 타사 구성 요소를 Java Enterprise System으로 교체하는지 여부에 따라 다릅니다. 이러한 Java ES 도입 시나리오 가운데 마지막 2가지 도입 시나리오에서는 데이터 또는 응용 프로그램 코드를 마이그레이션하여 호환성을 확보하는 것이 필요합니다.

시스템 구성 및 사용자 정의

여러 가지 시스템 구성 요소를 함께 통합 시스템으로 실행하려면 몇 가지 시스템 구성 작업을 완료해야 합니다. 이 가운데 첫 번째 작업은 각각의 시스템 구성 요소를 시작하는데 필요한 초기 구성입니다. 두 번째는 모든 Java ES 구성 요소가 상호 작용의 대상이 되는 구성 요소와 통신하도록 구성해야 합니다.

또한 각 구성 요소의 가용성 솔루션에 따라 고가용성도 구성해야 합니다. 사용자가 다양한 서비스에 액세스할 수 있도록 사용자를 지정해야 하며 인증 및 권한 부여 정책 및 제어를 설정해야 합니다( 통합 아이디 및 보안 서비스 참조).

대부분의 경우 원하는 기능의 정확한 설정을 위해 구성 작업에는 Java ES 구성 요소의 사용자 정의가 어느 정도 포함됩니다. 예를 들어, 일반적으로 포털 채널을 제공하려면 Portal Server를 사용자 정의하고, 권한 부여 작업을 수행하려면 Access Manager를 사용자 정의하며, 바이러스 검사 및 스팸 차단 기능을 사용하려면 Messaging Server를 사용자 정의합니다.

개발 및 통합

배포 시나리오에 지정된 논리적 구조에서 일반적으로 솔루션을 구현하는 데 필요한 사용자 정의 개발 작업의 범위를 결정합니다.

개발이 매우 포괄적일 수도 있는 일부 배포의 경우, Application Server 또는 Web Server 환경에서 실행되는 J2EE 구성 요소를 사용하여 새로운 비즈니스 및 프리젠테이션 서비스를 처음부터 개발해야 합니다. 이 경우에 전체 개발 작업을 시작하기 전에 솔루션 프로토타입을 제작하여 POC(proof-of-concept) 테스트를 수행하는 것이 좋습니다.

포괄적인 개발이 필요한 솔루션의 경우 Sun Java Studio에서는 분산 구성 요소 또는 비즈니스 서비스를 프로그래밍하기 위한 도구를 제공합니다. Sun Java Studio는 Java ES 인프라가 지원하는 응용 프로그램의 프로그래밍 및 테스트를 단순화합니다.

경우에 따라 Java ES 구성 요소들이 레거시 응용 프로그램이나 타사 서비스와 통합될 수도 있습니다. 이러한 통합에는 데이터 계층의 기존 디렉토리나 데이터 서비스 혹은 비즈니스 서비스 계층의 기존 구성 요소들이 포함될 수도 있습니다. Java ES 구성 요소를 이러한 시스템과 통합하려면 데이터 또는 응용 프로그램 코드를 마이그레이션해야할 수도 있습니다.

J2EE 플랫폼에서는 J2EE 자원 어댑터를 개발하여 기존 응용 프로그램을 Application Server 환경에 연결할 수 있는 커넥터 프레임워크를 제공하며, Message Queue에서는 다양한 응용 프로그램을 통합하기 위한 강력한 비동기 메시징 기능을 제공합니다.

프로토타입 및 파일럿 테스트

필요한 개발 작업이나 사용자 정의 양에 따라 배포 구조 검증이 필요한 시점에 사용 사례와 비교하여 솔루션을 테스트하고 서비스 품질 요구 사항을 충족시킬 수 있는지 확인해야 합니다.

사용자 정의 개발 서비스가 상대적으로 적은 경우(대부분의 최신 배포), 해당 솔루션에서는 Java ES 구성 요소를 사용자 정의하고 해당 시스템의 파일럿 테스트가 필요할 수도 있습니다.

그러나 상당한 양의 새로운 응용 프로그램 논리를 개발하고 사용자 정의 서비스를 만든 경우에는 프로토타입 테스트 및 통합 테스트 등을 포함하여 이 테스트가 훨씬 더 포괄적일 수 있습니다.

이 테스트에서 배포 구조의 결점이 발견될 경우 구조를 수정하고 테스트를 다시 수행해야 합니다. 이러한 반복 프로세스를 통해 작업 환경에 배포할 준비가 된 배포 구조 및 구현을 만들 수 있습니다.

작업 롤아웃

작업 롤아웃에서는 배포 구현을 작업 환경으로 작성합니다. 이 단계에는 작업 환경에서 분산 응용 프로그램 및 인프라 서비스의 설치, 구성 및 시작 뿐만 아니라 작업 시스템 최종 사용자 지정, 단일 사인 온 및 액세스 정책 설정 등이 포함됩니다. 일반적으로 제한된 배포에서 시작하여 조직 전체로 구현을 확장합니다. 이 프로세스에서는 시험 실행을 수행하면서 점차적으로 로드를 늘려 서비스 품질(QoS) 요구 사항이 충족되는 지 확인합니다.

배포 후

라이프 사이클의 배포 후 단계에서는 작업 환경에서 배포된 솔루션을 실행합니다. 다음 작업은 라이프 사이클의 작업 수행 단계에 포함됩니다.

이 장의 주요 용어

이 절에서는 이 장에서 사용된 주요 기술 용어를 설명하며, 용어 간의 관계와 Java Enterprise System 컨텍스트 내의 사용법에 중점을 두면서 설명합니다.

배포

배포 시나리오가 배포 설계로 변환되고, 구현되고, 프로토타입으로 만들어지며 작업 환경으로 롤아웃되는 Java Enterprise System 솔루션 라이프 사이클 프로세스의 한 단계입니다. 이 프로세스의 최종 제품을 배포(또는 배포된 솔루션)라고도 합니다.

배포 시나리오

솔루션이 비즈니스 요구 사항을 충족시켜야 하는 Java Enterprise System 솔루션용 논리적 구조 및 서비스 품질(QoS) 요구 사항입니다. 서비스 품질(QoS) 요구 사항에는 성능, 가용성, 보안, 서비스 가능성, 확장성/}잠재 용량 요구 사항이 포함됩니다. 배포 시나리오는 배포 설계의 출발점입니다.

개발

배포 구조의 사용자 정의 구성 요소를 프로그래밍하고 테스트하는 Java Enterprise System 솔루션 배포 프로세스의 작업입니다.

배포 전

비즈니스 요구 사항을 배포 시나리오(솔루션이 충족시켜야 하는 서비스 품질(QoS) 요구 사항 집합 및 논리적 구조)로 변환하는 Java Enterprise System 솔루션 라이프 사이클 프로세스의 한 단계입니다.

배포 후

분산 응용 프로그램을 시작하고, 모니터하고, 성능을 최적화하기 위해 조정하며, 새 기능을 포함하도록 동적으로 업그레이드하는 Java Enterprise System 솔루션 라이프 사이클 프로세스의 한 단계입니다.

참조 배포 구조

설계, 구현 및 성능 테스트가 수행된 배포 구조입니다. 참조 배포 구조는 사용자 정의 솔루션용 배포 구조 설계의 출발점으로 사용됩니다.

사용 사례

분산된 엔터프라이즈 응용 프로그램에서 수행하며 응용 프로그램 성능의 설계, 테스트 및 측정에 사용되는 특정 최종 사용자 작업 또는 작업 세트입니다.