j2ee 기반의 웹서비스 구축을 위한 jeus 4.0

29
J2EE J2EE 기기기 기기기 기기기기 기기기 기기 기기기기 기기기 기기 JEUS 4.0 JEUS 4.0 정정정 정정 정정정

Upload: benjamin-lee

Post on 02-Jan-2016

165 views

Category:

Documents


7 download

DESCRIPTION

J2EE 기반의 웹서비스 구축을 위한 JEUS 4.0. 정재웅 선임 연구원. WAS 개요 JEUS System Architecture What’s new in JEUS 4.0? Web Server Session Manager EJB JMS Transaction Manager Legacy System Connectivity Naming & Directory Service Security Manager. Agenda. Scheduler Java Management eXtension - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

J2EE J2EE 기반의 기반의 웹서비스 구축을 위한웹서비스 구축을 위한

JEUS 4.0JEUS 4.0

정재웅 선임 연구원

Page 2: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

22/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

Agenda

• WAS 개요• JEUS System Architecture• What’s new in JEUS 4.0?• Web Server• Session Manager• EJB• JMS• Transaction Manager• Legacy System

Connectivity• Naming & Directory

Service• Security Manager

• Scheduler• Java Management

eXtension• Client-side Programming• System Clustering• Service Clustering• Dynamic Configuration• Management Tool• Web Service• Personalization, IDE• Summary

Page 3: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

33/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

Program 모델 변화

메인프레임환경의

Program

2 tier환경의C/S

Program

3 tier환경의C/S

Program

Internet환경의

Web/WASProgram

과거 1980 년대 1990 년대 현재

Page 4: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

44/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

Business

Presentation

Web 환경의 출현

• Without Middleware (WAS)

• With Middleware (WAS)

• Request 마다 Process 생성 / 종료로 시스템 부하가중

• Transaction 관리 어려움

Web Browser

Web Browser

WebServer

• 이식성 / 확장성• 우수한 성능• Component 화

DB

WAS

WebServer

CGI AP

DBAP

Page 5: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

55/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

WAS 의 기능

• Web 환경에서의 3tier architecture

• Presentation (GUI) 과 Business Logic 의 분리 운영

• Thread 관리

• 부하조절 (Load Balancing)

• 장애대책 (Fail-Over)

• Transaction 지원

Page 6: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

66/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

WAS 종류

• Java 계열

- J2EE (Java 2 Enterprise Edition) - J2EE (Java 2 Enterprise Edition) 표준표준

- SUN- SUN 의 주도의 주도

- Tmax Soft(JEUS), BEA(Web Logic), IBM(Web - Tmax Soft(JEUS), BEA(Web Logic), IBM(Web Sphere), Sphere), Oracle 9iAS Oracle 9iAS 등등

- - 이식성이 뛰어남이식성이 뛰어남

• Non-Java 계열

- MicroSoft- MicroSoft 의 의 ..NetNet

- C/C++ - C/C++ 계열의 계열의 WebtoB@Enterprise, Zeus, ToinB WebtoB@Enterprise, Zeus, ToinB 등등

Page 7: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

77/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

JEUS

• JEUS (Java Enterprise User Solution)

• J2EE 기반 Web Application Server

• 국내최초 J2EE Certification 획득 제품

• Web Server (WebtoB Light) 내장으로 속도 향상

Client Tier Web/Business Tier EIS Tier

JEUS Database

TP-Monitor

LegacySystem

PresentationLayer

BusinessLayer

System ManagementLayer

WebServer

Page 8: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

88/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

JEUS System Architecture

Web AdminServer

Web AdminServer

JNLPServerJNLP

Server

Node ControlerNode Controler

Remote Security ServerRemote Security Server

JNDIServerJNDI

ServerSecurityServer

SecurityServer

SecurityServer

SecurityServer

SessionManagerSessionManager

ClassFTPServer

ClassFTPServer

HTMLHTML

Web BrowserWeb Browser

Java ApplicationJava Application

JNLP Client(ex. Web Start)

JNLP Client(ex. Web Start)

AppletApplet

Applet ClientApplet Client

Web BrowserWeb Browser

Java ApplicationJava Application

Client ContainerClient Container

COM / DCOMCOM / DCOM

Jeus COM BridgeJeus COM Bridge

CORBA Application

CORBA Application

RMI / IIOPrRMI / IIOPr

Jeus ManagerJeus Manager DefaultEngine Container

DefaultEngine Container

WebContainer

EJB Container

JMS Container

JDBCConnection

Pool

JDBCConnection

Pool

TransactionManager

TransactionManager

DB

Engine ContainerEngine Container

WebContainer

EJB Container

JMS Container JDBC

ConnectionPool

JDBCConnection

Pool

DB

JNDIClientJNDI

ClientSecurityClient

SecurityClient SchedulerScheduler Transaction

ManagerTransaction

Manager

Engine ContainerEngine Container

WebContainer

EJB Container

JMS Container JDBC

ConnectionPool

JDBCConnection

Pool

DB

JNDIClientJNDI

ClientSecurityClient

SecurityClient SchedulerScheduler Transaction

ManagerTransaction

Manager

WebtoBLight

WebtoBLight

HTMLHTML CGICGI

SSISSI PHPPHP

Server Application Environment

Client Application Environment

WebAdminWeb

Admin

JadminJadmin

JdeployJdeploy

ManagementEnvironment

Page 9: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

99/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

What’s New in JEUS 4.0

• J2EE 1.3

- EJB 2.0- EJB 2.0- Connector- Connector- JMS- JMS- Servlet 2.3/ JSP 1.2- Servlet 2.3/ JSP 1.2

• XML 기반 Web Service• Personalization Server• JEUS Studio• Tmax, WebtoB Connectivity

Page 10: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

1010/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

Web Server

• 대용량의 동시 Web Client 를 어떻게 안정적으로 받아 들일 수 있는가 ?

• WebtoB Light

- C-coded web server with I/O multiplexing- C-coded web server with I/O multiplexing

- Clustering & Software routing- Clustering & Software routing

- FailStop (L7 software switch)- FailStop (L7 software switch)

- Memory caching- Memory caching

- PIPE based communication with Web - PIPE based communication with Web ContainerContainer

- SSL / Virtual Hosting / Logging- SSL / Virtual Hosting / Logging

Page 11: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

1111/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUSSession Manager

• Servlet/JSP 로 구현된 서비스를 어떻게 복수개의 CPU 또는 machine 에서 cluster 로 운영이 가능한가 ?

ClientWebWeb

ServerServerWebWeb

ServerServer

Web Container 1Web Container 1

Web Container NWeb Container N

JEUS Manager 1

Session ManagerSession Manager

SessionStorage

Session KeySession Key

Session Clustering

Session Key

JEUS Manager 2

Backup Backup Session ManagerSession Manager

Through FireWall

Page 12: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

1212/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

EJB

• JavaBean 또는 RMI 로도 충분한데 EJB 는 언제 사용할수 있는가 ?

- Transaction(Programmatic, Declarative)- Transaction(Programmatic, Declarative)

- Security(method-level)- Security(method-level)

- Concurrency Control- Concurrency Control

- Object Management- Object Management

- Execution Environment- Execution Environment

- Exception Handling- Exception Handling

- Clustering(out of specification)- Clustering(out of specification)

- Data Caching(Entity)- Data Caching(Entity)

- Engine Monitoring(out of specification)- Engine Monitoring(out of specification)

Page 13: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

1313/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

Entity & Relationship

• Session Bean 은 잘 쓰겠는데 Entity Bean 와 관계형 DB 를 효율적으로 연동하려면 어떻게 해야 하는가 ?

- Entity Caching, Update Sensing, SQL Opt., Local - Entity Caching, Update Sensing, SQL Opt., Local

Method Invocation Opt.Method Invocation Opt.

- Relationship in EJB 2.0- Relationship in EJB 2.0 Relationship in RDBMSRelationship in RDBMSRelationship in CMP(2.0)Relationship in CMP(2.0)

ID NAME DEPTNO

1 KKK 123

2 JJJ 234

ID DEPT

123 R&D

234 SALES

… …

EMPLOYEEEMPLOYEE DEPARTMENTDEPARTMENT

EMPLOYEE DEPARTMENT

Page 14: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

1414/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUSJMS & Message Driven Bean

•큰 업무를 여러 개의 단위 업무로 나누어 순차 진행시키거나 , 일부 작업을 뒤로 미루어 처리할 수 있는가 ?

MDB

MDB

Client

EJB

bean

EJB

bean

① ②

③④

ü 작업처리 완료까지 작업 요청한 Client 가 Blocking 상태

Client

EJB

bean

EJB

bean

① ②

ü 작업완료 전에 다른 작업 가능 (not Blocking)

ü 다양한 Workflow 구성 가능

MDB

JMS’① ’②

passive

Page 15: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

1515/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

Transaction Manager

• 기존에 이미 구축되었거나 업무상 별 수 없이 써야 할 DB 또는 엔진이 있는데 이것이 XA 를 지원하지 않아 transaction 으로 묶을 수가 없을때 , 해결방안은 ?

• Commit Protocol Optimization- Branch joining, ReadOnly Opt.- Branch joining, ReadOnly Opt.

TM RM1 RM2

2 Phase Commit

TM RM1 RM2 LRM

3 Phase Commit

TM RM

1 Phase Commit

Page 16: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

1616/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUSLegacy System Connectivity

• WAS 뒷단에 묶어야 할 시스템이 있는데 어떻게 연동이 가능한가 ?

- CICS, IMS, SAP, Tandom, Ingres, MQ - CICS, IMS, SAP, Tandom, Ingres, MQ 등등 J2EE Connector ArchitectureJ2EE Connector Architecture

- CORBA - CORBA RMI-IIOP RMI-IIOP

- COM/DCOM - COM/DCOM COM Bridge COM Bridge

- LDAP - LDAP JNDI Bridge JNDI Bridge

- DB - DB JDBC Driver JDBC Driver

- Vendor specific Connector- Vendor specific Connector•Tmax WebT, Tuxedo Jolt

Page 17: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

1717/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

Naming & Directory Service

• 시스템에서 사용되는 Resource 또는 서비스들을 다양한 조건으로 검색하여 runtime 에 사용할 수 있는가 ?

- Naming- Naming • 이름을 통한 대상 객체 검색

- Directory- Directory• 속성을 통한 대상 객체 검색• 분산된 단위 시스템간의 dynamic binding•Faster Access on shared info. than DB

Page 18: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

1818/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

• 한번 시스템에 login 한 유저가 추가 authentication 없이 시스템 내의 여러 서비스를 사용할 수 있는가 ?

- Single SignOn- Single SignOn•Authentication 된 Principal 정보의 Runtime

관리•Servlet 단위 , EJB Bean Method 단위 Auth.

- User Define Realm- User Define Realm• 시스템 사용자 관리의 편의성 제공

- LDAP, OS Realm- LDAP, OS Realm• 기존에 구축된 security 정보를 기반으로 보안 체계

구성 가능

Security Manager

Page 19: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

1919/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUSScheduler

• Batch Job 형태로 할 수 있는 방법은 ?

- - 동적인 작업등록동적인 작업등록 , , 해제해제 , , 자동 해제자동 해제- - 주기적 실행주기적 실행 , , JVMJVM 을 지정하여 실행 가능을 지정하여 실행 가능

Scheduler Runtime

Batch JobLocal Register Job Table

8:108:10

Execute

[JEUS Scheduler]

Batch JobRemote Register

8:208:20

8:508:50

8:308:30

8:408:40

9:009:00 9:109:10

Page 20: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

2020/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUSJava Management eXtension

• JEUS 시스템상의 운영중인 서비스 또는 시스템 자체를 NMS 시스템과 연동하여 관리할 수 있는가 ?

- JMX Agent, SNMP Connector- JMX Agent, SNMP Connector

MIB

NMSJMX AgentJMX

AgentAPI

SNMP Agent

MIBMIB

SNMP Request

SNMP Replies

SNMP Traps

MBeans

JEUS System

Page 21: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

2121/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

Client-side Programming

• 어떤 어떤 형태의 Client Programming 을 지원할 수 있는가 ?

- Client Container- Client Container• Java GUI application• Full Functionality but Installation Prob.

Intranet - Applet Container- Applet Container

•Web Browser 상에서 복잡한 GUI 구성가능•Download overhead 장시간 사용되거나

서버측에서의 데이터 처리가 곤란한 경우 - JNLP Container- JNLP Container

• Java GUI application 의 설치 및 버전 관리 문제 해결 - JEUS COM Bridge- JEUS COM Bridge - RMI/IIOP- RMI/IIOP

Page 22: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

2222/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

• 복수개의 machine 으로 시스템을 구축하였을 때 시스템의 안전성은 어떻게 보장될 수 있는가 ?

- JEUS Server- JEUS Server 에 의한 엔진 에 의한 엔진 fail-overfail-over

- Multi-node - Multi-node 감시 체계 감시 체계 ((based on ‘Ring’ topology)based on ‘Ring’ topology)

- Node fail-over (backup node - Node fail-over (backup node 부팅부팅 ))- failed node- failed node 가 다시 살아났을 때 가 다시 살아났을 때 Auto-rejoiningAuto-rejoining

JEUS ServerJEUS ServerJEUS ServerJEUS Server

ServletServletEngineEngineServletServletEngineEngine

EJBEJBEngineEngine

EJBEJBEngineEngine

failurefailure

Auto restartingAuto restartingFail-overFail-over

detecteddetected

JEUS ServerJEUS ServerJEUS ServerJEUS Server

ServletServletEngineEngineServletServletEngineEngine

EJBEJBEngineEngine

EJBEJBEngineEngine

System Clustering

Page 23: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

2323/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

Failuredetect

Failure

Initially ring

Periodic checkingFor resurrection

Rejoining ofThe failed node

Dynamic scale-up by adding a node at runtimeDynamic scale-up by adding a node at runtime

Backup enginesstarted

ChangingNode information

By sending join signal

System scaled dynamically

System Clustering

Page 24: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

2424/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

• Service 를 clustering 하여 운영하였을 때 load balancing, failover 문제는 해결되는가 ?- 2 - 2 step load balancingstep load balancing

- WebtoB Light Cluster, Session Manager, Active - WebtoB Light Cluster, Session Manager, Active StubStub

Home Stub 1Home Stub 1

Remote Stub 1Remote Stub 1

EJB Home NEJB Home N

EJB Object NEJB Object NEJBEJB

EJB Container NEJB Container N

EJB Home 1EJB Home 1

EJB Object 1EJB Object 1EJBEJB

EJB Container 1EJB Container 1

Home Stub NHome Stub N

JNDI ServerJNDI Server

service1

Home Stub 1Home Stub 1

InitializationHome ClusterRemote Cluster

Client

Service Clustering

Page 25: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

2525/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

• System, Service, Resource 들에 대한 동적 구성

변경이 가능한가 ?

- System level- System level• 노드 , 서비스 엔진 (Web Container, EJB

Container, JMS Server) 대한 동적인 추가 , 제거 , 설정 변경

- Service level- Service level• 서비스 모듈 단위 , 서비스 단위의 동적 deploy,

undeploy, enable, disable, 설정변경 • 각 resource 의 설정 사항에 대한 동적 변경

Dynamic Configuration

Page 26: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

2626/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

• System 및 service 들의 현 상태를 monitoring 하고 control 할 수 있는 Tool 을 지원하는가 ?

- GUI Tool – Jadmin , Jdeploy, WebAdmin- GUI Tool – Jadmin , Jdeploy, WebAdmin

- Console Tool – jeusadmin, ejbadmin, - Console Tool – jeusadmin, ejbadmin, webadmin webadmin 등등

Management Tool

Page 27: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

2727/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

Web Service

• eBusiness 에서의 새로운 기술로 제시되는 XML 기반의 Web Service 를 제공하는가 ?

SOAP Proxy

WSDL Tool

UDDIUDDIRegistryRegistry

WebtoBLight JEUSJEUS

UDDI ClientUDDI Client

WSDL Tool

JEUSWeb Container

SOAPEngine

ServiceRouterClient-Side

Application

1

3 2

4 5

Page 28: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

2828/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUSPersonalization, IDE

• Personalization 기능은 지원되는가 ?

• JEUS Personalization ServerJEUS Personalization Server• Rule-based Engine with JSP TagRule-based Engine with JSP Tag

• 개발 툴은 어떤 것들이 있는가 ?

• JEUS StudioJEUS Studio• JbuilderJbuilder• Servlet, JSP, EJB, Client Servlet, JSP, EJB, Client 모듈의 설계모듈의 설계 , , 개발개발 , ,

debugging, packing, runtime deploy, debugging, packing, runtime deploy, profilingprofiling

• Group Work, XML editing, documentation Group Work, XML editing, documentation 등등

Page 29: J2EE  기반의  웹서비스 구축을 위한 JEUS 4.0

기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

2929/29/29Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JEUSJEUS

Summary

• J2EE v1.3 의 모든 기능 지원

• JEUS 고유의 다양한 문제 해결 solution 들

• 관리 , 운영 및 시스템 개발의 편의성

• 미래 IT Trend 에 대한 대비