2. 예시
분산시스템은 아래와 같은 분야에서 사용 가능하다.
- Finance and commerce(금융 상거래)
eCommerce(e.g Amazon, eBay, Paypal, Online banking and trading
- 인포메이션 소사이어티(SNS)
Web information and search engines, ebooks, wikipedia social networking ..
- Creative industries and entertainment
온라인 게임, 음악, User generated content(YouTube, Flickr)
- Healthcare
온라인 진료, patient 모니터링
- Education
이러닝, Virtual 러닝
- Science
The grid as an enabling technology for collaboration between scientists
- Environmental management
-------------------------------------------------------------------------------------------------------
(1) Web search
구글의 경우 웹 서치 시장의 리더라고 할 수 있다.
중요 사항
- 물리적으로 거대하며 수 많은 사용자가 동시에 자원에 접근한다.
- Distributed file system
- Structured distributed storage system
- 락 서비스 (A lock service) *사용자 간의 충돌이 없어야 한다.
- 거대한 병렬 분산 시스템을 프로그램 모델은 관리 및 지원한다.
(2) Massively multiplayer online games (MMOGs)
인터넷의 지속적인 서비스로 수 많은 사용자의 상호작용을 이끌어내며, 게임 환경에 몰입할 수 있는 경험을 제공한다.
(EVE, Everquest)
(3) Financial trading
- 넓은 범위의 정보 자원에 대해 리얼 타임(real-time)으로 제공되어야 한다.
- 금융권의 processing interest(이자), communication의 특성을 고려하여 높은 신뢰성과 정확한 시간(적시성)이 필요.
3. 내용
(1) Focus on resource sharing
- Resource sharing (자원 할당)
* 하드웨어 장치(printer)
* 데이터 자원 (files)
* 구체적 기능 자원(serch engines)
- Service
* 사용자의 응용프로그램들을 연결 관리
- Server
* 많은 클라이언트들을 주문을 응답하며, 요구에 즉시 반응
(2) Issue
- Openness (확장성 장점과 단점)
시스템 다양한 방법으로 확장이 가능하다 하지만 이 부분은 장점이자 단점이며,
확장의 경우 단계와 방법을 명시하는 표준화 과정을 거쳐야만 한다. (유지보수)
- Heterogeneity (이질성 문제)
*Network, Computer, OS, Programming Language, Developer
이러한 문제를 해결하기 위해 미들웨어를 설치한다.
(Masking)
- Security (보안 문제)
*Confidentiality(기밀성), Integrity(무결성), Availability(가용성)
보안의 문제는 자원을 공유하는 단위가 커질 수록 Risk는 증가 된다.
(Denial of service attacks)
- Scalability (확장 가능성)
가용성을 보장하기 위한 조건
* 리소스 확장에 있어서 합리적인 조절이 가능해야 한다.
* Controlling에 있어서 자원의 Loss가 없어야 한다.
* Preventing software resources running out
* 병목구간(Bottleneck)을 회피해야 한다.
- Failure handling (실패 처리)
* 실패 지점 찾기
* 실패 구간 Masking(hiding) : 사용자는 BACK단의 문제에는 관심이 없다. 직접 받는 서비스에 영향을 미치지 못하면
오류는 일어나지 않은 것이다.
* 결함 포용 Tolerating Failure
* Recovery from failures : HOT, COLD DB
- Concurrency (일치성)
'Operation must be synchronized in such a way that its data remains consistent'
- Transparency (투명성)
* Access transparency
* Location ''
* Concurrency ''
* Replication ''
* Failure ''
* Performance ''
* Scaling ''
* Network ''
- Quality of service (QOS)
'The ability of systems to meet such deadlines'
'대학원(~2019.07) > 분산처리(소프트웨어공학)' 카테고리의 다른 글
Chapter 3 - Time and Global states[기간과 가상시간(2/2)] (0) | 2017.04.11 |
---|---|
Chapter 3 - Time and Global States[시간과 가상시간(1/2)] (0) | 2017.03.29 |
Chapter 2 - System Models [시스템 모델(2/2)] (0) | 2017.03.28 |
Chapter 2 - System Models [시스템 모델 (1/2)] (0) | 2017.03.23 |
Chapter 1 - Characterization of Distributed System [분산 시스템의 성격 (1/2)] (0) | 2017.03.14 |