Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Performance

Performance basic
by

Sangmin Lee

on 28 March 2013

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Performance

Total 31,600 TPS 가 나오니 우리 시스템은 훌륭하네 ~~~ What is performance ? Performance About Performance User Time Performance Key Points Bottleneck Conclusion 정말 그렇게 믿고 들어오신 것은 아니시죠?

저는 성능을 10년간 했습니다. ^^; 한시간에 성능 전문가가 될 수 있을까요? About Performance

User

Time

Performance Key Points

Bottleneck

Conclusion Agenda Performance in Dic. Performance in IT 얼마나 빠른가?

얼마나 많이 처리할 수 있나?

얼마나 많은 사람이 붙어서 사용할 수 있나?

==> 이렇게 이야기하니 너무 추상적이죠? Kind of User
- System manager's view Kind of user
- Server’s view Kind of user
- Tester’s view Kind of user
- Summary 일반적으로 이야기하는 동시 접속자는
Concurrent ? or Active ? Concurrent user
vs
Active user Detail description is later 이미지 출처 : http://www.nemopan.com/photo_hobby/files/attach/images/2582/123/526/003/%EA%B7%B8%EB%9E%91%EB%A9%94%EB%A5%B4-%EB%82%9A%EC%8B%9C%EC%BD%98%ED%8A%B8%EB%A1%A4%EB%9F%AC_001.jpg Concurrent user is

웹 페이지를 띄워 놓은 사용자

앱을 실행하고 있는 사용자

앱의 메뉴나 링크를 누르고 결과가 나올때까지 기다리고 있는 사용자 Concurrent user Active user is

앱의 메뉴나 링크를 누르고 결과가 나올때까지 기다리고 있는 사용자

== 서버에 부하를 주고 있는 사용자

== 보통 성능 테스트시 Vuser 수
(Vuser == Virtual user) Active user Time @ User Time @ System Which is the most time consumption factor? Time @ User detail Why performance is important ? 출처 : Performance Related Changes and their User Impact. Google, Bing (2008) Why performance is important ? Server Delays Experiment: Results 출처 : Performance Related Changes and their User Impact. Google, Bing (2008) 그때 그때 달라요~~~ Concurrent & Active users ratio ? Performance two factors TPS Time TPS TPS == Transaction Per Seconds == 초당 처리량

절대적인 시스템의 성능을 나타내는 수치

1초에 얼마나 많은 요청을 처리할 수 있느냐 ? Time 요청 시간(Request time) 과 응답시간(Response Time)을 합한 시간

사용자의 이탈과 매우 밀접 ! TPS vs Time TPS는 서버를 늘이면 해결 가능 !!!

Time은 서버를 늘려도 해결 불가능 !!!

둘다 튜닝(tuning)을 통해서 해결 가능 TPS & User Graph
@ Performance test Time & User Graph
@ Real world @ Performance test 이 구간 응답 속도만 측정 가능 Time & User Graph
@ Performance test TPS & Time Graph
@ Performance test Key factor of bottlenecks Server

Client Server bottlenecks Server Machine
OS
Memory
Disk
Network
Application
Web
WAS
Storage
DBMS
Cache
etc ... Client bottlenecks Client Machine
OS
Disk
Network
Application
App
Page contents
JavaScript
etc ... Bottlenecks top 3 1. Web page (FE)

2. Network

3. DB The life of Web Page birth ~ marriage 단계의 성능이 전체 응답 속도 중 대부분(50%이상)을 차지 출처 : http://www.bookofspeed.com/chapter2.html Web page performance optimize Minimize network transfer
CSS, JS, Image, File compression, Cookie, ...

Reduce HTTP request
Merge file, CSS sprites, no redirect, ...

Consider browser rendering
Markup complexity, Reduce reflow & repaint, ... 출처 : http://html.nhndesign.com/2012_openworkshop/pt/05.pdf Ask :
cowboy93@sk.com
javatuning@gmail.com
god@godofjava.com Q & A Thank you Performance engineering is

"Composite Art" of IT. Where can I use TPS ? 성능 테스트를 했는데 10 TPS 가 나온대요 ~~~

뭘 어떻게 해석을 해야 하는건가요?

결론적으로 우리 시스템은 문제 없는건가요?

TPS는 시스템 사용자의 사용 패턴을 분석하여 활용 해야 한답니다. Where can I use TPS ? 애니팡을 예로 들어 보죠. 사용자가 언제 서버에 접속할까요? 처음 게임 시작할 때
한판 끝났을 때
하트를 보낼 때
...
==> 이 각각의 Case별 TPS를 구분해야 해요. Where can I use TPS ? 예를 들어 다음과 같이 결과가 나왔다면
처음 게임 시작할 때 == 100 TPS
한판 끝났을 때 == 1,500 TPS
하트를 보낼 때 == 30,000 TPS Where can I use TPS ? 처음 게임 시작할 때 == 100 TPS
==> 로그인은 동시에 100명만 붙을 수 있고,

한판 끝났을 때 == 1,500 TPS
==> 점수 업데이트는 동시에 1,500 건이 처리되며

하트를 보낼 때 == 30,000 TPS
==> 하트는 동시에 30,000 건을 보낼 수 있다.

라고 해석해야 함.
따라서, TPS 결과로 각각의 의미를 분석해야 ~~~ Time with statistics Average response time

Median response time

90th percentile response time

Standard deviation About me 삼성 SDS --> NHN --> 신생 글로벌 IT 회사 SK planet
Full transcript