SlideShare a Scribd company logo
1 of 23
Download to read offline
Samsung SDS, Framework Group
JAVA Center-Cut
조인석
2010. 11. 18
Agenda
 What is Center-Cut?
 Scenario
 Architecture
 Module Process
 Deployment View
 Fail-Over & Recovery
 Feature
 Admin UI
 Demo
 Q & A
Business
Complexity
Processing Volume
Online
Center-Cut
Batch
Center-Cut ?
Center-Cut is..
 대량 데이터를 온라인에서 효율적으로 일괄처리 되도록
구현한 솔루션
 1건씩 처리하면서 고유 거래처리와 환원자료생성, 후처
리로그 생성, 전표 발생 등의 단위 트랜잭션을 수만건 내
지 수천만건을 병렬 처리하여 짧은 시간내에 처리 하는
개념
 예를 들어 수천만건의 입금거래를 단말에서 수행하지 않
고 Center 에서 일정시점까지 축적된 자료를 기준으로
Cut 하여 처리하는 방식
 금융 차세대 시스템의 핵심 요소
…
[Thread 2] 1000001 ~ 2000000
[Thread 1] 1 ~ 1000000
[Thread 3] 2000001 ~ 3000000
[Thread 40] 39000001 ~ 40000000
[Thread 4] 3000001 ~ 4000000
[Thread 5] 4000001 ~ 5000000
Scenario #1
[Thread 6] 5000001 ~ 6000000
[Thread 7] 6000001 ~ 7000000
[Thread 8] 7000001 ~ 8000000
[Thread 9] 8000001 ~ 9000000
[Thread 10] 9000001 ~ 10000000
총 4 천만건
Job List Admin Engine List
JOB PYY0
주간 일괄 입금 처리
40 Thread
4 Engine
Engine 1
Thread1
Thread2
Thread3
Thread4
Thread5
Thread6
Thread7
Thread8
Thread9
Thread10
Engine 2
Thread11
Thread12
Thread13
Thread14
Thread15
Thread16
Thread17
Thread18
Thread19
Thread20
Engine 3
Thread21
Thread22
Thread23
Thread24
Thread25
Thread26
Thread27
Thread28
Thread29
Thread30
Engine 4
Thread31
Thread32
Thread33
Thread34
Thread35
Thread36
Thread37
Thread38
Thread39
Thread40
Thread 1 100 100 100 …
100
WASInstance4
Thread 2 100 100 100 …
100
Thread 3 100 100 100 …
100
Thread 10 100 100 100 …
100
…
Thread 1 100 100 100 …
100
WASInstance3
Thread 2 100 100 100 …
100
Thread 3 100 100 100 …
100
Thread 10 100 100 100 …
100
…
Thread 1 100 100 100 …
100
WASInstance2
Thread 2 100 100 100 …
100
Thread 3 100 100 100 …
100
Thread 10 100 100 100 …
100
…
Engine 4 - 10 Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread40
Engine 3 - 10 Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread30
Engine 2 - 10 Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread20
Engine 1 - 10 Thread
Thread1
Thread2
Thread3
Thread4
Thread5
Thread6
Thread7
Thread8
Thread9
Thread10
Scenario #2
JOB PYY0
주간 일괄 입금 처리
100 Commit Unit
10 Job Interval
50% WAS CPU Usage
Thread 1 100 100 100 …
100
WASInstance1
Thread 2 100 100 100 …
100
Thread 3 100 100 100 …
100
Thread 10 100 100 100 …
100
…
Thread 1 100 100 100 …
100
WASOnline1
Thread 2 100 100 100 …
100
Thread 3 100 100 100 …
100
Thread 10 100 100 100 …
100
…
Scenario #3
JOB PYY0
주간 일괄 입금 처리
300 sec Tx Timeout
3 Retry count
12 hour Maximum
Processing time
Failed Commit Units
Policy Data
Primary
SecondaryAdmin
Engine 1
Thread Pool
OLTP Driver
Thread
Thread
Thread
Thread
Thread
WAS Instance 1
Hessian Adapter
Business Logic
Thread
Thread
Thread
Thread
Thread
Engine 2
Thread Pool
OLTP Driver
WAS Instance 2
Hessian Adapter
Business Logic
Engine 3
Thread Pool
OLTP Driver
WAS Instance 3
Hessian Adapter
Business Logic
Engine 4
Thread Pool
OLTP Driver
WAS Instance 4
Hessian Adapter
Business Logic
Architecture
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
Thread
DB
Manage
-ment
Layer
Thread
Control
Layer
Execution
Control
Layer
Online
Execution
Layer
Resource
Layer
WAS
WAS
WAS
WAS
Admin
Business DB
Admin DB
F/W module Develop Module
Remote Call
Online BatchScheduler
Engine
Engine
Engine
Engine
WAS
WAS Online Instance
Broker
ItemReader DAO
DAO
Service
&
Business
ItemWriter
Module Process
1 구동 요청
2 분배정책 로딩
3 쓰레드 할당
4 처리 요청
5 처리대상 리스트 획득
6 건별 처리
7 결과 입력
8 처리 완료
9 관리DB 업데이트
Domain 1
Admin
(Secondary)
WAS Instance
WAS Instance
WAS Instance
WAS Instance
WAS Instance
WAS Instance
Admin
(Primary)
WAS Instance
WAS Instance
WAS Instance
WAS Instance
WAS Instance
WAS Instance
External
Scheduler
BATCH
ONLINE
Center-Cut
Scheduler
WAS Instance
WAS Instance
WAS Instance
WAS Instance
WAS Instance
WAS Instance
Admin
(Secondary)
Business DB
Center-Cut
Admin DB
Engine
Engine
Engine
Engine
Engine
Engine
Center-Cut
Admin DBCenter-Cut
Admin DB
Business DB
Business DB
Deployment View
성능 사례 – S 생보 차세대 시스템
Admin
(Secondary)
WAS Instance
WAS Instance
WAS Instance
WAS Instance
WAS Instance
WAS Instance
Admin
(Primary)
WAS Instance
WAS Instance
WAS Instance
WAS Instance
WAS Instance
WAS Instance
Center-Cut
Scheduler
WAS Instance
WAS Instance
WAS Instance
WAS Instance
WAS Instance
WAS Instance
Admin
(Secondary)
Business DB
(RAC 3)
Center-Cut
Admin DB
(RAC 3)
Engine
Engine
Engine
Engine
Engine
Engine
Center-Cut
Admin DB
(RAC 3)Center-Cut
Admin DB
Business DB
(RAC 3)
Business DB
Remote
Call
Fail Over & Recovery
Feature #1
 설정 용이성
– Job 실행 중 Job 설정 실시간 변경으로 부하 조절 가능
– WAS CPU Usage 기반 온라인 업무 부하 자동 조정
– Job 별 트랜잭션 Timeout 개발 설정 지원
– 개별 스케줄러별 Job 실행 정책 재정의 가능
 모니터링
– 장애 내용의 통합 관리
– 업무 로직 구동중 Error 발생 위치 추적 용이
– 업무 장애에 대한 실시간 Notification ( SMS 발송 )
 고가용성
– Admin / Engine / WAS Online Crash 시 자동 Recovery 지
원으로 장애상황에서의 트랜잭션 보장
– 유지보수시간 설정 기능으로 작업 취소 없이 작업 가능
Feature #2
 확장성
– 멀티 도메인 지원
– 업무 전처리,후처리 확장 지원
– Admin - Engine Agent의 분리구조로 환경이 제공하는 한
무한대의 확장 가능
– 외부 인터페이스와 연계 가능(배치, Control-M 등)
– Job 별로 Input, Output Parameter 명시적 설정 및
Validation 지원
 싞뢰성
– 중단된 JOB, 장애 발생 JOB의 실행 위치 조정(Thread
Relocation) & 재처리 기능 제공
– Lock 등으로 인한 처리 장애 이벤트의 기록 & 자동 Retry
– WAS Online 장애시 일정기간 대기 후 자동복구 기능 제공
Admin UI
Resume
Run
Cancel Suspend
Modify
Refresh
Execution Details
Job Instance Info
Auto Refresh
Running job list
Retry
Count
Tx
Timeout
Job
Interval
Commit
Unit
WAS
CPU
Usage
Job Setup Management
Policy Management
Schedule Management
Event view
Demo
Q&A
조인석 (isi.cho@samsung.com)
Thank you

More Related Content

What's hot

MicroCPH - Managing data consistency in a microservice architecture using Sagas
MicroCPH - Managing data consistency in a microservice architecture using SagasMicroCPH - Managing data consistency in a microservice architecture using Sagas
MicroCPH - Managing data consistency in a microservice architecture using SagasChris Richardson
 
[오픈소스컨설팅] Atlassian Confluence User Guide Part-1
[오픈소스컨설팅] Atlassian Confluence User Guide Part-1[오픈소스컨설팅] Atlassian Confluence User Guide Part-1
[오픈소스컨설팅] Atlassian Confluence User Guide Part-1Ji-Woong Choi
 
Domain Driven Design in an Agile World
Domain Driven Design in an Agile WorldDomain Driven Design in an Agile World
Domain Driven Design in an Agile WorldLorraine Steyn
 
Spark 의 핵심은 무엇인가? RDD! (RDD paper review)
Spark 의 핵심은 무엇인가? RDD! (RDD paper review)Spark 의 핵심은 무엇인가? RDD! (RDD paper review)
Spark 의 핵심은 무엇인가? RDD! (RDD paper review)Yongho Ha
 
Kong Summit 2018 - Microservices: decomposing applications for testability an...
Kong Summit 2018 - Microservices: decomposing applications for testability an...Kong Summit 2018 - Microservices: decomposing applications for testability an...
Kong Summit 2018 - Microservices: decomposing applications for testability an...Chris Richardson
 
stackconf 2023 | Practical introduction to OpenTelemetry tracing by Nicolas F...
stackconf 2023 | Practical introduction to OpenTelemetry tracing by Nicolas F...stackconf 2023 | Practical introduction to OpenTelemetry tracing by Nicolas F...
stackconf 2023 | Practical introduction to OpenTelemetry tracing by Nicolas F...NETWAYS
 
Kafka as an Event Store - is it Good Enough?
Kafka as an Event Store - is it Good Enough?Kafka as an Event Store - is it Good Enough?
Kafka as an Event Store - is it Good Enough?Guido Schmutz
 
Global Payment Reference Architecture
Global Payment Reference ArchitectureGlobal Payment Reference Architecture
Global Payment Reference ArchitectureRamadas MV
 
MicroServices at Netflix - challenges of scale
MicroServices at Netflix - challenges of scaleMicroServices at Netflix - challenges of scale
MicroServices at Netflix - challenges of scaleSudhir Tonse
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven ArchitectureStefan Norberg
 
Building better security for your API platform using Azure API Management
Building better security for your API platform using Azure API ManagementBuilding better security for your API platform using Azure API Management
Building better security for your API platform using Azure API ManagementEldert Grootenboer
 
Observability for Integration Using WSO2 Enterprise Integrator
Observability for Integration Using WSO2 Enterprise IntegratorObservability for Integration Using WSO2 Enterprise Integrator
Observability for Integration Using WSO2 Enterprise IntegratorWSO2
 
IT Service Catalog vs Service Portfolio
IT Service Catalog vs Service PortfolioIT Service Catalog vs Service Portfolio
IT Service Catalog vs Service PortfolioEvergreen Systems
 
Event-driven Microservices with Python and Apache Kafka with Dave Klein | Ka...
Event-driven Microservices with Python and Apache Kafka with Dave Klein  | Ka...Event-driven Microservices with Python and Apache Kafka with Dave Klein  | Ka...
Event-driven Microservices with Python and Apache Kafka with Dave Klein | Ka...HostedbyConfluent
 

What's hot (20)

MicroCPH - Managing data consistency in a microservice architecture using Sagas
MicroCPH - Managing data consistency in a microservice architecture using SagasMicroCPH - Managing data consistency in a microservice architecture using Sagas
MicroCPH - Managing data consistency in a microservice architecture using Sagas
 
[오픈소스컨설팅] Atlassian Confluence User Guide Part-1
[오픈소스컨설팅] Atlassian Confluence User Guide Part-1[오픈소스컨설팅] Atlassian Confluence User Guide Part-1
[오픈소스컨설팅] Atlassian Confluence User Guide Part-1
 
Domain Driven Design in an Agile World
Domain Driven Design in an Agile WorldDomain Driven Design in an Agile World
Domain Driven Design in an Agile World
 
ITIL V3 Overview
ITIL V3 OverviewITIL V3 Overview
ITIL V3 Overview
 
Spark 의 핵심은 무엇인가? RDD! (RDD paper review)
Spark 의 핵심은 무엇인가? RDD! (RDD paper review)Spark 의 핵심은 무엇인가? RDD! (RDD paper review)
Spark 의 핵심은 무엇인가? RDD! (RDD paper review)
 
Kong Summit 2018 - Microservices: decomposing applications for testability an...
Kong Summit 2018 - Microservices: decomposing applications for testability an...Kong Summit 2018 - Microservices: decomposing applications for testability an...
Kong Summit 2018 - Microservices: decomposing applications for testability an...
 
stackconf 2023 | Practical introduction to OpenTelemetry tracing by Nicolas F...
stackconf 2023 | Practical introduction to OpenTelemetry tracing by Nicolas F...stackconf 2023 | Practical introduction to OpenTelemetry tracing by Nicolas F...
stackconf 2023 | Practical introduction to OpenTelemetry tracing by Nicolas F...
 
Kafka as an Event Store - is it Good Enough?
Kafka as an Event Store - is it Good Enough?Kafka as an Event Store - is it Good Enough?
Kafka as an Event Store - is it Good Enough?
 
Global Payment Reference Architecture
Global Payment Reference ArchitectureGlobal Payment Reference Architecture
Global Payment Reference Architecture
 
MicroServices at Netflix - challenges of scale
MicroServices at Netflix - challenges of scaleMicroServices at Netflix - challenges of scale
MicroServices at Netflix - challenges of scale
 
Domain driven design
Domain driven designDomain driven design
Domain driven design
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven Architecture
 
Microservice intro
Microservice introMicroservice intro
Microservice intro
 
Microservices
MicroservicesMicroservices
Microservices
 
ITSM Presentation
ITSM PresentationITSM Presentation
ITSM Presentation
 
Building better security for your API platform using Azure API Management
Building better security for your API platform using Azure API ManagementBuilding better security for your API platform using Azure API Management
Building better security for your API platform using Azure API Management
 
Observability for Integration Using WSO2 Enterprise Integrator
Observability for Integration Using WSO2 Enterprise IntegratorObservability for Integration Using WSO2 Enterprise Integrator
Observability for Integration Using WSO2 Enterprise Integrator
 
Introduction to microservices
Introduction to microservicesIntroduction to microservices
Introduction to microservices
 
IT Service Catalog vs Service Portfolio
IT Service Catalog vs Service PortfolioIT Service Catalog vs Service Portfolio
IT Service Catalog vs Service Portfolio
 
Event-driven Microservices with Python and Apache Kafka with Dave Klein | Ka...
Event-driven Microservices with Python and Apache Kafka with Dave Klein  | Ka...Event-driven Microservices with Python and Apache Kafka with Dave Klein  | Ka...
Event-driven Microservices with Python and Apache Kafka with Dave Klein | Ka...
 

Similar to Anyframe Enterprise JAVA Center-cut Framework

MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...문기 박
 
MySQL 상태 메시지 분석 및 활용
MySQL 상태 메시지 분석 및 활용MySQL 상태 메시지 분석 및 활용
MySQL 상태 메시지 분석 및 활용I Goo Lee
 
Custom DevOps Monitoring System in MelOn (with InfluxDB + Telegraf + Grafana)
Custom DevOps Monitoring System in MelOn (with InfluxDB + Telegraf + Grafana)Custom DevOps Monitoring System in MelOn (with InfluxDB + Telegraf + Grafana)
Custom DevOps Monitoring System in MelOn (with InfluxDB + Telegraf + Grafana)Seungmin Yu
 
Monitoring System for DevOps - Case of MelOn
Monitoring System for DevOps - Case of MelOnMonitoring System for DevOps - Case of MelOn
Monitoring System for DevOps - Case of MelOnDataya Nolja
 
IBM WAS ND v8.5.5 소개자료
IBM WAS ND v8.5.5 소개자료IBM WAS ND v8.5.5 소개자료
IBM WAS ND v8.5.5 소개자료JungWoon Lee
 
[AWS Dev Day] 이머징 테크 | AWS 서버리스를 이용하여 IoT 수준의 메세지 폭풍을 처리하는 방법 - 김민성 AWS 솔루션즈 ...
[AWS Dev Day] 이머징 테크 | AWS 서버리스를 이용하여 IoT 수준의 메세지 폭풍을 처리하는 방법 - 김민성 AWS 솔루션즈 ...[AWS Dev Day] 이머징 테크 | AWS 서버리스를 이용하여 IoT 수준의 메세지 폭풍을 처리하는 방법 - 김민성 AWS 솔루션즈 ...
[AWS Dev Day] 이머징 테크 | AWS 서버리스를 이용하여 IoT 수준의 메세지 폭풍을 처리하는 방법 - 김민성 AWS 솔루션즈 ...Amazon Web Services Korea
 
WiseMon 제품소개서
WiseMon 제품소개서WiseMon 제품소개서
WiseMon 제품소개서heo ki haeng
 
Aurora MySQL Backtrack을 이용한 빠른 복구 방법 - 진교선 :: AWS Database Modernization Day 온라인
Aurora MySQL Backtrack을 이용한 빠른 복구 방법 - 진교선 :: AWS Database Modernization Day 온라인Aurora MySQL Backtrack을 이용한 빠른 복구 방법 - 진교선 :: AWS Database Modernization Day 온라인
Aurora MySQL Backtrack을 이용한 빠른 복구 방법 - 진교선 :: AWS Database Modernization Day 온라인Amazon Web Services Korea
 
한대희 Web proxy_개발_2006년11월_pas_ktf
한대희 Web proxy_개발_2006년11월_pas_ktf한대희 Web proxy_개발_2006년11월_pas_ktf
한대희 Web proxy_개발_2006년11월_pas_ktfDaehee Han
 
개발자를 위한 클라우드 태권 세미나 : Rankwave 이용 사례
개발자를 위한 클라우드 태권 세미나 : Rankwave 이용 사례개발자를 위한 클라우드 태권 세미나 : Rankwave 이용 사례
개발자를 위한 클라우드 태권 세미나 : Rankwave 이용 사례Amazon Web Services Korea
 
지금 핫한 Real-time In-memory Stream Processing 이야기
지금 핫한 Real-time In-memory Stream Processing 이야기지금 핫한 Real-time In-memory Stream Processing 이야기
지금 핫한 Real-time In-memory Stream Processing 이야기Ted Won
 
클라우드 환경에서 알아야할 성능 이야기
클라우드 환경에서 알아야할 성능 이야기클라우드 환경에서 알아야할 성능 이야기
클라우드 환경에서 알아야할 성능 이야기YoungSu Son
 
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable FunctionsJongin Lee
 
모니터링 영역의 변천사_클라우드, 디지털 경험까지)
모니터링 영역의 변천사_클라우드, 디지털 경험까지)모니터링 영역의 변천사_클라우드, 디지털 경험까지)
모니터링 영역의 변천사_클라우드, 디지털 경험까지)IMQA
 
[오픈소스컨설팅]Performance Tuning How To
[오픈소스컨설팅]Performance Tuning How To[오픈소스컨설팅]Performance Tuning How To
[오픈소스컨설팅]Performance Tuning How ToJi-Woong Choi
 
초초초 (초고속 초저지연 초연결) 5G IoT 플랫폼 개발 이야기
초초초 (초고속 초저지연 초연결) 5G IoT 플랫폼 개발 이야기초초초 (초고속 초저지연 초연결) 5G IoT 플랫폼 개발 이야기
초초초 (초고속 초저지연 초연결) 5G IoT 플랫폼 개발 이야기ksdc2019
 
프로그래밍 패러다임의 진화 및 Spring의 금융권 적용
프로그래밍 패러다임의 진화 및 Spring의 금융권 적용프로그래밍 패러다임의 진화 및 Spring의 금융권 적용
프로그래밍 패러다임의 진화 및 Spring의 금융권 적용중선 곽
 
091106kofpublic 091108170852-phpapp02 (번역본)
091106kofpublic 091108170852-phpapp02 (번역본)091106kofpublic 091108170852-phpapp02 (번역본)
091106kofpublic 091108170852-phpapp02 (번역본)Taegil Heo
 
[오픈소스컨설팅]Java Performance Tuning
[오픈소스컨설팅]Java Performance Tuning[오픈소스컨설팅]Java Performance Tuning
[오픈소스컨설팅]Java Performance TuningJi-Woong Choi
 
웹서버 부하테스트 실전 노하우
웹서버 부하테스트 실전 노하우웹서버 부하테스트 실전 노하우
웹서버 부하테스트 실전 노하우IMQA
 

Similar to Anyframe Enterprise JAVA Center-cut Framework (20)

MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
 
MySQL 상태 메시지 분석 및 활용
MySQL 상태 메시지 분석 및 활용MySQL 상태 메시지 분석 및 활용
MySQL 상태 메시지 분석 및 활용
 
Custom DevOps Monitoring System in MelOn (with InfluxDB + Telegraf + Grafana)
Custom DevOps Monitoring System in MelOn (with InfluxDB + Telegraf + Grafana)Custom DevOps Monitoring System in MelOn (with InfluxDB + Telegraf + Grafana)
Custom DevOps Monitoring System in MelOn (with InfluxDB + Telegraf + Grafana)
 
Monitoring System for DevOps - Case of MelOn
Monitoring System for DevOps - Case of MelOnMonitoring System for DevOps - Case of MelOn
Monitoring System for DevOps - Case of MelOn
 
IBM WAS ND v8.5.5 소개자료
IBM WAS ND v8.5.5 소개자료IBM WAS ND v8.5.5 소개자료
IBM WAS ND v8.5.5 소개자료
 
[AWS Dev Day] 이머징 테크 | AWS 서버리스를 이용하여 IoT 수준의 메세지 폭풍을 처리하는 방법 - 김민성 AWS 솔루션즈 ...
[AWS Dev Day] 이머징 테크 | AWS 서버리스를 이용하여 IoT 수준의 메세지 폭풍을 처리하는 방법 - 김민성 AWS 솔루션즈 ...[AWS Dev Day] 이머징 테크 | AWS 서버리스를 이용하여 IoT 수준의 메세지 폭풍을 처리하는 방법 - 김민성 AWS 솔루션즈 ...
[AWS Dev Day] 이머징 테크 | AWS 서버리스를 이용하여 IoT 수준의 메세지 폭풍을 처리하는 방법 - 김민성 AWS 솔루션즈 ...
 
WiseMon 제품소개서
WiseMon 제품소개서WiseMon 제품소개서
WiseMon 제품소개서
 
Aurora MySQL Backtrack을 이용한 빠른 복구 방법 - 진교선 :: AWS Database Modernization Day 온라인
Aurora MySQL Backtrack을 이용한 빠른 복구 방법 - 진교선 :: AWS Database Modernization Day 온라인Aurora MySQL Backtrack을 이용한 빠른 복구 방법 - 진교선 :: AWS Database Modernization Day 온라인
Aurora MySQL Backtrack을 이용한 빠른 복구 방법 - 진교선 :: AWS Database Modernization Day 온라인
 
한대희 Web proxy_개발_2006년11월_pas_ktf
한대희 Web proxy_개발_2006년11월_pas_ktf한대희 Web proxy_개발_2006년11월_pas_ktf
한대희 Web proxy_개발_2006년11월_pas_ktf
 
개발자를 위한 클라우드 태권 세미나 : Rankwave 이용 사례
개발자를 위한 클라우드 태권 세미나 : Rankwave 이용 사례개발자를 위한 클라우드 태권 세미나 : Rankwave 이용 사례
개발자를 위한 클라우드 태권 세미나 : Rankwave 이용 사례
 
지금 핫한 Real-time In-memory Stream Processing 이야기
지금 핫한 Real-time In-memory Stream Processing 이야기지금 핫한 Real-time In-memory Stream Processing 이야기
지금 핫한 Real-time In-memory Stream Processing 이야기
 
클라우드 환경에서 알아야할 성능 이야기
클라우드 환경에서 알아야할 성능 이야기클라우드 환경에서 알아야할 성능 이야기
클라우드 환경에서 알아야할 성능 이야기
 
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions
 
모니터링 영역의 변천사_클라우드, 디지털 경험까지)
모니터링 영역의 변천사_클라우드, 디지털 경험까지)모니터링 영역의 변천사_클라우드, 디지털 경험까지)
모니터링 영역의 변천사_클라우드, 디지털 경험까지)
 
[오픈소스컨설팅]Performance Tuning How To
[오픈소스컨설팅]Performance Tuning How To[오픈소스컨설팅]Performance Tuning How To
[오픈소스컨설팅]Performance Tuning How To
 
초초초 (초고속 초저지연 초연결) 5G IoT 플랫폼 개발 이야기
초초초 (초고속 초저지연 초연결) 5G IoT 플랫폼 개발 이야기초초초 (초고속 초저지연 초연결) 5G IoT 플랫폼 개발 이야기
초초초 (초고속 초저지연 초연결) 5G IoT 플랫폼 개발 이야기
 
프로그래밍 패러다임의 진화 및 Spring의 금융권 적용
프로그래밍 패러다임의 진화 및 Spring의 금융권 적용프로그래밍 패러다임의 진화 및 Spring의 금융권 적용
프로그래밍 패러다임의 진화 및 Spring의 금융권 적용
 
091106kofpublic 091108170852-phpapp02 (번역본)
091106kofpublic 091108170852-phpapp02 (번역본)091106kofpublic 091108170852-phpapp02 (번역본)
091106kofpublic 091108170852-phpapp02 (번역본)
 
[오픈소스컨설팅]Java Performance Tuning
[오픈소스컨설팅]Java Performance Tuning[오픈소스컨설팅]Java Performance Tuning
[오픈소스컨설팅]Java Performance Tuning
 
웹서버 부하테스트 실전 노하우
웹서버 부하테스트 실전 노하우웹서버 부하테스트 실전 노하우
웹서버 부하테스트 실전 노하우
 

Anyframe Enterprise JAVA Center-cut Framework

  • 1. Samsung SDS, Framework Group JAVA Center-Cut 조인석 2010. 11. 18
  • 2. Agenda  What is Center-Cut?  Scenario  Architecture  Module Process  Deployment View  Fail-Over & Recovery  Feature  Admin UI  Demo  Q & A
  • 4. Center-Cut is..  대량 데이터를 온라인에서 효율적으로 일괄처리 되도록 구현한 솔루션  1건씩 처리하면서 고유 거래처리와 환원자료생성, 후처 리로그 생성, 전표 발생 등의 단위 트랜잭션을 수만건 내 지 수천만건을 병렬 처리하여 짧은 시간내에 처리 하는 개념  예를 들어 수천만건의 입금거래를 단말에서 수행하지 않 고 Center 에서 일정시점까지 축적된 자료를 기준으로 Cut 하여 처리하는 방식  금융 차세대 시스템의 핵심 요소
  • 5. … [Thread 2] 1000001 ~ 2000000 [Thread 1] 1 ~ 1000000 [Thread 3] 2000001 ~ 3000000 [Thread 40] 39000001 ~ 40000000 [Thread 4] 3000001 ~ 4000000 [Thread 5] 4000001 ~ 5000000 Scenario #1 [Thread 6] 5000001 ~ 6000000 [Thread 7] 6000001 ~ 7000000 [Thread 8] 7000001 ~ 8000000 [Thread 9] 8000001 ~ 9000000 [Thread 10] 9000001 ~ 10000000 총 4 천만건 Job List Admin Engine List JOB PYY0 주간 일괄 입금 처리 40 Thread 4 Engine Engine 1 Thread1 Thread2 Thread3 Thread4 Thread5 Thread6 Thread7 Thread8 Thread9 Thread10 Engine 2 Thread11 Thread12 Thread13 Thread14 Thread15 Thread16 Thread17 Thread18 Thread19 Thread20 Engine 3 Thread21 Thread22 Thread23 Thread24 Thread25 Thread26 Thread27 Thread28 Thread29 Thread30 Engine 4 Thread31 Thread32 Thread33 Thread34 Thread35 Thread36 Thread37 Thread38 Thread39 Thread40
  • 6. Thread 1 100 100 100 … 100 WASInstance4 Thread 2 100 100 100 … 100 Thread 3 100 100 100 … 100 Thread 10 100 100 100 … 100 … Thread 1 100 100 100 … 100 WASInstance3 Thread 2 100 100 100 … 100 Thread 3 100 100 100 … 100 Thread 10 100 100 100 … 100 … Thread 1 100 100 100 … 100 WASInstance2 Thread 2 100 100 100 … 100 Thread 3 100 100 100 … 100 Thread 10 100 100 100 … 100 … Engine 4 - 10 Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread40 Engine 3 - 10 Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread30 Engine 2 - 10 Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread20 Engine 1 - 10 Thread Thread1 Thread2 Thread3 Thread4 Thread5 Thread6 Thread7 Thread8 Thread9 Thread10 Scenario #2 JOB PYY0 주간 일괄 입금 처리 100 Commit Unit 10 Job Interval 50% WAS CPU Usage Thread 1 100 100 100 … 100 WASInstance1 Thread 2 100 100 100 … 100 Thread 3 100 100 100 … 100 Thread 10 100 100 100 … 100 …
  • 7. Thread 1 100 100 100 … 100 WASOnline1 Thread 2 100 100 100 … 100 Thread 3 100 100 100 … 100 Thread 10 100 100 100 … 100 … Scenario #3 JOB PYY0 주간 일괄 입금 처리 300 sec Tx Timeout 3 Retry count 12 hour Maximum Processing time Failed Commit Units
  • 8. Policy Data Primary SecondaryAdmin Engine 1 Thread Pool OLTP Driver Thread Thread Thread Thread Thread WAS Instance 1 Hessian Adapter Business Logic Thread Thread Thread Thread Thread Engine 2 Thread Pool OLTP Driver WAS Instance 2 Hessian Adapter Business Logic Engine 3 Thread Pool OLTP Driver WAS Instance 3 Hessian Adapter Business Logic Engine 4 Thread Pool OLTP Driver WAS Instance 4 Hessian Adapter Business Logic Architecture Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread Thread DB Manage -ment Layer Thread Control Layer Execution Control Layer Online Execution Layer Resource Layer
  • 9. WAS WAS WAS WAS Admin Business DB Admin DB F/W module Develop Module Remote Call Online BatchScheduler Engine Engine Engine Engine WAS WAS Online Instance Broker ItemReader DAO DAO Service & Business ItemWriter Module Process 1 구동 요청 2 분배정책 로딩 3 쓰레드 할당 4 처리 요청 5 처리대상 리스트 획득 6 건별 처리 7 결과 입력 8 처리 완료 9 관리DB 업데이트
  • 10. Domain 1 Admin (Secondary) WAS Instance WAS Instance WAS Instance WAS Instance WAS Instance WAS Instance Admin (Primary) WAS Instance WAS Instance WAS Instance WAS Instance WAS Instance WAS Instance External Scheduler BATCH ONLINE Center-Cut Scheduler WAS Instance WAS Instance WAS Instance WAS Instance WAS Instance WAS Instance Admin (Secondary) Business DB Center-Cut Admin DB Engine Engine Engine Engine Engine Engine Center-Cut Admin DBCenter-Cut Admin DB Business DB Business DB Deployment View
  • 11. 성능 사례 – S 생보 차세대 시스템
  • 12. Admin (Secondary) WAS Instance WAS Instance WAS Instance WAS Instance WAS Instance WAS Instance Admin (Primary) WAS Instance WAS Instance WAS Instance WAS Instance WAS Instance WAS Instance Center-Cut Scheduler WAS Instance WAS Instance WAS Instance WAS Instance WAS Instance WAS Instance Admin (Secondary) Business DB (RAC 3) Center-Cut Admin DB (RAC 3) Engine Engine Engine Engine Engine Engine Center-Cut Admin DB (RAC 3)Center-Cut Admin DB Business DB (RAC 3) Business DB Remote Call Fail Over & Recovery
  • 13. Feature #1  설정 용이성 – Job 실행 중 Job 설정 실시간 변경으로 부하 조절 가능 – WAS CPU Usage 기반 온라인 업무 부하 자동 조정 – Job 별 트랜잭션 Timeout 개발 설정 지원 – 개별 스케줄러별 Job 실행 정책 재정의 가능  모니터링 – 장애 내용의 통합 관리 – 업무 로직 구동중 Error 발생 위치 추적 용이 – 업무 장애에 대한 실시간 Notification ( SMS 발송 )  고가용성 – Admin / Engine / WAS Online Crash 시 자동 Recovery 지 원으로 장애상황에서의 트랜잭션 보장 – 유지보수시간 설정 기능으로 작업 취소 없이 작업 가능
  • 14. Feature #2  확장성 – 멀티 도메인 지원 – 업무 전처리,후처리 확장 지원 – Admin - Engine Agent의 분리구조로 환경이 제공하는 한 무한대의 확장 가능 – 외부 인터페이스와 연계 가능(배치, Control-M 등) – Job 별로 Input, Output Parameter 명시적 설정 및 Validation 지원  싞뢰성 – 중단된 JOB, 장애 발생 JOB의 실행 위치 조정(Thread Relocation) & 재처리 기능 제공 – Lock 등으로 인한 처리 장애 이벤트의 기록 & 자동 Retry – WAS Online 장애시 일정기간 대기 후 자동복구 기능 제공
  • 16. Resume Run Cancel Suspend Modify Refresh Execution Details Job Instance Info Auto Refresh Running job list
  • 21. Demo