이미지 검색을 사용해 보세요
검색창 이전화면 이전화면
최근 검색어
인기 검색어

소득공제
시스템 성능 분석과 최적화
엔터프라이즈에서 클라우드 환경까지 아우르는
오현석
위키북스 2015.12.15.
베스트
IT 모바일 top100 6주
가격
42,000
10 37,800
YES포인트?
2,100원 (5%)
5만원 이상 구매 시 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: 참고문헌

저자 소개 1

25년간 현업 개발자로 코드를 개발해 왔으며, 지금은 (주)대동애그테크에서 미래 농업 솔루션을 개발하는 본부를 총괄하고 있다. 『객체에서 함수로』(길벗, 2024), 『코틀린 함수형 프로그래밍』(에이콘, 2023) 등 코틀린 서적을 여러 권 번역했고, 코틀린 외에도 『실전 파이썬 핸즈온 프로젝트』(책만, 2022), 『읽고 나면 진짜 쉬워지는 자료 구조』(길벗, 2024) 등 다양한 프로그래밍 언어와 프로그래밍 기술에 대한 책을 30여 권 번역했으며, 『핵심 코틀린 프로그래밍』(에이콘, 2023) 책을 쓴 저자이기도 하다.

오현석의 다른 상품

저자 : 브렌든 그레그
브렌든 그레그는 조이언트(Joyent)의 책임 성능 엔지니어다. 조이언트에서 그는 소규모부터 대규모까지 클라우드 컴퓨팅 환경의 성능과 확장성 문제를 소프트웨어 스택의 모든 수준에서 분석하고 있다. DTrace(Prentice Hall, 2011)의 주 저자이고, Solaris Performance and Tools(Prentice Hall, 2007)의 공동 저자이며, 시스템 성능에 대한 수많은 글을 다양한 곳에 기고하기도 했다. 그는 이전에 썬 마이크로시스템즈의 성능 책임 및 커널 엔지니어였고, 성능 컨설턴트이며 트레이너이기도 했다.

품목정보

발행일
2015년 12월 15일
쪽수, 무게, 크기
792쪽 | 1505g | 188*240mm
ISBN13
9791158390181

출판사 리뷰

★ 이 책에서 다루는 내용 ★

◎ 최신 성능 분석 및 튜닝: 용어, 개념, 모델, 방법론 및 기법
◎ DTrace, 시스템탭(SystemTap), perf 등의 동적 트레이싱 기법과 도구
◎ 커널 내부 구조: 운영체제의 동작에 대한 상세한 설명
◎ 시스템 관찰 도구나 인터페이스, 프레임워크를 사용하는 방법
◎ 애플리케이션 성능에 대한 이해와 애플리케이션 성능 모니터링 방법
◎ CPU 최적화: 프로세서, 코어, 하드웨어 스레드, 캐시, 상호 연결, 커널 스케줄링
◎ 메모리 최적화: 가상 메모리, 페이징, 스와핑, 메모리 구조, 버스, 주소 공간 및 할당자
◎ 캐시를 포함하는 파일 시스템 I/O
◎ 저장 장치/컨트롤러, 디스크 I/O 부하, RAID, 커널 I/O
◎ 네트워크 관련 성능 문제: 프로토콜, 소켓, 인터페이스 및 물리적 연결
◎ 운영체제나 하드웨어 기반 가상화가 성능에 어떤 영향을 끼치는가와 클라우드 컴퓨팅을 사용할 때 발생할 수 있는 새로운 성능 문제
◎ 벤치마크: 정확한 벤치마크 결과를 얻는 방법과 벤치마크 수행 시 흔히 저지를 수 있는 실수를 피하는 방법

리뷰/한줄평1

리뷰

첫번째 리뷰어가 되어주세요.

한줄평

10.0 한줄평 총점

클린봇이 부적절한 글을 감지 중입니다.

설정