logo
logo
x
바코드검색
BOOKPRICE.co.kr
책, 도서 가격비교 사이트
바코드검색

인기 검색어

실시간 검색어

검색가능 서점

도서목록 제공

시스템 성능 분석과 최적화

시스템 성능 분석과 최적화

(엔터프라이즈에서 클라우드 환경까지 아우르는)

브렌던 그레그 (지은이), 오현석, 서형국 (옮긴이)
위키북스
42,000원

일반도서

검색중
서점 할인가 할인률 배송비 혜택/추가 실질최저가 구매하기
알라딘 로딩중
yes24 로딩중
교보문고 로딩중
11st 로딩중
영풍문고 로딩중
쿠팡 로딩중
쿠팡로켓 로딩중
G마켓 로딩중
notice_icon 검색 결과 내에 다른 책이 포함되어 있을 수 있습니다.

중고도서

검색중
서점 유형 등록개수 최저가 구매하기
로딩중

eBook

검색중
서점 정가 할인가 마일리지 실질최저가 구매하기
로딩중

책 이미지

시스템 성능 분석과 최적화
eBook 미리보기

책 정보

· 제목 : 시스템 성능 분석과 최적화 (엔터프라이즈에서 클라우드 환경까지 아우르는)
· 분류 : 국내도서 > 컴퓨터/모바일 > 컴퓨터 공학 > 네트워크/데이터 통신
· ISBN : 9791158390181
· 쪽수 : 792쪽
· 출판일 : 2015-12-15

책 소개

위키북스 시스템 & 네트워크 시리즈 2권. 이 책은 엔터프라이즈나 클라우드 환경을 운용하는 사람, 즉 시스템, 네트워크, 데이터베이스나 웹 관리자, 개발자 및 기타 기술자들에게 도움을 주는 책이다.

목차

▣ 01장: 들어가며
1.1 시스템 성능
1.2 역할
1.3 활동
1.4 관점
1.5 성능은 도전적인 분야다
___1.5.1 성능은 주관적이다
___1.5.2 시스템은 복잡하다
___1.5.3 여러 성능 문제가 존재할 수 있다
1.6 지연시간
1.7 동적 트레이싱
1.8 클라우드 컴퓨팅
1.9 사례 연구
___1.9.1 느린 디스크
___1.9.2 소프트웨어 변경
___1.9.3 더 읽을거리

▣ 02장: 방법론
2.1 용어
2.2 모델
___2.2.1 테스트 중인 시스템
___2.2.2 대기열 시스템
2.3 개념
___2.3.1 지연시간
___2.3.2 시간 규모
___2.3.3 트레이드오프
___2.3.4 튜닝을 위한 노력
___2.3.5 적합성의 수준
___2.3.6 성능 개선의 한시성
___2.3.7 부하 대 아키텍처
___2.3.8 규모 확장성
___2.3.9 알려진 모르는 것
___2.3.10 지표
___2.3.11 사용률
___2.3.12 포화도
___2.3.13 프로파일링
___2.3.14 캐싱
2.4 관점
___2.4.1 자원 분석
___2.4.2 부하 분석
2.5 방법론
___2.5.1 가로등 역방법론
___2.5.2 임의 변경 역방법론
___2.5.3 다른 사람 비난 역방법론
___2.5.4 전용 점검 목록 방법론
___2.5.5 문제 내역서
___2.5.6 과학적 방법론
___2.5.7 검사 주기
___2.5.8 도구 방법론
___2.5.9 USE 방법론
___2.5.10 부하 특성 평가
___2.5.11 드릴다운 분석
___2.5.12 지연시간 분석
___2.5.13 R 방법론
___2.5.14 이벤트 트레이싱
___2.5.15 기준 통계
___2.5.16 정적 성능 튜닝
___2.5.17 캐시 튜닝
___2.5.18 마이크로 벤치마킹
2.6 모델링
___2.6.1 기업 대 클라우드
___2.6.2 시각적 식별
___2.6.3 암달의 확장성 법칙
___2.6.4 일반 확장성 법칙
___2.6.5 대기열 이론
2.7 수용량 계획
___2.7.1 자원 제약
___2.7.2 요인 분석
___2.7.3 확장성 해법
2.8 통계
___2.8.1 성능 정량화
___2.8.2 평균
___2.8.3 표준 편차, 백분위, 중앙값
___2.8.4 변동계수
___2.8.5 다봉분포
___2.8.6 이상치
2.9 감시
___2.9.1 시간에 따른 패턴
___2.9.2 감시 제품
___2.9.3 부팅 시점부터의 요약
2.10 시각화
___2.10.1 꺾은선 차트
___2.10.2 산점도
___2.10.3 열지도
___2.10.4 표면도
___2.10.5 시각화 도구
2.11 연습문제
2.12 참고문헌

▣ 03장: 운영체제
3.1 용어
3.2 배경지식
___3.2.1 커널
___3.2.2 스택
___3.2.3 인터럽트와 인터럽트 스레드
___3.2.4 인터럽트 우선순위
___3.2.5 프로세스
___3.2.6 시스템 콜
___3.2.7 가상 메모리
___3.2.8 메모리 관리
___3.2.9 스케줄러
___3.2.10 파일 시스템
___3.2.11 캐싱
___3.2.12 네트워킹
___3.2.13 장치 드라이버
___3.2.14 다중 프로세서
___3.2.15 선점
___3.2.16 자원 관리
___3.2.17 관찰 가능 범위
3.3 커널
___3.3.1 유닉스
___3.3.2 솔라리스 기반
___3.3.3 리눅스 기반
___3.3.4 차이점
3.4 연습문제
3.5 참고문헌

▣ 04장: 관찰도구
4.1 도구 유형
___4.1.1 카운터
___4.1.2 트레이싱
___4.1.3 프로파일링
___4.1.4 감시(sar)
4.2 관찰 소스
___4.2.1 /proc
___4.2.2 /sys
___4.2.3 kstat
___4.2.4 지연 어카운팅
___4.2.5 미세상태 어카운팅
___4.2.6 다른 관찰 가능 소스
4.3 DTrace
___4.3.1 정적 트레이싱과 동적 트레이싱
___4.3.2 프로브
___4.3.3 프로바이더
___4.3.4 인수
___4.3.5 D 언어
___4.3.6 내장 변수
___4.3.7 액션
___4.3.8 변수 타입
___4.3.9 한 줄짜리 프로그램
___4.3.10 스크립트
___4.3.11 부가비용
___4.3.12 문서와 자료
4.4 시스템탭
___4.4.1 프로브
___4.4.2 탭셋
___4.4.3 액션과 내장 변수
___4.4.5 부가비용
___4.4.6 문서와 자료
4.5 리눅스 성능 이벤트(perf)
4.6 관찰 도구 관찰하기
4.7 연습문제
4.8 참고문헌

▣ 05장: 애플리케이션
5.1 애플리케이션 기초
___5.1.1 목표
___5.1.2 일반적인 경우 최적화하기
___5.1.3 관찰 가능 범위
___5.1.4 빅 오 표기법
5.2 애플리케이션 성능 기법
___5.2.1 I/O 크기 변경
___5.2.2 캐시 사용
___5.2.3 버퍼 사용
___5.2.4 폴링
___5.2.5 동시성과 병렬성
___5.2.6 비동기 I/O
___5.2.7 프로세서 바인딩
5.3 프로그래밍 언어
___5.3.1 컴파일 언어
___5.3.2 인터프리터 언어
___5.3.3 가상 머신
___5.3.4 쓰레기 수집
5.4 방법론과 분석
___5.4.1 스레드 상태 분석
___5.4.2 CPU 프로파일링
___5.4.3 시스템 콜 분석
___5.4.4 I/O 프로파일링
___5.4.5 부하 특성 평가
___5.4.6 USE 방법론
___5.4.7 드릴다운 분석
___5.4.8 락 분석
___5.4.9 정적 성능 튜닝
5.5 연습문제
5.6 참고문헌

▣ 06장: CPU
6.1 용어
6.2 모델
___6.2.1 CPU 아키텍처
___6.2.2 CPU 메모리 캐시
___6.2.3 CPU 실행 대기열
6.3 개념
___6.3.1 클럭 속도
___6.3.2 명령
___6.3.3 명령 파이프라인
___6.3.4 명령 너비
___6.3.5 CPI, IPC
___6.3.6 사용률
___6.3.7 사용자 시간/커널 시간 비율
___6.3.8 포화
___6.3.9 선점
___6.3.10 우선순위 역전
___6.3.11 다중 프로세스, 다중 스레드
___6.3.12 워드 크기
___6.3.13 컴파일러 최적화
6.4 아키텍처
___6.4.1 하드웨어
___6.4.2 소프트웨어
6.5 방법론
___6.5.1 도구 방법론
___6.5.2 USE 방법론
___6.5.3 부하 특성 평가
___6.5.4 프로파일링
___6.5.5 사이클 분석
___6.5.6 성능 감시
___6.5.7 정적 성능 튜닝
___6.5.8 우선순위 튜닝
___6.5.9 자원 제어
___6.5.10 CPU 바인딩
___6.5.11 마이크로 벤치마킹
___6.5.12 확장하기
6.6 분석
___6.6.1 uptime
___6.6.2 vmstat
___6.6.3 mpstat
___6.6.4 sar
___6.6.5 ps
___6.6.6 top
___6.6.7 prstat
___6.6.8 pidstat
___6.6.9 time, ptime
___6.6.10 DTrace
___6.6.11 시스템탭
___6.6.12 perf
___6.6.13 cpustat
___6.6.14 기타 도구
___6.6.15 시각화
6.7 실험 과정
___6.7.1 임의 시도
___6.7.2 시스벤치
6.8 튜닝
___6.8.1 컴파일러 옵션
___6.8.2 스케줄링 우선순위와 클래스
___6.8.3 스케줄러 옵션
___6.8.4 프로세스 바인딩
___6.8.5 배타적 CPU 집합
___6.8.6 자원 제어
___6.8.7 프로세서 옵션(BIOS 튜닝)
6.9 연습문제
6.10 참고문헌

▣ 07장: 메모리
7.1 용어
7.2 개념
___7.2.1 가상 메모리
___7.2.2 페이징
___7.2.3 요구 페이징
___7.2.4 과할당
___7.2.5 스와핑
___7.2.6 파일 시스템 캐시 사용
___7.2.7 사용률과 포화도
___7.2.8 할당자
___7.2.9 워드 크기
7.3 아키텍처
___7.3.1 하드웨어
___7.3.2 소프트웨어
___7.3.3 프로세스 주소 공간
7.4 방법론
___7.4.1 도구 방법론
___7.4.2 USE 방법론
___7.4.3 사용 특성 평가
___7.4.4 사이클 분석
___7.4.5 성능 감시
___7.4.6 누수 감지
___7.4.7 정적 성능 튜닝
___7.4.8 자원 제어
___7.4.9 마이크로 벤치마킹
7.5 분석
___7.5.1 vmstat
___7.5.2 sar
___7.5.3 slabtop
___7.5.4 ::kmastat
___7.5.5 ps
___7.5.6 top
___7.5.7 prstat
___7.5.8 pmap
___7.5.9 DTrace
___7.5.10 시스템탭
___7.5.11 기타 도구
7.6 튜닝
___7.6.1 변경 가능 파라미터
___7.6.2 여러 페이지 크기
___7.6.3 할당자
___7.6.4 자원 제어
7.7 연습문제
7.8 참고문헌

▣ 08장: 파일 시스템
8.1 용어
8.2 모델
___8.2.1 파일 시스템 인터페이스
___8.2.2 파일 시스템 캐시
___8.2.3
8.3 개념
___8.3.1 파일 시스템 지연시간
___8.3.2 캐시
___8.3.3 임의 접근 I/O 대 순차 I/O
___8.3.4 예비 추출
___8.3.5 미리 읽기
___8.3.6 라이트 백 캐시
___8.3.7 동기적 쓰기
___8.3.8 로우 I/O와 직접 I/O
___8.3.9 비블로킹 I/O
___8.3.10 메모리 맵 파일
___8.3.11 메타데이터
___8.3.12 논리적 I/O 대 물리적 I/O
___8.3.13 연산들은 동일하지 않다
___8.3.14 특별 파일 시스템
___8.3.15 접근 타임스탬프
___8.3.16 용량
8.4 아키텍처
___8.4.1 파일 시스템 I/O 스택
___8.4.2 VFS
___8.4.3 파일 시스템 캐시
___8.4.4 파일 시스템 기능
___8.4.5 파일 시스템 유형
___8.4.6 볼륨과 풀
8.5 방법론
___8.5.1 디스크 분석
___8.5.2 지연시간 분석
___8.5.3 부하 특성 평가
___8.5.4 성능 감시
___8.5.5 이벤트 트레이싱
___8.5.6 정적 성능 튜닝
___8.5.7 캐시 튜닝
___8.5.8 부하 분리
___8.5.9 메모리 기반 파일 시스템
___8.5.10 마이크로 벤치마킹
8.6 분석
___8.6.1 vfsstat
___8.6.2 fsstat
___8.6.3 strace, truss
___8.6.4 DTrace
___8.6.5 시스템탭
___8.6.6 LatencyTOP
___8.6.7 free
___8.6.8 top
___8.6.9 vmstat
___8.6.10 sar
___8.6.11 slabtop
___8.6.12 mdb ::kmastat
___8.6.13 fcachestat
___8.6.14 /proc/meminfo
___8.6.15 mdb ::memstat
___8.6.16 kstat
___8.6.17 다른 도구
___8.6.18 시각화
8.7 실험
___8.7.1 임의 부하 생성
___8.7.2 마이크로 벤치마크 도구
___8.7.3 캐시 플러싱
8.8 튜닝
___8.8.1 애플리케이션 호출
___8.8.2 ext3
___8.8.3 ZFS
8.9 연습문제
8.10 참고문헌

▣ 09장: 디스크
9.1 용어
9.2 모델
___9.2.1 단순한 디스크
___9.2.2 디스크 캐시
___9.2.3 컨트롤러
9.3 개념
___9.3.1 시간 측정
___9.3.2 시간 규모
___9.3.3 캐시
___9.3.4 임의 접근 I/O 대 순차 I/O
___9.3.5 읽기/쓰기 비율
___9.3.6 I/O 크기
___9.3.7 IOPS는 같지 않다
___9.3.8 데이터 전송이 아닌 디스크 명령
___9.3.9 사용률
___9.3.10 포화
___9.3.11 I/O 대기
___9.3.12 동기 대 비동기
___9.3.13 디스크 I/O 대 애플리케이션 I/O
9.4 아키텍처
___9.4.1 디스크 유형
___9.4.2 인터페이스
___9.4.3 저장장치 유형
___9.4.4 OS 디스크 I/O 스택
9.5 방법론
___9.5.1 도구 방법론
___9.5.2 USE 방법론
___9.5.3 성능 감시
___9.5.4 부하 특성 평가
___9.5.5 지연시간 분석
___9.5.6 이벤트 트레이싱
___9.5.7 정적 성능 튜닝
___9.5.8 캐시 튜닝
___9.5.9 자원 제어
___9.5.10 마이크로 벤치마크
___9.5.11 확장하기
9.6 분석
___9.6.1 iostat
___9.6.2 sar
___9.6.3 pidstat
___9.6.4 DTrace
___9.6.5 시스템탭
___9.6.6 perf
___9.6.7 iotop
___9.6.8 iosnoop
___9.6.9 blktrace
___9.6.10 MegaCli
___9.6.11 smartctl
___9.6.12 시각화
9.7 실험
___9.7.1 임의 부하 생성
___9.7.2 커스텀 부하 생성기
___9.7.3 마이크로 벤치마크 도구
___9.7.4 임의 위치 읽기 예제
9.8 튜닝
___9.8.1 운영체제의 변경 가능 파라미터
___9.8.2 디스크 장치의 변경 가능 파라미터
___9.8.3 디스크 컨트롤러의 변경 가능 파라미터
9.9 연습문제
9.10 참고문헌

▣ 10장: 네트워크
10.1 용어
10.2 모델
___10.2.1 네트워크 인터페이스
___10.2.2 컨트롤러
___10.2.3 프로토콜 스택
10.3 개념
___10.3.1 네트워크와 라우팅
___10.3.2 프로토콜
___10.3.3 캡슐화
___10.3.4 패킷 크기
___10.3.5 지연시간
___10.3.6 버퍼링
___10.3.7 연결 백로그
___10.3.8 인터페이스 교섭
___10.3.9 사용률
___10.3.10 지역 연결
10.4 아키텍처
___10.4.1 프로토콜
___10.4.2 하드웨어
___10.4.3 소프트웨어
10.5 방법론
___10.5.1 도구 방법론
___10.5.2 USE 방법론
___10.5.3 부하 특성 평가
___10.5.4 지연시간 분석
___10.5.5 성능 감시
___10.5.6 패킷 스니핑
___10.5.7 TCP 분석
___10.5.8 드릴다운 분석
___10.5.9 정적 성능 튜닝
___10.5.10 자원 제어
___10.5.11 마이크로 벤치마킹
10.6 분석
___10.6.1 netstat
___10.6.2 sar
___10.6.3 ifconfig
___10.6.4 ip
___10.6.5 nicstat
___10.6.6 dladm
___10.6.7 ping
___10.6.8 traceroute
___10.6.9 pathchar
___10.6.10 tcpdump
___10.6.11 snoop
___10.6.12 와이어샤크
___10.6.13 DTrace
___10.6.14 시스템탭
___10.6.15 perf
___10.6.16 다른 도구
10.7 실험
___10.7.1 iperf
10.8 튜닝
___10.8.1 리눅스
___10.8.2 솔라리스
___10.8.3 설정
10.9 연습문제
10.10 참고문헌

▣ 11장: 클라우드 컴퓨팅
11.1 배경
___11.1.1 가격 대 성능 비
___11.1.2 확장 가능한 아키텍처
___11.1.3 수용량 계획
___11.1.4 저장장치
___11.1.5 다중 임대 사용자
11.2 OS 가상화
___11.2.1 부가비용
___11.2.2 자원 제어
___11.2.3 관찰 도구
11.3 하드웨어 가상화
___11.3.1 부가비용
___11.3.2 자원제어
___11.3.3 관찰 도구
11.4 비교
11.5 연습문제
11.6 참고문헌

▣ 12장: 벤치마킹
12.1 배경
___12.1.1 활동
___12.1.2 효과적인 벤치마킹
___12.1.3 벤치마크의 죄악
12.2 벤치마킹 유형
___12.2.1 마이크로 벤치마킹
___12.2.2 시뮬레이션
___12.2.3 리플레이
___12.2.4 업계 표준
12.3 방법론
___12.3.1 수동적 벤치마킹
___12.3.2 능동적 벤치마킹
___12.3.3 CPU 프로파일링
___12.3.4 USE 방법론
___12.3.5 부하 특성 평가
___12.3.6 커스텀 벤치마크
___12.3.7 연속 부하 증가
___12.3.8 정상 여부 검사
___12.3.9 통계적 분석
12.4 벤치마크 질문
12.5 연습문제
12.6 참고문헌

▣ 13장: 사례연구
13.1 사례 분석: 암막 커튼
___13.1.1 문제 기술
___13.1.2 지원
___13.1.3 시작하기
___13.1.4 어떤 모험을 택할 것인가?
___13.1.5 USE 방법론
___13.1.6 이제 다 끝난 것일까?
___13.1.7 두 번째 시도
___13.1.8 기본
___13.1.9 암막 커튼 제치기
___13.1.10 커널 심문하기
___13.1.11 왜 그랬을까?
___13.1.12 후일담
13.2 해설
13.3 추가 정보
13.4 참고문헌

▣ 부록 A: USE 방법론 - 리눅스
물리적 자원
소프트웨어 자원
참고문헌
물리적 자원
소프트웨어 자원

▣ 부록 B: 방법론 - 솔라리스
참고문헌
리눅스

▣ 부록 C: sar 요약
솔라리스
syscall 프로바이더

▣ 부록 D: 한 줄짜리 DTrace 프로그램 예제
proc 프로바이더
profile 프로바이더
sched 프로바이더
fbt 프로바이더
pid 프로바이더
io 프로바이더
sysinfo 프로바이더
vminfo 프로바이더
ip 프로바이더
tcp 프로바이더
udp 프로바이더
기능

▣ 부록 E: DTrace 스크립트를 시스템탭으로 바꾸기
용어
프로브
내장 변수
함수
예제1: 시스템콜 엔트리 프로브 나열하기
예제2: read()가 반환하는 크기 요약하기
예제3: 프로세스 이름별로 시스템 콜 횟수 세기
예제4: 프로세스 ID 123인 프로세스에 대해 시스템콜 이름별로 횟수 세기
예제5: "httpd" 프로세스에 대해 시스템콜 이름별로 시스템콜 횟수 세기
예제6: 프로세스 이름과 파일 경로별로 파일 open() 횟수 세기
예제7: "mysqld" 프로세스의 read() 지연시간 요약하기
예제8: 새로 시작되는 프로세스 이름과 인자를 트레이스하기
예제9: 100Hz로 커널 스택 샘플링하기
참고문헌

▣ 부록 F: 연습문제 해답
2장 - 방법론
3장 - OS
6장 - CPU
7장 - 메모리
8장 - 파일 시스템
9장 - 디스크
11장 - 클라우드 컴퓨팅

▣ 부록 G: 시스템 성능 인명록

▣ 부록 H: 용어

▣ 부록 I: 참고문헌

저자소개

브렌던 그레그 (지은이)    정보 더보기
넷플릭스의 선임 성능 엔지니어입니다. BPF(eBPF)의 주요 기여자로 주요 BPF 프론트엔드 개발과 관리를 도왔고, BPF를 관측가능성 용도로 사용하는 방식을 개척했으며, 수많은 BPF 기반 성능 분석 도구들을 만들었습니다. 대표적인 저서로는 《Systems Performance: Enterprise and the Cloud 2/E》(Pearson, 2020)이 있습니다.
펼치기
오현석 (옮긴이)    정보 더보기
모빌리티42 이사로 일하면서 매일 고객의 요청에 따라 코드를 만드는 현업 개발자다. 『코틀린 함수형 프로그래밍』(에이콘, 2023) 등 코틀린 서적을 여러 권 번역했고, 코틀린 외에도 『실전 파이썬 핸즈온 프로젝트』(책만, 2022), 『읽고 나면 진짜 쉬워지는 자료 구조』(길벗, 2024) 등 다양한 프로그래밍 언어와 프로그래밍 기술에 대한 책을 번역했으며, 『핵심 코틀린 프로그래밍』(에이콘, 2023) 책을 쓴 저자이기도 하다.
펼치기
서형국 (옮긴이)    정보 더보기
KAIST, 서강대학교 정보통신대학원을 거쳐 과거에는 텍스트마이닝, 현재는 언어 AI의 다양한 프로젝트에 참여했다. 현재는 LG CNS D&A연구소에서 MLOps, 생성형 AI 관련 클라우드 AI 서비스 개발 업무를 수행하고 있다. 그간의 경험으로 사소하지만 도움이 되는 엔지니어가 됐으면 하는 교회 집사이자 고양이 집사이다.
펼치기
이 포스팅은 쿠팡 파트너스 활동의 일환으로,
이에 따른 일정액의 수수료를 제공받습니다.
이 포스팅은 제휴마케팅이 포함된 광고로 커미션을 지급 받습니다.
도서 DB 제공 : 알라딘 서점(www.aladin.co.kr)
최근 본 책