초보자를 위한 분산 캐시 활용 전략

Similar documents
Web Application Hosting in the AWS Cloud Contents 개요 가용성과 확장성이 높은 웹 호스팅은 복잡하고 비용이 많이 드는 사업이 될 수 있습니다. 전통적인 웹 확장 아키텍처는 높은 수준의 안정성을 보장하기 위해 복잡한 솔루션으로 구현

PowerPoint 프레젠테이션

Cloud Friendly System Architecture

PowerPoint 프레젠테이션

10.ppt

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

결과보고서

untitled

FMX M JPG 15MB 320x240 30fps, 160Kbps 11MB View operation,, seek seek Random Access Average Read Sequential Read 12 FMX () 2

MS-SQL SERVER 대비 기능

RED HAT JBoss Data Grid (JDG)? KANGWUK HEO Middleware Solu6on Architect Service Team, Red Hat Korea 1

Portal_9iAS.ppt [읽기 전용]

1217 WebTrafMon II

Intra_DW_Ch4.PDF

PowerPoint 프레젠테이션

Microsoft PowerPoint - CNVZNGWAIYSE.pptx

vm-웨어-01장

NoSQL

thesis

<4D F736F F D205B4354BDC9C3FEB8AEC6F7C6AE5D3131C8A35FC5ACB6F3BFECB5E520C4C4C7BBC6C320B1E2BCFA20B5BFC7E2>

Mango220 Android How to compile and Transfer image to Target

항목

untitled

PowerPoint 프레젠테이션

Cache_cny.ppt [읽기 전용]

º¸µµ¿Â

Ç¥Áö

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

untitled

Oracle Database 10g: Self-Managing Database DB TSC

Oracle9i Real Application Clusters

<FEFF E002D B E E FC816B CBDFC1B558B202E6559E830EB C28D9>

DBMS & SQL Server Installation Database Laboratory

Macaron Cooker Manual 1.0.key

리뉴얼 xtremI 최종 softcopy

CONTENTS CONTENTS CONTENT 1. SSD & HDD 비교 2. SSD 서버 & HDD 서버 비교 3. LSD SSD 서버 & HDD 서버 비교 4. LSD SSD 서버 & 글로벌 SSD 서버 비교 2

TTA Verified : HomeGateway :, : (NEtwork Testing Team)

MySQL-Ch10

Analyst Briefing

歯MW-1000AP_Manual_Kor_HJS.PDF

第 1 節 組 織 11 第 1 章 檢 察 의 組 織 人 事 制 度 등 第 1 項 大 檢 察 廳 第 1 節 組 대검찰청은 대법원에 대응하여 수도인 서울에 위치 한다(검찰청법 제2조,제3조,대검찰청의 위치와 각급 검찰청의명칭및위치에관한규정 제2조). 대검찰청에 검찰총장,대

歯sql_tuning2

Voice Portal using Oracle 9i AS Wireless

62

DocsPin_Korean.pages

목 차

쿠폰형_상품소개서

Part Part

£01¦4Àå-2

½ºÅ丮ÅÚ¸µ3_³»Áö

272*406OSAKAÃÖÁ¾-¼öÁ¤b64ٽÚ

PART

디지털데일리_스페셜리포트 1부.indd

Microsoft PowerPoint - 6.pptx

PCServerMgmt7

슬라이드 1

디지털포렌식학회 논문양식

비식별화 기술 활용 안내서-최종수정.indd

Microsoft PowerPoint - eSlim SV [ ]

제목 레이아웃

ETL_project_best_practice1.ppt

SMB_ICMP_UDP(huichang).PDF

The Self-Managing Database : Automatic Health Monitoring and Alerting

AGENDA 모바일 산업의 환경변화 모바일 클라우드 서비스의 등장 모바일 클라우드 서비스 융합사례

Microsoft PowerPoint - 알고리즘_1주차_2차시.pptx

Connection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET

Mstage.PDF

Result Cache 동작원리및활용방안 엑셈컨설팅본부 /DB 컨설팅팀김철환 개요 ORACLE DBMS 를사용하는시스템에서 QUERY 성능은무엇보다중요한요소중하나이며그 성능과직접적인관련이있는것이 I/O 이다. 많은건수를 ACCESS 해야만원하는결과값을얻을수있는 QUER

KARAAUTO_4¿ù.qxd-ÀÌÆå.ps, page Normalize

ecorp-프로젝트제안서작성실무(양식3)

MySQL-Ch05

HTML5가 웹 환경에 미치는 영향 고 있어 웹 플랫폼 환경과는 차이가 있다. HTML5는 기존 HTML 기반 웹 브라우저와의 호환성을 유지하면서도, 구조적인 마크업(mark-up) 및 편리한 웹 폼(web form) 기능을 제공하고, 리치웹 애플리케이 션(RIA)을

Orcad Capture 9.x

특허청구의 범위 청구항 1 게임 서버 또는 미들웨어에 의해, 사용자 단말기로부터, GPS 정보, IP 정보, 중계기 정보 중 적어도 하나를 이 용한 위치 정보와, 상기 사용자 단말기에 설정된 언어 종류를 포함하는 사용자 정보를 수신하는 단계; 상기 게임 서버 또는 미들


KISA-GD

Chap7.PDF

R50_51_kor_ch1

<30362E20C6EDC1FD2DB0EDBFB5B4EBB4D420BCF6C1A42E687770>

TTA Journal No.157_서체변경.indd

Microsoft Word - 조병호

요 약 문 1. 제목 : 개인정보 오남용 유출 2차 피해 최소화 방안 2. 연구의 배경 개인정보란 살아 있는 개인에 관한 정보로서 개인을 알아볼 수 있는 정보로 해당 정보만으로는 특정 개인을 알아볼 수 없더라도 다른 정보와 쉽게 결합하여 알아볼 수 있는 것을 포함한다.

歯한글사용설명서.PDF

IPAK 윤리강령 나는 _ 한국IT전문가협회 회원으로서 긍지와 보람을 느끼며 정보시스템 활용하 자. 나는 _동료, 단체 및 국가 나아가 인류사회에 대하여 철저한 책임 의식을 가진 다. 나는 _ 활용자에 대하여 그 편익을 증진시키는데 최선을 다한다. 나는 _ 동료에 대해

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

슬라이드 1


분 기 보 고 서 (제 7 기) 사업연도 2013년 01월 01일 2013년 03월 31일 부터 까지 금융위원회 한국거래소 귀중 2013년 05월 15일 회 사 명 : 주식회사 네오위즈게임즈 대 표 이 사 : 이 기 원 본 점 소 재 지 : 경기도 성남시 분당구 구미동

Windows 8에서 BioStar 1 설치하기

슬라이드 1

thesis-shk

Microsoft PowerPoint - eSlim SV [080116]

solution map_....

Microsoft PowerPoint - Session2 - Tibero 6

DW 개요.PDF

Social Network

Week13

untitled

PowerPoint 프레젠테이션

단계

Transcription:

초보자를위한분산캐시활용전략 강대명 charsyam@naver.com

우리가꿈꾸는서비스

우리가꿈꾸는서비스

우리가꿈꾸는서비스

우리가꿈꾸는서비스

그러나현실은?

서비스에필요한것은?

서비스에필요한것은? 핵심적인기능

서비스에필요한것은? 핵심적인기능

서비스에필요한것은? 핵심적인기능

서비스에필요한것은? 적절한기능 서비스안정성

트위터에매일고래만보이면?

트위터에매일고래만보이면?

처음부터페이스북같은 서비스를만들수있을까요?

여기서잠깐!!! 페이스북하루로그인 5 억명!!!

여기서잠깐!!! 페이스북한달로그인 8 억명!!!

이런분만가능합니다.

기초적인 ShortUrl 서비스

Bit.ly

기본적인서비스구성 Read/Write CLIENT WEB DB

웹서버가병목이면?

웹서버의확장 CLIENT WEB WEB WEB Read/Write DB

DB 에병목이온다면?

서비스의데이터에대 한이해가필요!!!

가정 1: 일반적인서비스는? 800 reads/s Read > Write 200 writes/s

분석결론 Read 80%, Read 를분산하자!!!

일반적인 DB 구성 Master Slave REPLICATION/FailOver

일반적인 DB 구성 모든 Traffic 은 Master 가처리 Slave 는장애대비 Master REPLICATION/FailOver Slave

Read 를분산하면?

Client ONLY WRITE Master Only READ REPLICATION Slave Slave Slave

Read/1 Server Read/2 Server 800 reads/s 200 writes/s 400 reads/s 200 writes/s 400 reads/s 200 writes/s

Slave 만계속추가하 면서비스가좋아질까?

Write 가늘어날수록 성능은떨어진다.

WHY?

WHY? 장비가늘어나면성능이 늘어나야되는거아닌가?

Write 의증대로인한 I/O 상황 50 reads/s 50 reads/s 50 reads/s 50 reads/s 50 reads/s 700 writes/s 700 writes/s 700 writes/s 700 writes/s 700 writes/s

분석결론 Write 의비중이커지면 결국 Write 를분산하자!!!

파티셔닝 (Partition)

Scalable Partitioning Client PART 1 Web Server DBMS PART 2 Web Server DBMS

Partitioning 성능 관리비용

How to Divide?

ID Size Date

How to Find?

Function O(1) L4/Proxy Function(ID) => 1, 2, 3 Function(charsyam1) => 1 Function(charsyam2) => 2 Function(charsyam3) => 3

User Directory Service L4/Proxy CharSyam1 is in PART1 Where is User CharSyam1

Why is Cache?

Cache 는나중에요청올결과를 미리저장해두었다가빠르게 서비스해주는것

메모리는 HDD 보다빠르다.

캐시의목적 균등한빠른속도 부하감소

General Cache Layer Application Server READ WRITE Storage Layer Cache DBMS WRITE UPDATE

Cache or DataStore Memcache Redis

Connect to Memcache Conn = memcache.connect( server1, server2, server3 ); Client Client Client Client memcached memcached memcached

Memcache with Moxi Client Client Client Client moxi moxi memcached memcached memcached memcached

Memcache with Moxi Conn = memcache.connect( moxi_server1, moxi_server2 ); moxi -z 11811=server1:11211,server2:11211

Connect to Redis Client Memcached Master Memcached Slave Replication/Snapshot

Memcaehe Redis Data 타입 Key - Value Key Value Sorted Set, List, Hash 그외특징 LRU Max Item Size(1MB) Expire Time Replication Snapshot Atomic Atomic Operation Atomic Operation

Consistent Hashing

Origin K = 10000 N = 5 Server Server User Request Proxy Server Server Server

FAIL : Redistribution about 2000 Users K = 10000 N = 4 Server Server User Request Proxy Server Server Server

RECOVER: Redistribution about 2500 Users K = 10000 N = 5 Server Server User Request Proxy Server Server Server

Add A,B,C Server A

Add A,B,C Server A B

Add A,B,C Server A B C

Add Item 1 A 1 B C

Add Item 2 A 1 B C 2

Add Item 3,4,5 4 3 A 1 B C 2 5

Fail!! B Server 3 A 4 B C 2 5

Add Item 1 Again -> Allocated C Server 4 3 A 1 B C 2 5

Recover B Server -> Add Item 1 4 3 A 1 1 B C 2 5

Real Implementation C+2 A C+3 B+3 A+1 A+4 B B+2 C+1 A+2 B+1 C A+3

주의사항

Item Size 1~XXX KB, Item 사이즈는적을수록좋다.

변화하는데이터 변화하지않는데이터

변화하는데이터 Divide 변화하지않는데이터

간단한해결책

DB 서버 Disk는 SSD 메모리도데이터보다많이 돈돈돈!!! 최소 3~5 배이상성능향상

DB 서버 Disk 는 SSD 메모리도데이터보다많이 최소 3~5 배이상성능향상

Cache In Global Service

Memcached In Facebook Facebook and Google and Many Companies Facebook 하루 Login 5 억명 ( 한달에 8 억명 )( 최신, 밑에는작년 2010/04 자료 ) 활성사용자 7,000 만 사용자증가비율 4 일에 100 만명 Web 서버 10,000 대, Web Request 초당 2000 만번 Memcached 서버 805 대 -> 15TB, HitRate: 95% Mysq server 1,800 대 Master/Slave( 각각, 900 대 ) Mem: 25TB, SQL Query 초당 50 만번

Cache In Twitter(Old) API WEB Page Cache DB DB

Cache In Twitter(NEW) API WEB Page Cache Fragment Cache Row Cache Vector Cache DB DB DB

Redis In Wonga Using Redis for DataStore Write/Read

Redis In Instagram Using Redis for M/S Snapshot with Slave Hash For PhotoID and image Path

Q & A

Thank You!