네이버 오픈세미나 백엔드_아키텍쳐
Upcoming SlideShare
Loading in...5
×
 

네이버 오픈세미나 백엔드_아키텍쳐

on

  • 6,681 views

 

Statistics

Views

Total Views
6,681
Views on SlideShare
1,449
Embed Views
5,232

Actions

Likes
24
Downloads
48
Comments
0

14 Embeds 5,232

http://helloworld.naver.com 3012
http://onul.hiworks.co.kr 1321
http://platum.kr 661
http://m.hiworks.co.kr 136
http://feedly.com 58
http://mangastorytelling.tistory.com 24
http://172.20.48.213 9
http://www.newsblur.com 3
http://www.google.co.kr 2
http://newsblur.com 2
http://plus.url.google.com 1
http://www.inoreader.com 1
http://blog.naver.com 1
http://localhost 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

네이버 오픈세미나 백엔드_아키텍쳐 네이버 오픈세미나 백엔드_아키텍쳐 Presentation Transcript

  • 네이버
  •   웹서비스를
  •   지탱하는
  •    백엔드
  •   아키텍쳐
  •    작성자:
  •   정민우
  •    소속팀/
  •   상위부서
  •   :
  •   웹플랫폼개발랩
  •   /
  •   네이버
  •   랩스
  •    ⓒ
  •   NAVER
  •   Corp.
  •   
  • 1.개요
  •   
  • 일반
  •    
  •    3
  •   /
  •   97
  •    1.1
  •   사용자
  •    
  •    
  •    ?
  • 일반
  •    
  •    4
  •   /
  •   97
  •    1.2
  •   데이터
  •    
  •    
  •    
  •    
  •   
  • 일반
  •    
  •    5
  •   /
  •   97
  •    1.3
  •   서비스
  •   규모
  •    
  •    ?
  • 일반
  •    
  •    6
  •   /
  •   97
  •    1.3
  •   서비스
  •   규모
  •    
  •    ? ?
  • 2.
  •   개발
  •   환경
  •   
  • 일반
  •    
  •    8
  •   /
  •   97
  •    2.1
  •   OS
  •    
  •   
  • 일반
  •    
  •    9
  •   /
  •   97
  •    2.2
  •   프로그래밍
  •   언어
  •    
  •   
  • 일반
  •    
  •    10
  •   /
  •   97
  •    2.3
  •   IDE
  •    
  •    
  •    
  •    
  •   
  • 일반
  •    
  •    11
  •   /
  •   97
  •    2.4
  •   빌드
  •   툴
  •    
  •    
  •    
  •   
  • 일반
  •    
  •    12
  •   /
  •   97
  •    2.5
  •   VCS(Version
  •   Control
  •   System)
  •    
  •   
  • 일반
  •    
  •    13
  •   /
  •   97
  •    2.6
  •   CI(continuous
  •   Integration)
  •    
  •   
  • 일반
  •    
  •    14
  •   /
  •   97
  •    2.6
  •   CI(continuous
  •   Integration)
  •    
  •    
  •    
  •    
  •    
  •    
  •    
  •    
  •    
  •    
  •    
  •    Hudson
  • 일반
  •    
  •    15
  •   /
  •   97
  •    2.6
  •   CI(continuous
  •   Integration)
  •    
  •   
  • 일반
  •    
  •    16
  •   /
  •   97
  •    2.6
  •   CI(continuous
  •   Integration)
  •    
  •   
  • 일반
  •    
  •    17
  •   /
  •   97
  •    2.7
  •   배포
  •   서버
  •    
  •    d e v S ta g e re a l B u ild & D e p lo y
  • 일반
  •    
  •    18
  •   /
  •   97
  •    2.8
  •   빌드
  •   배포
  •    
  •    one
  •   click
  •   
  • 일반
  •    
  •    19
  •   /
  •   97
  •    2.8
  •   빌드
  •   배포
  •    
  •    d e v S ta g e re a l B u ild & D e p lo y
  • 3.
  •   웹
  •   서비스
  •   구조
  •   
  • 일반
  •    
  •    21
  •   /
  •   97
  •    3.1
  •   구조
  •    
  •    W e b Se ve r W e b A p p licatio n S e rv e r D atab aseH ttp N A V E R
  • 일반
  •    
  •    22
  •   /
  •   97
  •    3.2
  •   구조
  •   -
  •   Multi
  •   Server
  •    
  •    W e b Se ve r H ttp N A V E R W eb A p p licatio n S erve r D atab ase
  • 일반
  •    
  •    23
  •   /
  •   97
  •    3.3
  •   구조
  •   -
  •   Add
  •   Swich
  •    
  •    W eb Sev er H ttp N A V E R W eb A p p licatio n S erve r W eb Sev er W eb A p p licatio n S erve r
  • 일반
  •    
  •    24
  •   /
  •   97
  •    3.4
  •   구조
  •   -
  •   Add
  •   Cache
  •    
  •    W eb Sev er H ttp N A V E R W eb A p p licatio n S erve r D atab ase C ach e S erver
  • 일반
  •    
  •    25
  •   /
  •   97
  •    3.5
  •   구조
  •   -
  •   Add
  •   Batch
  •    
  •    W eb Sev er H ttp N A V E R W eb A p p licatio n Serv er D a tab a se C a ch e S e rv e r B atch S e rv e r
  • 일반
  •    
  •    26
  •   /
  •   97
  •    3.6
  •   구조
  •   -
  •   Add
  •   Logic
  •   Server
  •    
  •    W eb Sev er H ttp N A V E R W e b A p p lic atio n Se rv e r D a tab a se C ach e S erv er B atch S e rv er B u sin e ss L o g ic S e rv e r
  • 일반
  •    
  •    27
  •   /
  •   97
  •    3.7
  •   구조
  •   -
  •   NAVER
  •   서비스
  •   연동
  •    
  •    W eb Sev er H ttp A se rv ice W A S D ata b ase C ach e S erv er B atch S e rv er B u sin e ss L o g ic S e rv e r B se rv ice C se rv ice D se rv ice
  • 일반
  •    
  •    28
  •   /
  •   97
  •    3.8
  •   구조
  •   -
  •   Protocol
  •    
  •    W eb Sev er H ttp A se rv ice W A S D ata b ase C ach e S erv er B atch S e rv er B u sin e ss L o g ic S e rv e r B se rv ice C se rv ice 쑈둬 ᆺ백혤폭 사내
  •   프로토콜
  •   
  • 일반
  •    
  •    29
  •   /
  •   97
  •    3.9
  •   구조
  •   -
  •   외부
  •   서비스
  •   연동
  •    
  •    A se rv ice
  • 일반
  •    
  •    30
  •   /
  •   97
  •    3.10
  •   구조
  •   -
  •   etc
  •    
  •    - 
  •   모니터링
  •    - 
  •   게이트웨이
  •    - 
  •   서버
  •   파일
  •   정보
  •   수집
  •    -
  •   한사람이
  •   모든걸
  •   담당?!
  •    
  •   
  • 4.
  •   웹
  •   프레임워크
  •   
  • 일반
  •    
  •    32
  •   /
  •   97
  •    4.1
  •   어떤걸
  •   쓰는가
  •    Language
  •   Only?!
  •    
  •    
  •   
  • 일반
  •    
  •    33
  •   /
  •   97
  •    4.2
  •   정의
  •    
  •    •  플랫폼
  •    •  프레임워크
  •    •  라이브러리
  •   
  • 일반
  •    
  •    34
  •   /
  •   97
  •    4.3
  •   웹
  •   프레임워크
  •   
  • 일반
  •    
  •    35
  •   /
  •   97
  •    4.4
  •   오픈소스
  •   프레임워크
  •   -
  •   MVC
  •   
  • 일반
  •    
  •    36
  •   /
  •   97
  •    4.4
  •   오픈소스
  •   프레임워크
  •   ­–
  •   DAO(Data
  •   Access
  •   Object)
  •   
  • 일반
  •    
  •    37
  •   /
  •   97
  •    4.5
  •   NAVER
  •   프레임워크
  •   -
  •   LUCY
  •    
  •    
  •    LUCY
  •   
  • 일반
  •    
  •    38
  •   /
  •   97
  •    4.5
  •   NAVER
  •   프레임워크
  •   -
  •   BLOC
  •    BLOC
  •    Business
  •   Logic
  •   Object
  •   Container
  •    비즈니스
  •   로직을
  •   제공하는
  •   서비스
  •   컨테이너
  •   플랫폼
  •    
  •   
  • 일반
  •    
  •    39
  •   /
  •   97
  •    4.5
  •   NAVER
  •   프레임워크
  •   -
  •   BLOC
  •   
  • 일반
  •    
  •    40
  •   /
  •   97
  •    4.5
  •   NAVER
  •   프레임워크
  •   -
  •   BLOC
  •    B LO C
  • 일반
  •    
  •    41
  •   /
  •   97
  •    4.6
  •   Batch
  •    Batch
  •   processing
  •   is
  •   
  •    the
  •   execution
  •   of
  •   a
  •   series
  •   of
  •   programs
  •   
  •    on
  •   a
  •   computer
  •   without
  •   manual
  •   intervention.
  •    
  •    
  •   
  • 일반
  •    
  •    42
  •   /
  •   97
  •    4.6
  •   Batch
  •   -
  •   프레임워크
  •    
  •    
  •   
  • 일반
  •    
  •    43
  •   /
  •   97
  •    4.6
  •   Batch
  •   -
  •   관리
  •    
  •    
  •    Hudson
  • 일반
  •    
  •    44
  •   /
  •   97
  •    4.6
  •   Batch
  •   -
  •   관리
  •    •  Build
  •   trigger
  •   schedule
  •    •  History
  •    •  Authentication
  •    •  Batch
  •   on
  •   Time
  •    •  Batch
  •   time
  •   check
  •    •  SMS,
  •   e-mail
  •   Notifier
  •    •  Spring
  •   batch
  •   repository
  •   view
  •    •  Master
  •   ­–Slave
  •    •  Etc
  •   
  • 일반
  •    
  •    45
  •   /
  •   97
  •    4.7
  •   프레임워크
  •   업그레이드
  •   &
  •   마이그레이션
  •    • Major
  •   버전
  •   업그레이드
  •    • 간단하게
  •   툴
  •   실행으로
  •   
  •   가능?!
  •    • 한번에
  •   전환?!
  •   
  •    
  •   
  •   -
  •   URL,
  •   기능별
  •    
  •   
  •   -
  •   Servlet
  •   등록
  •    • Batch
  •   마이그레이션
  •    • Etc
  •   
  • 5.
  •   데이터베이스
  •   
  • 일반
  •    
  •    47
  •   /
  •   97
  •    5.1
  •   어떤걸
  •   쓰는가
  •   
  • 일반
  •    
  •    48
  •   /
  •   97
  •    5.2
  •   CUBRID
  •    
  •    
  •   
  • 일반
  •    
  •    49
  •   /
  •   97
  •    5.3
  •   샤딩,
  •   파티셔닝
  •    •  대용량
  •   데이터
  •    •  많은
  •   사용자
  •    •  빠른
  •   응답속도
  •    •  Transaction
  •    
  •    
  •   
  • 일반
  •    
  •    50
  •   /
  •   97
  •    5.4
  •   응답속도
  •    •  Cache
  •    •  Search
  •   Platform
  •    •  Key/Value
  •   DB
  •   
  • 6.
  •   테스트
  •   
  • 일반
  •    
  •    52
  •   /
  •   97
  •    6.1
  •   Unit
  •   Test
  •    
  •    
  •   
  • 일반
  •    
  •    53
  •   /
  •   97
  •    6.2
  •   Functional
  •   Test
  •   ­–
  •   FitNesse,
  •   NTAF,
  •   Selenium
  •   
  • 일반
  •    
  •    54
  •   /
  •   97
  •    6.3
  •   Performance
  •   Test
  •   
  • 일반
  •    
  •    55
  •   /
  •   97
  •    6.3
  •   Performance
  •   Test
  •   
  • 7.
  •   모니터링
  •   
  • 일반
  •    
  •    57
  •   /
  •   97
  •    7.1
  •   24/7
  •   
  • 일반
  •    
  •    58
  •   /
  •   97
  •    7.1
  •   24/7
  •   
  • 일반
  •    
  •    59
  •   /
  •   97
  •    7.2
  •   자동화
  •   
  • 일반
  •    
  •    60
  •   /
  •   97
  •    7.2
  •   자동화
  •   
  • 8.
  •   트러블
  •   슈팅
  •   
  • 일반
  •    
  •    62
  •   /
  •   97
  •    8.1
  •   자동화
  •   툴?!
  •    
  •    
  •    
  •    
  •   
  • 일반
  •    
  •    63
  •   /
  •   97
  •    8.1
  •   자동화
  •   툴?!
  •    
  •    
  •    
  •    
  •    그런거
  •   없다!!
  •   
  • 일반
  •    
  •    64
  •   /
  •   97
  •    8.1
  •   자동화
  •   툴?!
  •    
  •    
  •    
  •    
  •   
  • 일반
  •    
  •    65
  •   /
  •   97
  •    8.2
  •   종류
  •    • NullPointException
  •    • Invalid
  •   Value
  •    • Server
  •   
  •   Configuration
  •    • Not
  •   Search
  •    • Library
  •   Version
  •   Upgrade
  •    • Etc
  •    
  •    
  •    
  •    
  •   
  • 일반
  •    
  •    66
  •   /
  •   97
  •    8.2
  •   종류
  •    •  Concurrent
  •    •  Connector
  •    •  Thread
  •   Pool
  •    •  DB
  •   Error
  •    •  Deadlock
  •    •  Transaction
  •    •  query
  •   timeout
  •    •  Hang
  •    •  OOM(out
  •   of
  •   memory)
  •    •  GC
  •    •  Etc
  •   
  • 일반
  •    
  •    67
  •   /
  •   97
  •    8.2
  •   종류
  •    W eb Sev er H ttp A se rv ice W A S D ata b ase C ach e S erv er B atch S e rv er B u sin e ss L o g ic S e rv e r B se rv ice C se rv ice D se rv ice
  • 일반
  •    
  •    68
  •   /
  •   97
  •    8.3
  •   해결
  •   
  • 일반
  •    
  •    69
  •   /
  •   97
  •    8.3
  •   해결
  •    •  알아야
  •   될
  •   것도
  •    •  봐야
  •   할
  •   것도
  •    •  Debug,
  •   코드
  •   리뷰
  •    •  경험,
  •   노하우
  •    •  툴
  •    •  범위
  •   좁히기
  •    •  재현
  •   ->
  •   원인
  •   ->
  •   해결
  •   
  • 일반
  •    
  •    70
  •   /
  •   97
  •    8.3
  •   해결
  •   ­–
  •   툴(APM)
  •    
  •    
  •   
  • 일반
  •    
  •    71
  •   /
  •   97
  •    8.3
  •   해결
  •   ­–
  •   툴(JAVA)
  •    •  GC
  •   :
  •   jstat
  •   
  •    •  Memory
  •   :
  •   jmap,
  •   jhat
  •    •  Thread
  •   :
  •   jstack
  •   
  • 일반
  •    
  •    72
  •   /
  •   97
  •    8.3
  •   해결
  •   ­–
  •   툴(GC)
  •    •  Hpjmeter
  •    •  GC
  •   Viewer
  •    •  IBM
  •   Pattern
  •   Modeling
  •   and
  •   Analysis
  •   Tool
  •    •  JVisualVM의
  •   VisualGC
  •   plugin
  •   
  • 일반
  •    
  •    73
  •   /
  •   97
  •    8.3
  •   해결
  •   ­–
  •   툴(Heap)
  •    •  Eclipse
  •   Memory
  •   Analyzer
  •    •  IBM
  •   HeapAnalyzer
  •   
  • 일반
  •    
  •    74
  •   /
  •   97
  •    8.3
  •   해결
  •   ­–
  •   툴(Thread)
  •    •  IBM
  •   Thread
  •   and
  •   Monitor
  •   Dump
  •   Analyzer
  •    •  TDA(Thread
  •   Dump
  •   Analyzer)
  •   
  • 일반
  •    
  •    75
  •   /
  •   97
  •    8.4
  •   예방
  •    • 
  •   Log
  •    • 
  •   JVM
  •   Option
  •    • 
  •   Monitoring
  •    • 
  •   Etc
  •    
  •   
  • 일반
  •    
  •    76
  •   /
  •   97
  •    8.5
  •   노하우
  •    
  •    
  •   
  •   
  •   
  •   
  •   
  •   
  •   네이버
  •   개발자
  •   블로그
  •    
  •   Hello
  •   world
  •   
  •   
  • 9.
  •   늘어나는
  •   사용자,
  •   요청량,
  •   데이터
  •   
  •   
  • 일반
  •    
  •    78
  •   /
  •   97
  •    9.1
  •   갑자기
  •   문제
  •   발생
  •    어느날
  •   갑자기!!
  •    전에는
  •   잘
  •   됐는데ㅠㅠ
  •   
  • 일반
  •    
  •    79
  •   /
  •   97
  •    9.1
  •   갑자기
  •   문제
  •   발생
  •    • 동시
  •   요청량
  •   증가
  •    • 점점
  •   쌓이는
  •   데이터
  •    • 커진
  •   로그
  •   파일
  •    • 장비
  •   문제
  •    • 간헐적
  •   동시성
  •   문제
  •    • 네트워크
  •   오류
  •    • 기타
  •   
  • 일반
  •    
  •    80
  •   /
  •   97
  •    9.2
  •   이중화
  •    •  IDC
  •    •  Master
  •   Slave
  •   DB
  •    •  RAID
  •   
  • 일반
  •    
  •    81
  •   /
  •   97
  •    9.3
  •   로그
  •    로그
  •   수집
  •   시스템
  •   
  • 일반
  •    
  •    82
  •   /
  •   97
  •    9.4
  •   서버
  •   증설
  •    one
  •   click
  •   
  • 일반
  •    
  •    83
  •   /
  •   97
  •    9.5
  •   무정지
  •   서비스
  •    Read
  •   Only
  •   Service
  •   
  • 일반
  •    
  •    84
  •   /
  •   97
  •    9.6
  •   Read,
  •   Write
  •    분리
  •   
  • 일반
  •    
  •    85
  •   /
  •   97
  •    9.7
  •   배포
  •    •  서버수
  •   증가
  •    •  동시에
  •    •  한번에
  •   
  •    •  롤백
  •    •  헬스
  •   체크
  •   
  • 일반
  •    
  •    86
  •   /
  •   97
  •    9.8
  •   Hadoop
  •   
  • 10.
  •   Etc
  •   
  • 일반
  •    
  •    88
  •   /
  •   97
  •    10.1
  •   오픈소스
  •    
  •    
  •    
  •    
  •   
  • 일반
  •    
  •    89
  •   /
  •   97
  •    10.2
  •   기술
  •   트렌드
  •    
  •    
  •    
  •   
  • 일반
  •    
  •    90
  •   /
  •   97
  •    
  •   
  •    Don’t
  •   worry,
  •    No
  •   one
  •   knows
  •   everything.
  •   
  • Thank
  •   you
  •   
  • 일반
  •    
  •    92
  •   /
  •   97
  •    참조
  •    •  http://story.pxd.co.kr/732
  •    •  http://hdscreen.me/walls/computers/microsoft-windows-pc-windows-8-2503558-1680x1050.jpg
  •    •  http://agtb.net/articles/centoscubes-error-message
  •    •  http://www.mtgeconomist.com/en/instalar-bots-de-magic-online-virtualizacion-en-mac-os-x-parte-8-4/
  •    •  http://intersog.com/blog/Programming-Languages-Ranking-January-2014-vs-January-2013
  •    •  http://www.inspiredtechies.com/setting-up-svn-server/
  •    •  http://www.calliflower.com/one-click-recording/
  •    •  http://www.gopivotal.com/http://www.slideshare.net/mraible/comparing-jvm-web-frameworks-february-2014
  •    •  http://www.ranorex.com/blog/integrating-ranorex-automation-in-jenkins-continuous-integration-process
  •    •  http://helloworld.naver.com/helloworld/1114
  •    •  https://issues.jenkins-ci.org/browse/JENKINS-4177
  •    •  http://confluence.goldpitcher.co.kr/pages/viewpage.action?pageId=68354072
  •    •  http://db-engines.com/en/ranking
  •    •  http://exortech.github.io/presentations/test_driven_decoupling/index.html#/9
  •   http://cs.calvin.edu/books/processing/references/ eclipse/junit.html
  •    •  http://fitnesse4idea.sourceforge.net/
  •   
  • 일반
  •    
  •    93
  •   /
  •   97
  •    참조
  •    •  http://www.slideshare.net/mraible/comparing-jvm-web-frameworks-february-2014
  •    •  http://www.ranorex.com/blog/integrating-ranorex-automation-in-jenkins-continuous-integration-process
  •    •  http://helloworld.naver.com/helloworld/1114
  •    •  https://issues.jenkins-ci.org/browse/JENKINS-4177
  •    •  http://confluence.goldpitcher.co.kr/pages/viewpage.action?pageId=68354072
  •    •  http://db-engines.com/en/ranking
  •    •  http://exortech.github.io/presentations/test_driven_decoupling/index.html#/9
  •   http://cs.calvin.edu/books/processing/references/ eclipse/junit.html
  •    •  http://fitnesse4idea.sourceforge.net/
  •    •  http://docs.seleniumhq.org/
  •    •  http://serversitters.com/touchsupport-vs-server-sitters.html
  •    •  http://ipnrstatus.in/blog/indain-railways-pnr-status-sms-alert/
  •    •  http://www.logicmonitor.com/monitoring/applications/memcached/
  •    •  http://sidnoe.tistory.com/159
  •    •  http://blog.wishket.com/tag/%EC%98%A4%ED%94%88%EC%86%8C%EC%8A%A4/
  •    •  http://www.cio.co.ke/analysis/2012-Year-of-fast-changes-for-IT-professionals
  •    •  http://linecorp.com/en/press/2014/0402714
  •