슬라이드 1 - IBM - United States
Download
Report
Transcript 슬라이드 1 - IBM - United States
Websphere Message Broker
고도화 & SOA
2009. 10.15.
최 정욱
GTS/MTS, IBM Korea
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
Agenda
Websphere Message Broker 고도화 & SOA
2
제1장
Overview
제2장
New Features
제3장
Performance
제4장
ONE of ESB Solutions
제5장
SOA
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 1. Overview
Islands of Automation
DEC
시스템 통합 무엇이 가로
막는가?
ICL
혼재된 시스템 환경
DEC
VAX
IBM
HP
SUN
복잡한 개발 환경
유연한 디자인 선택의 어려움
IBM
TCP/IP
DEC
LU6.2
OS/2
LAN
데이터 정합성 유지의 어려움
보안 문제
EDI
VAX
DECNET
RISC
SYSTEM
6000
33
RISC
SYSTEM
6000
NOVELL
Websphere MQ & Websphere MB
기반의 EAI Solution 제안
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 1. Overview
기능
IBM의 Broker 솔루션인 WebSphere Message Broker는 사전 정의된 메시지 플로우 및
메시지 세트를 이용해 다양한 형태의 라우팅 및 메시지 형태 변환을 제공합니다
•
•
•
송수신 시스템 사이의 데이터 형태 변환, 라우팅, 데이터 확장을 담당합니다
1 : 1, 1 : n, n : n 형태의 연계를 지원하며, 요건에 따라 전송 데이터의 Pub/Sub 기능을 제공합니다
사전 정의된 노드를 이용해 WebSphere MQ, JMS, HTTP 등을 통한 메시지 전달 기능을 제공합니다
WebSphere Message Broker
Q B1
QM B
MQ In
Compute
Route
To Label
XML
Publication
MQ Out
Subscriber List
Control Q
Comma
delimited
Q A1
QM A
App A
4
Q B1
QM B
App B
Q B1
QM B
App C
Q C1
QM C
App D
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 1. Overview
전체 아키텍쳐
•
IBM WebSphere Message Broker의 아키텍쳐는 개발과 운영을 최대한 격리시
키는 동시에 성능과 안정성 확보를 위한 확장성을 고려한 구조를 가집니다.
Broker 도메인이라는 가상의 공간 내에 다수의 시스템에
Broker가 구성되며 그 내부에는 역시 다수의 실행 그룹이
물리적인 프로세스로 수행됩니다.
Message Flow의 개발과 각 Broker 구성
요소에 대한 관리는 Eclipse 기반의 IDE
Toolkit을 통해 각각의
워크스테이션에서 수행됩니다.
5
구성 관리 인터페이스
Configuration Manager
개발 저장소
(형상 관리)
Broker 도메인
실행 그룹 내부에 개개의
Message Flow가 설치되어
동작합니다.
Message Broker 3
Message Broker 2
Message Broker 1
실행그룹
1
실행그룹
실행그룹11
Message Flow
운영 저장소
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 1. Overview
IBM EAI Solution
•
IBM WebSphere Message Broker는 1998년부터 국내외의 다양한 애플리케이션 통합 영역에 도입,
이에 적용되어 온 검증된 EAI 솔루션입니다.
Legacy
WebSphere Message Broker
포털
메시지(전문) 변환
DW
프로토콜 브릿징
J2EE
Rule/Content 기반
라우팅
CRM
메시지 기반 연산
TP
트랜잭션 처리
ERP
6
외부
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 1. Overview
Any To Any 전문 변환
•
IBM WebSphere Message Broker는 강력한 전문 변환 기능을 제공하여 기업 내에 혼재
되어 있는 전문을 기존 애플리케이션의 변경을 최소화하며, EAI Hub에서 일관된 방법으
로 변환하도록 합니다.
고정길이
데이터
바이너리
데이터
WebSphere Message Broker
전문 Import
코드페이지
기능
변환
재조립
연산
Parsing
숫자 인코딩 변환
XML
데이터
SOAP
메시지
메시지(전문) 변환
Delimited
데이터
Tagged
데이터
7
전문 GUI 외부 DB XSLT
Mapping
참조
활용
Java
활용
EDI
SWIFT
C 활용
JMS
Stream
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 1. Overview
프로토콜 브릿징(전환)
•
IBM WebSphere Message Broker는 다양한 데이터 전송 프로토콜을 지원하며 Hub에서
프로토콜 간의 변환을 돕습니다. 이를 통해 상이한 데이터 송수신 방식을 사용하는 기존
애플리케이션들의 변경을 최소화하는 동시에 통합을 수행하는 기반을 확보합니다.
IBM
WMQ
WebSphere Message Broker
File In/Out 노드
TCP
Socket
TCP 관련
TIBCO
EMS
Generic
JMS
HTTP
HTTPS
MQ 관련
노드
노드 Email Receive/Send
노드
프로토콜 브릿징
SOAP 관련 노드
JMS 관련
노드
HTTP(S) 관련
노드
File
EMail
SOAP/HTTP
SOAP/JMS
SCADA In/Out
노드
TIBCO In/Out
노드
SCADA
Wireless
*노드: WebSphere Message Broker 내의 로직을 구현할 때 제공되는 기능 단위
8
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 1. Overview
Rule/Content 기반 라우팅
•
IBM WebSphere Message Broker는 전문 메시지를 동적/정적으로 하나 또는 다수의 목적지로 분기하
는 Rule/Content 기반의 라우팅 기능을 제공합니다. 이를 통해 기업 내 애플리케이션 간 통합의 경로
나 로직의 변화에 적절하게 대응할 수 있으며 기존 애플리케이션의 변경 또한 최소화합니다.
WebSphere Message Broker
Filtering
ESQL 분기
노드
전문 내용으로 분기
Email Receive/Send
노드
Rule/Content 기반 라우팅
Routing Rule
Xpath 분기 제공Route 노드
Java 분기
외부 Database 참조
분기
*노드: WebSphere Message Broker 내의 로직을 구현할 때 제공되는 기능 단위
9
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
연산 & 트랜잭션 처리
•
IBM WebSphere Message Broker는 전문 메시지, 외부의 데이터베이스, 변수 등을 활용하여 다양한
연산을 수행하는 기능을 제공합니다. 이를 통해 애플리케이션 간 전문 교환에 필요한 변경이나 로직을
구사하는 동시에 지원되는 XA의 Resource Manager와의 트랜잭션 또한 수행합니다.*
WebSphere Message Broker
Global Transaction
Mapping 노드
설정
2PC on Xopen XA
Java Compute 노드
메시지 기반 연산
트랜잭션 처리
Compute 노드
Route 노드
ODBC/JDBC XSLT
Database 관련
노드
*노드: WebSphere Message Broker 내의 로직을 구현할 때 제공되는 기능 단위
*제품에 의해 지원되는 XA Resource Manager에 해당되지 않는 경우는 XA의 2PC를 수행하지 못합니다.
10
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 1. Overview
Message Flow = 프로그램 로직
•
Message Broker를 통해 수행되는 Message Flow는 메시지(전문)을 받아서 어떠한 작업을 어떠한 순
서와 로직으로 수행할지를 담는 직관적인 플로우 차트 형태의 디자인입니다. 이를 통해, 개발 언어를
이용해서 프로그램을 개발하는 대신 좀 더 용이하고 표준화된 방식으로 Broker의 로직을 구현할 수 있
습니다.
예외 상황 발생
시 이에 대한
처리를 위한
로직
입력
예외처리
Queue를 통해
입력 전문을
수신하여
플로우 로직
시작
11
변환/가공
분기
전문의 내용
또는 정해진
규칙을 토대로
전문의
목적지나 처리
로직을 분기
전문의 형태를
다른 형태로
변환/ 연산
수행/DB와의
상호작용/프로
토콜 변환 등을
수행
출력
제어
전문 처리의
순서를
제어하기 위한
추가로직
Queue나 다른
매체로 전문을
보내는 출력
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 1. Overview
Adapter & Connectivity
•
IBM WebSphere Message Broker는 다양한 오퍼링의 Adapter를 제공하며, 필요한 경우
Connectivity 프로토콜을 따르는 API를 통해 Adapter를 개발, 배치할 수 있습니다.
테크놀로지
패키지
애플리케이션
Adapter for e-mail
COM
WebSphere MQ
Healthcare Data Protocols
CORBA
WebSphere MQ Integrator JMS
iSeries
Exchange
Data Handler for XML
JText
JCA
FIX Protocol
Data Handler for EDI
Lotus Domino
HTTP
SWIFT
ACORD XML
SWIFT
Web Services
XML
Enterprise JavaBean
XML
i2
mySAP.com
Telcordia Applications
i2 Active Data Warehouse
NightFire Applications
WebSphere Commerce
Clarify CRM
IndusConnect Framework
Oracle Applications Centricity Gateway
eMatrix
Siebel eBusiness Applications Portal Infranet
ESRI Spatial Databases
MetaSolv Applications
JD Edwards OneWorld
QAD MFG/PRO
JDBC
Ariba Buyer
Spirent
Applications
SAP Exchange Infrastructure Spirent Applications Manugistics Demand and Maximo MEA
Fulfillment Management
PeopleSoft
메인 프레임
지원 언어 및
API
12
I2
ADABAS
IMS Database Manager
CICS
Adapter for VSAM Natural
IMS Transaction Manager
DB2 Databases
IDMS Database
C/C++/C#
.NET(VB, ASP)
AMI/CMI/MQI
Java
JMS/JMS Realtime CMI
COBOL/PL1/RPG/REXX
XMS
MQI
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 1. Overview
지원되는 통신 패턴
•
IBM WebSphere Message Broker의 기능과 프로토콜 지원을 활용하여 다음과
같은 통신 패턴을 구현할 수 있습니다.
Asynchronous
Synchronous
1:1
1:1
Publish & Subscribe
Topic 기반의 Pub/Sub
b
1:N
Collection
UDP 기반의 Subnet Multicasting
N:1
13
Aggregate
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 1. Overview
성능과 가용성 지원
•
IBM WebSphere Message Broker는 소프트웨어적인 Clustering 기법과 하드웨
어 기반의 HA를 병행 적용하여 가용성과 부하 분산을 달성합니다.
Message Broker on
WMQ Cluster + HA
Node 2
Node 1
최신의 디스크와 OS에서는 IP Takeover와
Concurrent File System 영역에서의 기술 발전으로
인해 HA에 의한 Node 간 Failover/Takeover 시간이
극적으로 줄었습니다. 평시에는 소프트웨어적인
Clustering으로 부하 분산과 소프트웨어적인 장애에
대비하고 하드웨어 장애와 같은 물리적 장애에
대해서는 HA와 같은 별도 솔루션을 병행하여 높은
가용성을 확보합니다.
Multi-instance
평시 Node 1과 Node2 모두와 메시지 전문을
송수신하다 한 Node의 장애나 문제 발생 시 나머지
Node와 통신을 하고, 문제 Node가 정상화되면 다시
이전과 같이 양쪽으로 통신합니다. 이때 각 Node의
성능에 따라 부하를 차등(Weighted)해서 부여하거나,
평시 백업/액티브(Prioritized)로 구성하는 등의 다양한
부하분산 옵션을 부여할 수 있습니다.
Spoke 시스템
14
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 1. Overview
개발 및 관리 인터페이스
•
IBM WebSphere Message Broker는 개방형 표준인 Eclipse 기반의 통합 개발 환경을 제
공합니다. 이를 통해 EAI 솔루션과 관련된 전반적인 리소스를 개발, 관리할 수 있으며, 필
요한 경우 Plugin을 개발하여 추가적인 기능을 탑재할 수 있는 유연성을 제공합니다.
Perspective 전환
15
탐색창
영역
편집창 영역
개요창
영역
등록정보창 영역
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 1. Overview
Pub/Sub 지원
WebSphere Message Broker는 내장되어 있는 Publication 노드를 이용해 Publish/Subscribe 기능을
지원합니다
•
•
WebSphere Message Broker에는 Topic 기반으로 동적 연동된 Pub/Sub 네트워크를 구현할 수 있
는 Pub/Sub 엔진이 내장
– 관련 API 및 옵션
– Subscription 관리 인터페이스
– Topic에 대한 ACL 관리 인터페이스
JMS 기반의 Publish/Subscribe를 지원
App S1
App
P1
Register
Q S1
QM A2
QM B1
Control Q
QM A1
data
Subscriber List
Q
1
data
MQIn
Publication
Message Flow
QM A3
Q S3
data
WebSphere Message Broker
App
S3
16
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 1. Overview
웹서비스 지원
WebSphere Message Broker는 웹서비스를 위한 SOAP/HTTP(S)를 제공하고 있으며, 이를 통해 외부의
웹서비스로 구현된 애플리케이션과 내부 애플리케이션 사이의 연계를 담당합니다
•
•
•
•
•
•
웹서비스와의 연동에서 Service Requestor, Service Provider로서의 역할을 수행할 수 있도록
SOAP 프로토콜을 지원
SOAP 메시지 자체를 Parsing하고 조작, 가공하기 위한 기능 제공
웹서비스 어댑터 사용이 가능하므로 추가 개발 과정 없이 연동 가능
타사의 J2EE 엔진이나 MS.NET 등으로 구축된 웹서비스와 기존 애플리케이션 간의 유연한 연결
고리 역할 수행
HTTP 뿐 아니라 기존 JMS 또는 Web Application Server를 두는 다양한 연결 방식 지원
웹서비스 요청 및 응답을 위한 구성 노드 및 Parser 제공
Services Intermediary
Requestor & Provider
Service Requestor
SOAP
Client
SOAP
Over
HTTP
SOAP Over MQ
HTTP
JMS
Service
Provider
(HTTP)
Message Broker
Embedded
Servlet
engine
Request Flow
Response Flow
MQ
SOAP
Client
Service
Provider
SOAP Over
MQ
Warehousing Node
Output Node
Service
Provider
(MQ)
SOAP Node
Input Node
17
Filter Node
Reply Node
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
Agenda
Websphere Message Broker 고도화 & SOA
18
제1장
Overview
제2장
New Features
제3장
Performace
제4장
ONE of ESB Solutions
제5장
SOA
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 2. New Features
History
End Of Service (EOS)
WMQI
V2.0/V2.1
•
•
•
•
•
•
•
•
•
•
•
19
WBIMB
V5.0
Eclipse 기반 개발툴
Enhanced initial user experience
Web Services support
Enhanced message modeling
XSLT transformation
enhancements
Extended database user ID and
password support
Message flow accounting and
statistics
Publish/subscribe
enhancements
SSL authentication, QoS, and
HTTP tunneling
New object level security model
Increased platform support
WMB
V6.0
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Extended platform support
Simplified installation and migration
Improved Message Brokers Toolkit
Flexible transformation
Improved performance and
scalability
Coexistence
Enhanced support for Web services
Driving message flows
Enhanced message parsing
Improved management
Improved security
License management
Code page conversion
WebSphere MQ as a transaction
manager
WMB
V6.1
?
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 2. New Features
Announcement V6.1
• 2008년 4월 1일 발표.
• 2008년 6월 27일 Delivery 시작.
Web Services 통한
SOA(Service Oriented Architecture)기반 기능 강화
플랫폼 독립적인 ESB 기반 기능 강화
새롭게 추가된 Pre-Built Node 및 다양한 지원 플랫폼
그리고 향상된 Performance
20
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 2. New Features
다양한 시스템 또는 S/W 간에 데이터, 정보 혹은 메시지의 정확한 전달
플
랫
Point – TO – Point 와 같은 상호 연결 감소
폼
독
비즈니스 룰에 의거한 정확한 정보 라우팅
립
적
인
이전 버전 보다 더욱 강력해진 PUB/SUB 기능
ESB
문서 형태에 구애 받지 않는 변환(Transform) 과 검증(Validation)
기
반
인터페이스 로직을 비즈니스 로직으로 부터 분리하여 애플리케이션 단순화 기
능
End 사용자 애플리케이션의 재 프로그래밍 없이
강
다아나믹한 재 구성만으로 새로운 비즈니스에 대응
화
21
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
웹
서
비
스
를
통
한
SOA
기
반
기
능
강
화
22
- 2. New Features
서비스 요청자와 공급자간 전달/변환/로깅 기능 강화
웹서비스를 통한 서비스 요청자/제공자 와
다른 프로토콜 간의 전달/변환/로깅 기능 강화
SOAP (Simple Object Access Protocol) 기능 강화
JMS (Java™ Message Service) 기능 강화
HTTP(s) (Hypertext Transport Protocol) 지능 강화
MTOM/XOP 그리고 Websphere MQ 기능 강화
Toolkit을 통한 WSDL (Web Services Definition Language) 생성/구성
지원 기능 강화
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
임베디드
장치
- 2. New Features
SAP
PeopleSoft
Siebel
Native
JMS
파일
프로세싱
TCP
소켓
이메일
프로세싱
광범위한 통합 기능 제공
IBM z/OS
IBM AIX
Linux
( zSeries /
Intel /
Power )
Solaris
HP-UX
( SPARC /
X86-64 )
( PA-RISC /
Itanium )
Windows
Server
DB2
Oracle
SQL Server
Sybase
Informix
다 양 한 지 원 플 랫 폼 ( 32/64비트 호환지원)
Accounting /
JDBC 지원
SAP IDOC TEXT메시지내의
바이너리 데이터 JMS XA 지원
statistics
문서 지원 강화 모델링 강화
JAVA5
보고서 지원
XML 파서의
높은 가용성
확보
향상된 Performance
23
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 2. New Features
What’ new in v6.1
Websphere Adapter 노드
FILE IN/OUT 노드
EmailOutput 노드
Collector 노드
Route 노드
DatabaseRoute 노드
DatabaseRetrieve 노드
XMLTransformation 노드
SOAP 노드
TCP/IP 노드
XMLTransformation 노드
웹서비스 지원을 위한 노드
메시지 도메인 및 파싱
메시지 셋
노드 프로퍼티 정보창
보안 관리자
다양한 프로토콜 지원
24
기
능
추
가
기
능
강
화
• WMQ 메시지를 브라우징 할 수 있는 기능 지원
• Trace 노드의 On/Off 기능 지원
• 노드내에서 Xpath 표현 지원
• JavaCompute 노드에서 DB 접근 가능
• JAVA 5 지원
• 실시간 Performance 화면 제공
• Web 2.0 지원
• Mapping 노드에서 Java Method 호출
• WebSphere Service Registry and Repository 지원
• JMS 기반 X/OPEN 스펙을 따르는 XA 지원
• Message Broker Toolkit에서 데이터베이스 접근 기능
• 단순화되어 있고 빠르게 전개되는 개발 환경
• 관리적 요소에 대한 기능
• 높은 성능의 XML parser
• V5 와 V6에 대한 완벽한 마이그레이션 지원/원복 지원
• 브로커의 상태를 체크하고 구동 요소를 관리하기 위
CVP/IVP 제공
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 2. New Features
실시간 Performance 분석 화면 예
25
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
Agenda
Websphere Message Broker 고도화 & SOA
26
제1장
Overview
제2장
New Features
제3장
Performance
제4장
ONE of ESB Solutions
제5장
SOA
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 3. Performance
V6.1 과 V6.0의 비교
시스템
P570
CPU
P5 1.7Ghz X 4
RAM
4 GB RAM
내장 DISK
68 GB SCSI X 2
외장 DISK
10 GB X 2 (DS6800)
• V6.0은 V5.0 보다 폭넓은 영역에서 성능이 향상되었으며,
• V6.1은 V6.0 보다 나은 성능을 보여주는 것으로 확인되었습니다.
V6.1
V6.0
Msg Size
V6.0 메시지수
V6.1 메시지수
비교(%)
Msg Size
V6.0 메시지수
V6.1 메시지수
비교(%)
1K
1913.9
2976.53
56
1K
619.93
632.31
2
4K
827.6
1686.02
104
4K
369.33
416.3
13
64K
63.3
148.07
134
16K
130.13
178.72
37
256K
15.8
38.07
141
64K
36.87
50.18
36
1024K
4.2
9.79
133
256K
12.13
13.71
13
< XML Processing>
27
< XSLT Transformations>
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 3. Performance
MRM vs XMLNSC
MR
M
XML
Msg Size
MRM Validation
XMLNSC Validation
비교(%)
4K
148.42
1339.55
803
16K
41.08
412.91
905
64K
10.04
101.48
910
256K
2.48
26.2
956
1024K
0.63
6.73
968
XMLNSC Parser는 MRM XML 형태의 메시지 보다 빠른 성능으로 데이터를 처리할 수 있음.
28
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 3. Performance
상황별 처리성능
V6.1
29
V6.0
Use Case
Message Size
v6.1 Msgs/sec
v6.0 Msgs/sec
Aggregation
4K
312
300
Coordinated Request/Reply
4K
488
424
Data Warehouse
4K
927
889
Large Messaging
10K
641
628
Message Routing
4K
6040
5443
SWIFT Message Parse
1K
1780
1520
XML Transformation
4K
1530
1480
XMLNSC Validation
1K
3200
3200
Soap Nodes
1K
562
403
Simple DB Routing
1K
2193
2009
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 3. Performance
TDS Parsing vs CWF Parsing
TDS
Size
Persistent
CWF
TDS
CWF
수 (Msgs/sec)
% CPU Busy
CPU ms/msg
수 (Msgs/sec)
% CPU Busy
CPU ms/msg
4K
443.77
27
2.43
479.39
27
2.25
16K
149.42
26
6.96
118.92
26
8.75
64K
40.84
26
25.46
30.31
25
32.99
10.51
25
95.15
7.59
25
131.75
1024K
2.6
25
384.62
3.6
25
277.78
4096K
0.64
25
1554.4
0.88
25
1136.36
8192K
0.3
25
3333.33
0.44
25
2255.64
4K
360.64
27
2.99
205.81
25.67
4.99
16K
106.73
26
9.74
87.3
24
11
64K
36.78
26
28.28
27.52
26
37.79
10.18
27
106.13
7.47
25
133.87
1024K
2.57
25
389.11
3.57
25
280.11
4096K
0.63
25
1587.3
0.9
25
1111.11
8192K
0.31
25.67
3311.83
0.44
34
3067.67
256K
256K
No
Yes
CPU ms/msg = ((Number of CPUs * 1000) * (%CPU/100)) / Message Rate
30
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 3. Performance
TDS Writing vs CWF Writing
TDS
Size
Persistent
CWF
TDS
CWF
수 (Msgs/sec)
% CPU Busy
CPU ms/msg
수 (Msgs/sec)
% CPU Busy
CPU ms/msg
4K
334.32
27
3.23
391.19
27
2.76
16K
104.81
26
9.92
118.78
26
8.76
64K
27.67
26
37.59
31.07
26.33
33.91
7.08
26
146.89
7.96
26
130.71
1024K
1.77
26
587.57
1.99
26
522.61
4096K
0.41
25.67
2504.07
0.47
26
2212.77
8192K
0.21
24
4571.43
0.27
26.33
3950
4K
115.23
26
9.03
324.23
27
3.33
16K
64.39
25
15.53
70.64
25.33
14.34
64K
23.82
26
43.66
26.19
25.67
39.21
6.73
26
154.53
7.57
26
137.38
1024K
1.71
26
608.19
1.96
26
531.52
4096K
0.41
26
2536.59
0.48
26
2166.67
8192K
0.21
26.33
5015.87
0.24
26.33
4328.77
256K
256K
No
Yes
CPU ms/msg = ((Number of CPUs * 1000) * (%CPU/100)) / Message Rate
31
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 3. Performance
XML Parsing vs XML Writing
Writing
Size
Persistent
Parsing
Parsing
수 (Msgs/sec)
% CPU Busy
Writing
CPU ms/msg
수 (Msgs/sec)
% CPU Busy
CPU ms/msg
4K
1298.31
30.33
0.93
790.6
26
1.32
16K
463.06
28
2.42
260.95
27
4.14
64K
128.64
27
8.4
72.29
26
14.39
33.24
27
32.49
17.2
26
60.47
1024K
8.4
26.33
125.4
4.33
26
240.18
4096K
2.09
26.33
503.99
1.07
26.33
984.42
8192K
1.02
27.33
1071.9
0.53
26.33
1987.42
4K
453.26
26.33
2.32
280.83
26.33
3.75
16K
273.43
27.33
4
157.86
26
6.59
64K
106.02
26.67
10.06
56.12
26
18.53
31.58
27
34.2
16
25.67
64.17
1024K
8.25
27.33
132.58
4.18
26
248.8
4096K
2.07
27.67
534.62
1.03
27
1048.54
8192K
1.03
27.67
1074.43
0.53
27
2037.74
256K
256K
No
Yes
CPU ms/msg = ((Number of CPUs * 1000) * (%CPU/100)) / Message Rate
32
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 3. Performance
DatabaseRetrieve Node
Size
Persistent
Database Retrieve Node
수 (Msgs/sec)
% CPU Busy
CPU ms/msg
4K
960.62
32.33
1.35
16K
901.76
34
1.51
64K
770.32
39.33
2.04
333.48
39
4.68
1024K
76.1
28.67
15.07
4096K
18.7
28.33
60.6
8192K
9.52
30.67
128.85
4K
598.82
27.33
1.83
16K
555.72
30
2.16
64K
360.93
27.33
3.03
186.87
30
6.42
1024K
65.21
35
21.47
4096K
15.33
32
83.48
8192K
5.56
27.33
196.76
256K
256K
No
Yes
단, Message는 XML 형태임.
CPU ms/msg = ((Number of CPUs * 1000) * (%CPU/100)) / Message Rate
33
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 3. Performance
HTTP Nodes
Size
Persistent
HTTP Reply (1)
HTTP Request (2)
수 (Msgs/sec)
% CPU Busy
CPU ms/msg
수 (Msgs/sec)
% CPU Busy
CPU ms/msg
4K
2892.49
57.33
0.79
381.32
31.33
3.29
16K
2070
70
1.35
165.31
30
7.26
738
70
3.79
48.72
30
24.63
256K
148.15
53.33
14.4
13.14
30
91.3
1024K
21.27
22.33
42.01
3.21
29.33
365.52
64K
No
단, Message는 XML 형태임.
CPU ms/msg = ((Number of CPUs * 1000) * (%CPU/100)) / Message Rate
< HTTP Reply Node (1) >
HTTP 메시지를 읽고 쓰는 형태
34
< HTTP Request Node (2) >
MQ 프로토콜을 HTTP 프로토콜로
생성 하는 형태
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 3. Performance
FILE Nodes
Size
Persistent
XML
MRM
수 (Msgs/sec)
% CPU Busy
CPU ms/msg
수 (Msgs/sec)
% CPU Busy
CPU ms/msg
4K
321.08
53.67
6.69
466.88
54.33
4.66
16K
166.57
53
12.73
447.78
54.67
4.88
64K
59.03
52.67
35.69
341.39
48
5.62
15.54
52.33
134.68
123.05
44
14.3
1024K
4.01
50.33
502.08
39.85
34.33
34.46
4096K
1.02
51
2000
8.24
35
169.83
8192K
0.46
51
4467.15
3.38
38.33
454.1
256K
No
CPU ms/msg = ((Number of CPUs * 1000) * (%CPU/100)) / Message Rate
MR
M
35
XML
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 3. Performance
SOAP Nodes(1)
검
증
OFF
Size
Persistent
검
증
ON
XML Validation OFF
XML Validation ON
수 (Msgs/sec)
% CPU Busy
CPU ms/msg
수 (Msgs/sec)
% CPU Busy
CPU ms/msg
1K
574.4
31
2.16
534.46
32.67
2.44
4K
273.76
29
4.24
248.72
29.33
4.72
8K
160.63
29.67
7.39
146.5
29
7.92
84.91
29.67
13.98
77.46
29
14.98
64K
23.29
30.33
52.1
20.35
30.33
59.63
256K
5.76
28.33
196.87
5.12
28.33
221.21
1024K
1.41
27
765.96
1.26
27
859.42
16K
No
단, Message는 XML 형태임.
CPU ms/msg = ((Number of CPUs * 1000) * (%CPU/100)) / Message Rate
36
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 3. Performance
SOAP Nodes (2)
검
증
OFF
Size
Persistent
검
증
ON
XML Validation OFF
수 (Msgs/sec)
% CPU Busy
XML Validation ON
CPU ms/msg
수 (Msgs/sec)
% CPU Busy
CPU ms/msg
1K
341.19
34.33
4.03
244.19
32.67
5.35
4K
203.88
31.67
6.21
132.92
31.33
9.43
8K
128.73
31
9.63
80.79
29
14.36
76.47
32.67
17.09
46.25
29
25.08
64K
21.19
31.33
59.15
12.48
29
92.97
256K
5.21
30
230.33
3.14
29
369.03
1024K
1.31
27.67
844.78
0.74
27
1452.91
16K
No
단, Message는 XML 형태임.
CPU ms/msg = ((Number of CPUs * 1000) * (%CPU/100)) / Message Rate
37
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 3. Performance
JMS Nodes
MQ
To
JMS
Size
Persistent
JMS
To
MQ
JMS to MQ
MQ to JMS
수 (Msgs/sec)
% CPU Busy
CPU ms/msg
수 (Msgs/sec)
% CPU Busy
CPU ms/msg
4K
900.7
32.67
1.45
1128.02
36
1.28
16K
762.41
35
1.84
994.15
37.33
1.5
64K
408.7
47.33
4.63
561.5
48.33
3.44
189.88
54.67
11.52
326.05
50.33
6.17
1024K
46.3
58
50.11
76.96
46
23.91
4096K
15.21
52
136.75
19.03
50
105.08
8192K
7.49
48
256.46
9.61
48
199.79
256K
No
단, Message는 XML 형태임.
CPU ms/msg = ((Number of CPUs * 1000) * (%CPU/100)) / Message Rate
38
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
Agenda
Websphere Message Broker 고도화 & SOA
39
제1장
Overview
제2장
New Features
제3장
Performace
제4장
ONE of ESB Solutions
제5장
SOA
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
What’s ESB?
•
ESB는 전반적인 기반 아키텍쳐의 한 부분으로 Message-Driven 서비스의 기본적
인 세트를 제공하기 위하여 컴포넌트들을 결합해서 만든 아키텍쳐 구조물이라 할
수 있습니다.
•
•
40
웹서비스만이 ESB 근간이 되
는 기술은 아닙니다.
웹서비스 또한 컴포넌트의 한
일부입니다.
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
ESB의 기능
Integration
Communications
Management
41
Service
interaction
부가적인 기능요소
Quality of service
Security
Service level
Modeling
Message processing
Infrastructure intelligence
Management and autonomic
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
ESB로써 Websphere MB
메시징(Messaging) 과
통합 패턴(Integration Patterns)의
포괄적인 구현 범위
표준과 비표준 기반의 응용S/W,
Protocols, 과 Data Formats의
포괄적인 구현 범위
W
내재된 기능에 의한 XML 혹은
non-XML Data(or Message) 처리
M
Telemetry 장치에 대한
통합이 필요할 경우
사용자 요구에 맞는 신뢰성과
포괄적인 transaction 지원
B
IBM의 다른 S/W와의 호환성
42
수평적/수직적인
고 가용성 지원
광범위하게 상용화된
중개자 역할의 S/W 필요
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
Position of WMB
• WMB는 데이터, 인포메이션 혹은 메시지 기반하에 여러 플랫폼 및
S/W에 구애 받지 않고 인터페이스를 담당하는 강력한 상용 애플
리케이션 입니다.
– Websphere Event Broker
– Websphere Message Broker
– Rules and Formatter Extension
• 메시지 전달 및 배포
• 메시지 생성/삭제/추가등을 포함하는 변환
• Publish/subscribe
43
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
Web Services
Broker 도메인
서비스 requester
서비스 provider
서비스 Supplier 역할로의 서비스 제공
44
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
Security
V6.1의 강력한 보안
Message 기반 authentication
와 authorization
• HTTPInput / SOAPInput / MQInput
• LDAP V3 compatible security provider
• Tivoli Federated Identity Manager V6.1
• DataPower XS40 와 XI50
(with IS02 SupportPac)
DataPower 통합 WS-Security 지원
45
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
EIS 연결 (JCA Adapter)
Broker
WBIA
Message
Message
Flow
Message
Flow
Flow
EIS
EIS
EIS
<Runtime 환경>
46
• 메시지 플로우에 EIS Adapter가
포함되지 않고 Broker runtime 외
부에서 동작하지만 메시지 플로
우에서 JMS binding으로 연결할
수 있습니다.
• SAP
• SIEBEL
• PeopleSoft
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
Web 2.0 지원
• Representational State Transfer
(REST) 완벽지원
• Client와 Enterprise 애플리케이
션간의 웹서비스를 통한 요청메
시지를 처리할 수 있습니다.
–
–
–
–
47
POST
PUT
GET
DELETE
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
TCP/IP
• RAW TCP/IP sockets 통한 데이
터 처리를 위해 새롭게 6개의
Node가 추가되었습니다.
–
–
–
–
–
–
48
TCPIPClientInput
TCPIPClientOutput
TCPIPClientReceive
TCPIPServerInput
TCPIPServerOutput
TCPIPServerReceive
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
Provider Message Flow
1
3
2
49
4
1. SOAPInput node는 SOAP 메시지를 수신
하여 OrderService_Extract SubMessageFlow 사용할 수 있는 데이터인지
를 체크합니다.
2. Sub-MessageFlow의 SOAPExtract node
는 SOAP envelope을 제거한 WebService
에서 사용할 SOAP Message(XML)를 생
성합니다.
3. Sub-MessageFlow를 통해 생성된 XML
데이터는 Compute Node의 ESQL를 통해
XML 형태의 SOAP Body로 생성됩니다.
4. SOAPReply node는 SOAP 메시지를 생성
하여 Web서비스 콜 형태로 consumer에
게 전달됩니다.
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
Consumer Message Flow
1
2
5
3
4
< consumer flow >
50
1. MQInput으로 부터 MQ 메시지(XML)를 수
신합니다.
2. Compute node는 Web서비스에서 사용할
수 있는 형태의 메시지를 생성합니다.
3. SOAPRequest node는 XML 데이터를
SOAP 메시지 형태로 변환하여 웹서비스
를 호출합니다.
4. 정상적인 호출이 이뤄지면 SOAPExtract
node를 통해 웹서비스 호출에 대한 응답
메시지가 수신되어 SOAP envelope을 제
거한 메시지를 Main-Message Flow로 전
달합니다.
5. MQOutput node를 통해 SOAP 메시지가
Queue 넣어집니다.
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
Asynchronous Consumer Flow
51
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
SOAP domain and parser
•
•
52
SOAP 메시지 도메인은 새
로운 SOAP nodes가 지원
하는 Attachment(SwA)와
MTOM 스펙을 담고 있는
SOAP 포함하여 SOAP 메
시지의 Parsing 지원하기
위하여 추가되었습니다.
SOAP Parser는 모든
SOAP 기반의 Web 서비스
를 위한 일반적인 논리적
Tree 구조를 만들고
WSDL 정의에 대하여 메
시지를 유효하게 생성합니
다.
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
File 전송
53
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
N:1 File 생성
•
•
54
FileOutput Node는 IN 과 Finish File 두개의 Input 터미널이 있어
Compute Node에서 PROPAGATE로 두개의 터미널을 조건 분기 시켜주면 됩니다.
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
메시지 splitting 와 routing
• 주문 리스트를 WMB가 수신하여 각 주문을 splitting하여 조건을
조회하여 공급자에게 맞는 주문을 routing 하는 경우입니다.
55
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
메시지 splitting 와 routing의 Message Flow
1
1.
2.
3.
4.
56
2
3
4
JMSInput node는 주문 리스트를 JMS Q로부터 수신합니다.
JMSMQTransform node는 JMS Format을 MQ Format으로 변환하여 다음 Compute node
에 전달합니다.
Compute node는 ESQL로 각 메시지를 splitting하고 database로부터 조건을 검색하여
propagate 함수를 통해 Routing을 시도합니다.
MQOutput node를 통해 routing을 시도하게 되고 실패했을 경우 TryCatchQ로 전송됩니다.
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
XA(Transaction Manager)
•
57
2,5는 Request/Reply 이며, 3의 WMB의 Message Flow는 JMS를 이용하여 4의 Bank1과
Bank2를 XA 표준 스펙에 따른 Transaction Manager 역할을 수행하게 됩니다.
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
XA(Transaction Manager)의 Message Flow
58
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
Aggregation
•
59
WMB로 SOAP/HTTP 형태의 Request 메시지가 수신되어 두 supplier CWF 형태로 Request
를 Aggregation을 이용하여 송신하여 모두로부터 Reply가 수신되면 XML 형태의 메시지로
Web서비스에 Reply 하는 경우입니다.
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
Aggregation의 Message Flow - FanOut
•
•
60
HTTPInput으로 부터 수신한
SOAP/HTTP 에서 HTTP Header를
제거 후 MQMD/MQRFH2 Header
생성
각 Request에 맞는
형태로 메시지 생성
후
AggregateRequest
생성.
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
Aggregation의 Message Flow – FanIn
•
•
61
AggregateReply node를 통해
AggregateRequest에 대한 응답 메
시지를 수신하여 각 Case 별로 다
음 node를 수행, 최종적으로 응답
메시지가 모두 오게 되면 XML 데이
터 생성 후 종료
SOAP/HTTP Header를 생
성하여 응답 Web 서비스
호출.
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 4. ONE of ESB Solutions
결론
Enterprise Service Bus
Websphere Message Broker
초 석
62
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
Agenda
Websphere Message Broker 고도화 & SOA
63
제1장
Overview
제2장
New Features
제3장
Performace
제4장
ONE of ESB Solutions
제5장
SOA
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 5. SOA
What’s SOA?
반복적인 비즈니스 작업
분명하고 구현독립적인 요소에 의해 구현된
애플리케이션의 집합체
방법론에 따르는 IT 아키텍쳐
business관점, architecture관점, implementation
관점, operational 관점에 따라 정의됨.
64
연관된 서비스를 통해 비즈니스
애플리케이션과 프로세스가 통
합되는 방법론
SOA 상에 만들어진 비즈니스 프로
세스를 지원하는 관련된 통합 서
비스의 세트
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 5. SOA
SOA 기본 요소
•
•
•
Service provider
Service consumer
Service Registry
Service
Registry
Discover
Service
Consumer
65
2
1
3
Invoke
Request/Response
Publish
Service
Provider
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 5. SOA
SOA의 필요성
•
Flexible Architecture의 비중의 증가
•
•
•
66
Control 과 Routing흐름, 데이
터 변환 그리고 프로토콜 변환
으로 부터 분리된 비즈니스 로
직의 집합체
Flexible
Loosely-Coupled
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 5. SOA
SOA 와 웹서비스
• Core 요소
–
–
–
–
Extensible Markup Language (XML)
Simple Object Access Protocol (SOAP)
Web services Description Language (WSDL)
Universal Description, Discovery, and
Integration (UDDI)
HTTP(s) / SOAP / Web 2.0 기타 등등
비즈니스
애플리케이션
서비스
67
고객
서비스
주문
서비스
BILLING
서비스
…
인포메이션
서비스
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 5. SOA
SOA에서의 Websphere MB의 위치
WMB는 SOA 영역을 전부 Cover할 수 있는가 ?
비즈니스 로직을
포함하는가?
비즈니스 프로세스간
관계를 가지고 있는가?
글로벌 트랜잭션을
지원하는가?
Long-Running
비즈니스 프로세스를
포함하는가?
프로토콜 변환 및
전달 기능은 ?
Quality of Service (QOS)
지원은?
Transaction
Manager 역할은?
Enterprise 시스템과의
연계는?
일부는 될 수 있으나 전부를 Cover하지는 못한다.
68
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
- 5. SOA
IBM SOA Foundation
69
© 2009 IBM Corporation
Websphere Message Broker 고도화 & SOA
QnA
70
© 2009 IBM Corporation