SlideShare a Scribd company logo
1 of 31
Download to read offline
4.2 아파치 튜닝
웹 서버가 병목현상?
- 웹 서버의 설정과는 관계없는 경우가 대부분
- 4.1에서 살펴본 ps, sar, vmstat 활용
- 그렇지 않으면 다음단계로
- 아파치는 내부의 각종 기능이 모듈화
- 병렬처리를 수행하는 부분도 모듈화
병렬처리의 구현모델
- 멀티프로세스 모델 - prefork
- 멀티쓰레드 모델 - worker
- 이벤트 구동 모델 - event(epoll, select)
아파치의 병렬처리&MPM
멀티프로세스 모델
prefork vs worker
multi-process vs multi-thread
multi-process <<<<<<< multi-thread??
멀티프로세스의 문제점?
- 메모리 공간 낭비?
부모와 자식 프로세스에서 갱신 되지 않은 메모
리 공간은 공유된다(copy on write)
- context switching 비용?
대량의 context switching이 아니면 비용은 크지
않다
Copy on write란..?
prework --> worker
- 하나의 클라이언트에 대한 응답시간이 고속화
되는것은 아님
- 메모리가 충분하다면 동시에 처리할 수 있는
접속수는 변하지 않음
- 대량의 컨텍스트 스위치가 없다면 효과는 크지
않다
; 핵심은 동시에 생성 할 수 있는 프로세스/스레
드 수 설정
httpd.conf
- 불특정 다수의 클라이언트 요청을 받음
그래서 언제 어느 정도의 트래픽이 발생할지
예상 불가
- 동시에 접속할 수 있는 클라이언트 개수의 상
한값 지정(MaxClients)
-없다면, OS가 hang-up / 응답불가능
httpd.conf
<IfModule mpm_prefork_module>
StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 150
MaxRequestsPerChild 0
</IfModule>
ServerLimit 150
ServerLimit는 어느정도로..?
- 서버의 물리 메모리 용량
- 프로세스 하나당 평균 메모리 소비량
ex) 메모리량 8G
httpd프로세스당 메모리 사용률 100M
OS가 사용하는 메모리 512M
ServerLimit는 어느정도로..?
- 서버의 물리 메모리 용량
- 프로세스 하나당 평균 메모리 소비량
ex) 메모리량 8G
httpd프로세스당 메모리 사용률 100M
OS가 사용하는 메모리 512M
(8G - 512M) / 100M = 75
ServerLimit는 어느정도로..?
ex) 메모리량 8G
httpd프로세스당 메모리 사용률 100M
메모리 공유 비율 : 70%
OS가 사용하는 메모리 512M
ServerLimit는 어느정도로..?
ex) 메모리량 8G
httpd프로세스당 메모리 사용률 100M
메모리 공유 비율 : 70%
OS가 사용하는 메모리 512M
; (8G - 512) / (100M *(100%-70%)) = 240
httpd.conf
<IfModule mpm_worker_module>
StartServers 2
MinSpareThreads 25
MaxSpareThreads 75
ThreadLimit 64
ThreadsPerChild 25
MaxClients 150
MaxRequestsPerChild 0
</IfModule>
ServerLimit >= MaxClients / ThreadPerChild
httpd.conf
<IfModule mpm_worker_module>
StartServers 2
MinSpareThreads 25
MaxSpareThreads 75
ThreadLimit 64
ThreadsPerChild 25
MaxClients 150
MaxRequestsPerChild 0
</IfModule>
ServerLimit >= MaxClients / ThreadPerChild
; 150 / 25 = 6
DB과부화로 인한 Maxclient수 도달
Kepp-Alive
- 한번의 커넥션을 유지해서 여러 작업 수행
- 병목현상이 발생할 가능성 있슴
KeepAlive On
MaxKeppAliveRequests 100
KeppAliveTimeout 5
아파치 이외의 선택방안
lighttpd
- SPED(Single Process Event Driven)모델
- 적응 메모리로 대량의 접속을 동시병행적으로 처리 가능
- 싱글 프로세스라서 계산량이 적어짐
- 메모리 소비량도 적음
아파치 이외의 선택방안
lighttpd
- SPED(Single Process Event Driven)모델
- 적응 메모리로 대량의 접속을 동시병행적으로 처리 가능
- 싱글 프로세스라서 계산량이 적어짐
- 메모리 소비량도 적음
4.3 MySQL 튜닝의 핵심
MySQL 튜닝의 핵심
튜닝의 종류
- 서버측
- 서버 측 이외
- 주변 시스템
MySQL 튜닝의 핵심
서버측 튜닝
- mysql의 메모리관련 파라미터와 디스크 I/O관련된
파라미터 튜닝
- 디스크 I/O와 관련된 커널 파라미터 조정
- 적절한 파일시스템 선택, 마운트 옵션 조정
- 파티셔닝
MySQL 튜닝의 핵심
서버 측 이외(DB설계 & SQL튜닝)
- 테이블 설계
적절한 인덱스 생성
의도적인 비정규화
- SQL최적화
인덱스를 제대로 사용하도록
테이블 결합 순서, 방법 조정
MySQL 튜닝의 핵심
주변 시스템
- DB서버 주변의 시스템 튜닝
memcached캐시 서버를 운영해, 데이터를 캐싱된
데이터를 참조하도록 구축
-
메모리 관련 파라미터 튜닝 - 1
버퍼의 종류
- 글로벌 버퍼
- 쓰레드 버퍼
; 쓰레드 버퍼에 많은 메모리를 할당하면 커넥션 수 만큼
해당 메모리를 할당하기 떄문에, 메모리 부족 야기
메모리 관련 파라미터 튜닝 - 2
- 서버가 가진 물리 메모리 이상의 크기를 할당하면,
스왑이 발생하기 때문에, 반대로 성능이 하락
- MyISAM의 데이터 파일이 OS디스크 캐시에 올라가도록
설정하는 것도 한 가지 방법
메모리 관련 파라미터 튜닝 - 2
1MB < innodb_log_file_size < MAX_innodb_log_file_size <4GB
;innodb_log_file_size는 4GB이하로 설정
MAX_innodb_log_file_size = innodb_buffer_pool_size /
innodb_log_files_in_group
;
innodb_buffer_pool_size
;InnoDB의 데이터나 인덱스를 캐시하기 위한 메모리 상의 영역
innodb_log_file_size
;InnoDB의 갱신로그를 기록하는 디스크 상의 파일

More Related Content

What's hot

Performance Testing using Loadrunner
Performance Testingusing LoadrunnerPerformance Testingusing Loadrunner
Performance Testing using Loadrunnerhmfive
 
05_동기화_개요
05_동기화_개요05_동기화_개요
05_동기화_개요noerror
 
프라우드넷 사용법 훑어보기
프라우드넷 사용법 훑어보기프라우드넷 사용법 훑어보기
프라우드넷 사용법 훑어보기Hyun-jik Bae
 
Concurrent programming
Concurrent programmingConcurrent programming
Concurrent programmingByeongsu Kang
 
오픈소스 성능 최적화 보고서 ch07. Infinispan
오픈소스 성능 최적화 보고서 ch07. Infinispan오픈소스 성능 최적화 보고서 ch07. Infinispan
오픈소스 성능 최적화 보고서 ch07. InfinispanHyeonSeok Choi
 
게임서버프로그래밍 #5 - 데이터베이스 핸들링
게임서버프로그래밍 #5 - 데이터베이스 핸들링게임서버프로그래밍 #5 - 데이터베이스 핸들링
게임서버프로그래밍 #5 - 데이터베이스 핸들링Seungmo Koo
 
Stash 사용자 교육
Stash 사용자 교육Stash 사용자 교육
Stash 사용자 교육Byeongsu Kang
 
[AWSKRUG] AWS Lambda Layer 로컬테스트부터 배포까지
[AWSKRUG] AWS Lambda Layer 로컬테스트부터 배포까지[AWSKRUG] AWS Lambda Layer 로컬테스트부터 배포까지
[AWSKRUG] AWS Lambda Layer 로컬테스트부터 배포까지Tae-Seong Park
 
NET 최선단 기술에 의한 고성능 웹 애플리케이션
NET 최선단 기술에 의한 고성능 웹 애플리케이션NET 최선단 기술에 의한 고성능 웹 애플리케이션
NET 최선단 기술에 의한 고성능 웹 애플리케이션흥배 최
 
게임서버프로그래밍 #4 - 멀티스레드 프로그래밍
게임서버프로그래밍 #4 - 멀티스레드 프로그래밍게임서버프로그래밍 #4 - 멀티스레드 프로그래밍
게임서버프로그래밍 #4 - 멀티스레드 프로그래밍Seungmo Koo
 
Windows Registered I/O (RIO) vs IOCP
Windows Registered I/O (RIO) vs IOCPWindows Registered I/O (RIO) vs IOCP
Windows Registered I/O (RIO) vs IOCPSeungmo Koo
 
Redis trouble shooting
Redis trouble shootingRedis trouble shooting
Redis trouble shootingDaeMyung Kang
 
Ndc2014 시즌 2 : 멀티쓰레드 프로그래밍이 왜 이리 힘드나요? (Lock-free에서 Transactional Memory까지)
Ndc2014 시즌 2 : 멀티쓰레드 프로그래밍이  왜 이리 힘드나요?  (Lock-free에서 Transactional Memory까지)Ndc2014 시즌 2 : 멀티쓰레드 프로그래밍이  왜 이리 힘드나요?  (Lock-free에서 Transactional Memory까지)
Ndc2014 시즌 2 : 멀티쓰레드 프로그래밍이 왜 이리 힘드나요? (Lock-free에서 Transactional Memory까지)내훈 정
 
[AWSKRUG] Lambda로컬테스트부터 배포까지의 여정-박태성
[AWSKRUG] Lambda로컬테스트부터 배포까지의 여정-박태성[AWSKRUG] Lambda로컬테스트부터 배포까지의 여정-박태성
[AWSKRUG] Lambda로컬테스트부터 배포까지의 여정-박태성Tae-Seong Park
 
portfolio-subtitle-convert-김남운
portfolio-subtitle-convert-김남운portfolio-subtitle-convert-김남운
portfolio-subtitle-convert-김남운Namwun Kim
 
프라우드넷의 연결 유지 기능과 홀펀칭-윤현민
프라우드넷의 연결 유지 기능과 홀펀칭-윤현민프라우드넷의 연결 유지 기능과 홀펀칭-윤현민
프라우드넷의 연결 유지 기능과 홀펀칭-윤현민Hyunjik Bae
 
스마트폰 온라인 게임에서 고려해야 할 것들
스마트폰 온라인 게임에서 고려해야 할 것들스마트폰 온라인 게임에서 고려해야 할 것들
스마트폰 온라인 게임에서 고려해야 할 것들Hyunjik Bae
 

What's hot (20)

Performance Testing using Loadrunner
Performance Testingusing LoadrunnerPerformance Testingusing Loadrunner
Performance Testing using Loadrunner
 
05_동기화_개요
05_동기화_개요05_동기화_개요
05_동기화_개요
 
프라우드넷 사용법 훑어보기
프라우드넷 사용법 훑어보기프라우드넷 사용법 훑어보기
프라우드넷 사용법 훑어보기
 
Concurrent programming
Concurrent programmingConcurrent programming
Concurrent programming
 
오픈소스 성능 최적화 보고서 ch07. Infinispan
오픈소스 성능 최적화 보고서 ch07. Infinispan오픈소스 성능 최적화 보고서 ch07. Infinispan
오픈소스 성능 최적화 보고서 ch07. Infinispan
 
게임서버프로그래밍 #5 - 데이터베이스 핸들링
게임서버프로그래밍 #5 - 데이터베이스 핸들링게임서버프로그래밍 #5 - 데이터베이스 핸들링
게임서버프로그래밍 #5 - 데이터베이스 핸들링
 
Stash 사용자 교육
Stash 사용자 교육Stash 사용자 교육
Stash 사용자 교육
 
[AWSKRUG] AWS Lambda Layer 로컬테스트부터 배포까지
[AWSKRUG] AWS Lambda Layer 로컬테스트부터 배포까지[AWSKRUG] AWS Lambda Layer 로컬테스트부터 배포까지
[AWSKRUG] AWS Lambda Layer 로컬테스트부터 배포까지
 
NET 최선단 기술에 의한 고성능 웹 애플리케이션
NET 최선단 기술에 의한 고성능 웹 애플리케이션NET 최선단 기술에 의한 고성능 웹 애플리케이션
NET 최선단 기술에 의한 고성능 웹 애플리케이션
 
Redis on AWS
Redis on AWSRedis on AWS
Redis on AWS
 
게임서버프로그래밍 #4 - 멀티스레드 프로그래밍
게임서버프로그래밍 #4 - 멀티스레드 프로그래밍게임서버프로그래밍 #4 - 멀티스레드 프로그래밍
게임서버프로그래밍 #4 - 멀티스레드 프로그래밍
 
Windows Registered I/O (RIO) vs IOCP
Windows Registered I/O (RIO) vs IOCPWindows Registered I/O (RIO) vs IOCP
Windows Registered I/O (RIO) vs IOCP
 
Redis trouble shooting
Redis trouble shootingRedis trouble shooting
Redis trouble shooting
 
Ndc2014 시즌 2 : 멀티쓰레드 프로그래밍이 왜 이리 힘드나요? (Lock-free에서 Transactional Memory까지)
Ndc2014 시즌 2 : 멀티쓰레드 프로그래밍이  왜 이리 힘드나요?  (Lock-free에서 Transactional Memory까지)Ndc2014 시즌 2 : 멀티쓰레드 프로그래밍이  왜 이리 힘드나요?  (Lock-free에서 Transactional Memory까지)
Ndc2014 시즌 2 : 멀티쓰레드 프로그래밍이 왜 이리 힘드나요? (Lock-free에서 Transactional Memory까지)
 
[AWSKRUG] Lambda로컬테스트부터 배포까지의 여정-박태성
[AWSKRUG] Lambda로컬테스트부터 배포까지의 여정-박태성[AWSKRUG] Lambda로컬테스트부터 배포까지의 여정-박태성
[AWSKRUG] Lambda로컬테스트부터 배포까지의 여정-박태성
 
portfolio-subtitle-convert-김남운
portfolio-subtitle-convert-김남운portfolio-subtitle-convert-김남운
portfolio-subtitle-convert-김남운
 
Cache governance
Cache governanceCache governance
Cache governance
 
프라우드넷의 연결 유지 기능과 홀펀칭-윤현민
프라우드넷의 연결 유지 기능과 홀펀칭-윤현민프라우드넷의 연결 유지 기능과 홀펀칭-윤현민
프라우드넷의 연결 유지 기능과 홀펀칭-윤현민
 
스마트폰 온라인 게임에서 고려해야 할 것들
스마트폰 온라인 게임에서 고려해야 할 것들스마트폰 온라인 게임에서 고려해야 할 것들
스마트폰 온라인 게임에서 고려해야 할 것들
 
TBB 소개
TBB 소개TBB 소개
TBB 소개
 

Similar to Chap4_2

서버 아키텍처 이해를 위한 프로세스와 쓰레드
서버 아키텍처 이해를 위한 프로세스와 쓰레드서버 아키텍처 이해를 위한 프로세스와 쓰레드
서버 아키텍처 이해를 위한 프로세스와 쓰레드KwangSeob Jeong
 
Vectorized processing in_a_nutshell_DeView2014
Vectorized processing in_a_nutshell_DeView2014Vectorized processing in_a_nutshell_DeView2014
Vectorized processing in_a_nutshell_DeView2014Gruter
 
[2010 네이트 앱스토어 개발자 세미나] 앱스 제작 사례 (2) 소셜게임 서버 구성 전략
[2010 네이트 앱스토어 개발자 세미나] 앱스 제작 사례 (2) 소셜게임 서버 구성 전략[2010 네이트 앱스토어 개발자 세미나] 앱스 제작 사례 (2) 소셜게임 서버 구성 전략
[2010 네이트 앱스토어 개발자 세미나] 앱스 제작 사례 (2) 소셜게임 서버 구성 전략Cyworld AppStore (SK Communications)
 
AWS EMR Cost optimization
AWS EMR Cost optimizationAWS EMR Cost optimization
AWS EMR Cost optimizationSANG WON PARK
 
SQL-on-Hadoop with Apache Tajo, and application case of SK Telecom
SQL-on-Hadoop with Apache Tajo,  and application case of SK TelecomSQL-on-Hadoop with Apache Tajo,  and application case of SK Telecom
SQL-on-Hadoop with Apache Tajo, and application case of SK TelecomGruter
 
Exploring Deep Learning Acceleration Technology Embedded in LLMs
Exploring Deep Learning Acceleration Technology Embedded in LLMsExploring Deep Learning Acceleration Technology Embedded in LLMs
Exploring Deep Learning Acceleration Technology Embedded in LLMsTae Young Lee
 
Apache kafka performance(throughput) - without data loss and guaranteeing dat...
Apache kafka performance(throughput) - without data loss and guaranteeing dat...Apache kafka performance(throughput) - without data loss and guaranteeing dat...
Apache kafka performance(throughput) - without data loss and guaranteeing dat...SANG WON PARK
 
Cassandra 멘붕기 | Devon 2012
Cassandra 멘붕기 | Devon 2012Cassandra 멘붕기 | Devon 2012
Cassandra 멘붕기 | Devon 2012Daum DNA
 
[2B7]시즌2 멀티쓰레드프로그래밍이 왜 이리 힘드나요
[2B7]시즌2 멀티쓰레드프로그래밍이 왜 이리 힘드나요[2B7]시즌2 멀티쓰레드프로그래밍이 왜 이리 힘드나요
[2B7]시즌2 멀티쓰레드프로그래밍이 왜 이리 힘드나요NAVER D2
 
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016Amazon Web Services Korea
 
Optimizing merge program
Optimizing merge program Optimizing merge program
Optimizing merge program CHANG-HYUN LEE
 
Lessons learned from operating Data Platform on Kubernetes(EKS)
Lessons learned from operating Data Platform on Kubernetes(EKS)Lessons learned from operating Data Platform on Kubernetes(EKS)
Lessons learned from operating Data Platform on Kubernetes(EKS)창언 정
 
EMR 플랫폼 기반의 Spark 워크로드 실행 최적화 방안 - 정세웅, AWS 솔루션즈 아키텍트:: AWS Summit Online Ko...
EMR 플랫폼 기반의 Spark 워크로드 실행 최적화 방안 - 정세웅, AWS 솔루션즈 아키텍트::  AWS Summit Online Ko...EMR 플랫폼 기반의 Spark 워크로드 실행 최적화 방안 - 정세웅, AWS 솔루션즈 아키텍트::  AWS Summit Online Ko...
EMR 플랫폼 기반의 Spark 워크로드 실행 최적화 방안 - 정세웅, AWS 솔루션즈 아키텍트:: AWS Summit Online Ko...Amazon Web Services Korea
 
파이썬 병렬프로그래밍
파이썬 병렬프로그래밍파이썬 병렬프로그래밍
파이썬 병렬프로그래밍Yong Joon Moon
 
오픈소스 소프트웨어 성능 최적화 보고서 2장.
오픈소스 소프트웨어 성능 최적화 보고서 2장.오픈소스 소프트웨어 성능 최적화 보고서 2장.
오픈소스 소프트웨어 성능 최적화 보고서 2장.HyeonSeok Choi
 
서버를 위한 동시성 모델과 Staged eventdrivenarchitecture
서버를 위한 동시성 모델과 Staged eventdrivenarchitecture서버를 위한 동시성 모델과 Staged eventdrivenarchitecture
서버를 위한 동시성 모델과 Staged eventdrivenarchitectureHyeonSeok Choi
 
모바일 Rpg 게임서버 제작
모바일 Rpg 게임서버 제작모바일 Rpg 게임서버 제작
모바일 Rpg 게임서버 제작기환 천
 
쓰레드.pdf
쓰레드.pdf쓰레드.pdf
쓰레드.pdfSeokju Hong
 

Similar to Chap4_2 (20)

서버 아키텍처 이해를 위한 프로세스와 쓰레드
서버 아키텍처 이해를 위한 프로세스와 쓰레드서버 아키텍처 이해를 위한 프로세스와 쓰레드
서버 아키텍처 이해를 위한 프로세스와 쓰레드
 
Vectorized processing in_a_nutshell_DeView2014
Vectorized processing in_a_nutshell_DeView2014Vectorized processing in_a_nutshell_DeView2014
Vectorized processing in_a_nutshell_DeView2014
 
[2010 네이트 앱스토어 개발자 세미나] 앱스 제작 사례 (2) 소셜게임 서버 구성 전략
[2010 네이트 앱스토어 개발자 세미나] 앱스 제작 사례 (2) 소셜게임 서버 구성 전략[2010 네이트 앱스토어 개발자 세미나] 앱스 제작 사례 (2) 소셜게임 서버 구성 전략
[2010 네이트 앱스토어 개발자 세미나] 앱스 제작 사례 (2) 소셜게임 서버 구성 전략
 
AWS EMR Cost optimization
AWS EMR Cost optimizationAWS EMR Cost optimization
AWS EMR Cost optimization
 
SQL-on-Hadoop with Apache Tajo, and application case of SK Telecom
SQL-on-Hadoop with Apache Tajo,  and application case of SK TelecomSQL-on-Hadoop with Apache Tajo,  and application case of SK Telecom
SQL-on-Hadoop with Apache Tajo, and application case of SK Telecom
 
Merge reversed2
Merge reversed2Merge reversed2
Merge reversed2
 
Exploring Deep Learning Acceleration Technology Embedded in LLMs
Exploring Deep Learning Acceleration Technology Embedded in LLMsExploring Deep Learning Acceleration Technology Embedded in LLMs
Exploring Deep Learning Acceleration Technology Embedded in LLMs
 
Apache kafka performance(throughput) - without data loss and guaranteeing dat...
Apache kafka performance(throughput) - without data loss and guaranteeing dat...Apache kafka performance(throughput) - without data loss and guaranteeing dat...
Apache kafka performance(throughput) - without data loss and guaranteeing dat...
 
Cassandra 멘붕기 | Devon 2012
Cassandra 멘붕기 | Devon 2012Cassandra 멘붕기 | Devon 2012
Cassandra 멘붕기 | Devon 2012
 
[2B7]시즌2 멀티쓰레드프로그래밍이 왜 이리 힘드나요
[2B7]시즌2 멀티쓰레드프로그래밍이 왜 이리 힘드나요[2B7]시즌2 멀티쓰레드프로그래밍이 왜 이리 힘드나요
[2B7]시즌2 멀티쓰레드프로그래밍이 왜 이리 힘드나요
 
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
 
Optimizing merge program
Optimizing merge program Optimizing merge program
Optimizing merge program
 
Lessons learned from operating Data Platform on Kubernetes(EKS)
Lessons learned from operating Data Platform on Kubernetes(EKS)Lessons learned from operating Data Platform on Kubernetes(EKS)
Lessons learned from operating Data Platform on Kubernetes(EKS)
 
EMR 플랫폼 기반의 Spark 워크로드 실행 최적화 방안 - 정세웅, AWS 솔루션즈 아키텍트:: AWS Summit Online Ko...
EMR 플랫폼 기반의 Spark 워크로드 실행 최적화 방안 - 정세웅, AWS 솔루션즈 아키텍트::  AWS Summit Online Ko...EMR 플랫폼 기반의 Spark 워크로드 실행 최적화 방안 - 정세웅, AWS 솔루션즈 아키텍트::  AWS Summit Online Ko...
EMR 플랫폼 기반의 Spark 워크로드 실행 최적화 방안 - 정세웅, AWS 솔루션즈 아키텍트:: AWS Summit Online Ko...
 
파이썬 병렬프로그래밍
파이썬 병렬프로그래밍파이썬 병렬프로그래밍
파이썬 병렬프로그래밍
 
오픈소스 소프트웨어 성능 최적화 보고서 2장.
오픈소스 소프트웨어 성능 최적화 보고서 2장.오픈소스 소프트웨어 성능 최적화 보고서 2장.
오픈소스 소프트웨어 성능 최적화 보고서 2장.
 
Warp
WarpWarp
Warp
 
서버를 위한 동시성 모델과 Staged eventdrivenarchitecture
서버를 위한 동시성 모델과 Staged eventdrivenarchitecture서버를 위한 동시성 모델과 Staged eventdrivenarchitecture
서버를 위한 동시성 모델과 Staged eventdrivenarchitecture
 
모바일 Rpg 게임서버 제작
모바일 Rpg 게임서버 제작모바일 Rpg 게임서버 제작
모바일 Rpg 게임서버 제작
 
쓰레드.pdf
쓰레드.pdf쓰레드.pdf
쓰레드.pdf
 

More from Mungyu Choi

HTTP 완벽가이드 - ch15. 엔터티, 인코딩 (Entities and Encoding)
HTTP 완벽가이드 - ch15. 엔터티, 인코딩 (Entities and Encoding)HTTP 완벽가이드 - ch15. 엔터티, 인코딩 (Entities and Encoding)
HTTP 완벽가이드 - ch15. 엔터티, 인코딩 (Entities and Encoding)Mungyu Choi
 
HTTP 완벽가이드 - ch5. web server
HTTP 완벽가이드 - ch5. web serverHTTP 완벽가이드 - ch5. web server
HTTP 완벽가이드 - ch5. web serverMungyu Choi
 
learning spark - Chatper8. Tuning and Debugging
learning spark - Chatper8. Tuning and Debugginglearning spark - Chatper8. Tuning and Debugging
learning spark - Chatper8. Tuning and DebuggingMungyu Choi
 
Chapter3 - learning spark
Chapter3 - learning sparkChapter3 - learning spark
Chapter3 - learning sparkMungyu Choi
 
Elasticsearch server Chapter5
Elasticsearch server Chapter5Elasticsearch server Chapter5
Elasticsearch server Chapter5Mungyu Choi
 
JVM과 톰캣 튜닝
JVM과 톰캣 튜닝JVM과 톰캣 튜닝
JVM과 톰캣 튜닝Mungyu Choi
 
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝Mungyu Choi
 
Nodejs 트래픽 라우팅, 파일 서비스, 미들웨어
Nodejs 트래픽 라우팅, 파일 서비스, 미들웨어Nodejs 트래픽 라우팅, 파일 서비스, 미들웨어
Nodejs 트래픽 라우팅, 파일 서비스, 미들웨어Mungyu Choi
 
nodejs websocket & SOCKET.IO
nodejs websocket & SOCKET.IOnodejs websocket & SOCKET.IO
nodejs websocket & SOCKET.IOMungyu Choi
 
정렬(버블정렬,선택정렬,삽입정렬)
정렬(버블정렬,선택정렬,삽입정렬)정렬(버블정렬,선택정렬,삽입정렬)
정렬(버블정렬,선택정렬,삽입정렬)Mungyu Choi
 
c++ API디자인 ch9. 발표자료
c++ API디자인 ch9. 발표자료c++ API디자인 ch9. 발표자료
c++ API디자인 ch9. 발표자료Mungyu Choi
 
Ch11. server infra
Ch11. server infraCh11. server infra
Ch11. server infraMungyu Choi
 
대규모 서비스를 지탱하는 기술 ch6
대규모 서비스를 지탱하는 기술 ch6대규모 서비스를 지탱하는 기술 ch6
대규모 서비스를 지탱하는 기술 ch6Mungyu Choi
 
4.1 단일호스트의 부하
4.1 단일호스트의 부하4.1 단일호스트의 부하
4.1 단일호스트의 부하Mungyu Choi
 

More from Mungyu Choi (18)

HTTP 완벽가이드 - ch15. 엔터티, 인코딩 (Entities and Encoding)
HTTP 완벽가이드 - ch15. 엔터티, 인코딩 (Entities and Encoding)HTTP 완벽가이드 - ch15. 엔터티, 인코딩 (Entities and Encoding)
HTTP 완벽가이드 - ch15. 엔터티, 인코딩 (Entities and Encoding)
 
HTTP 완벽가이드 - ch5. web server
HTTP 완벽가이드 - ch5. web serverHTTP 완벽가이드 - ch5. web server
HTTP 완벽가이드 - ch5. web server
 
learning spark - Chatper8. Tuning and Debugging
learning spark - Chatper8. Tuning and Debugginglearning spark - Chatper8. Tuning and Debugging
learning spark - Chatper8. Tuning and Debugging
 
Chapter3 - learning spark
Chapter3 - learning sparkChapter3 - learning spark
Chapter3 - learning spark
 
Elasticsearch server Chapter5
Elasticsearch server Chapter5Elasticsearch server Chapter5
Elasticsearch server Chapter5
 
JVM과 톰캣 튜닝
JVM과 톰캣 튜닝JVM과 톰캣 튜닝
JVM과 톰캣 튜닝
 
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝
 
Nodejs 트래픽 라우팅, 파일 서비스, 미들웨어
Nodejs 트래픽 라우팅, 파일 서비스, 미들웨어Nodejs 트래픽 라우팅, 파일 서비스, 미들웨어
Nodejs 트래픽 라우팅, 파일 서비스, 미들웨어
 
nodejs websocket & SOCKET.IO
nodejs websocket & SOCKET.IOnodejs websocket & SOCKET.IO
nodejs websocket & SOCKET.IO
 
정렬(버블정렬,선택정렬,삽입정렬)
정렬(버블정렬,선택정렬,삽입정렬)정렬(버블정렬,선택정렬,삽입정렬)
정렬(버블정렬,선택정렬,삽입정렬)
 
c++ API디자인 ch9. 발표자료
c++ API디자인 ch9. 발표자료c++ API디자인 ch9. 발표자료
c++ API디자인 ch9. 발표자료
 
b+tree
b+treeb+tree
b+tree
 
Hdfs
HdfsHdfs
Hdfs
 
hadoop ch1
hadoop ch1hadoop ch1
hadoop ch1
 
A tour of go
A tour of goA tour of go
A tour of go
 
Ch11. server infra
Ch11. server infraCh11. server infra
Ch11. server infra
 
대규모 서비스를 지탱하는 기술 ch6
대규모 서비스를 지탱하는 기술 ch6대규모 서비스를 지탱하는 기술 ch6
대규모 서비스를 지탱하는 기술 ch6
 
4.1 단일호스트의 부하
4.1 단일호스트의 부하4.1 단일호스트의 부하
4.1 단일호스트의 부하
 

Chap4_2