목차 일부
이 책의 목적 ... xvii
당신이 알고 있어야 할 것 ... xix
이 책에서 사용되는 표기법 ... xxi
코드 예제 사용법 ... xxi
사파리(Safari) 사용 가능 ... xxii
연락처 ... xxii
감사의 말 ... xxii
독자 서비스 ... xxii
01장 시작하며 ... 1
웹 애플리케이션의 정의 ... 1
...
더보기
목차 전체
이 책의 목적 ... xvii
당신이 알고 있어야 할 것 ... xix
이 책에서 사용되는 표기법 ... xxi
코드 예제 사용법 ... xxi
사파리(Safari) 사용 가능 ... xxii
연락처 ... xxii
감사의 말 ... xxii
독자 서비스 ... xxii
01장 시작하며 ... 1
웹 애플리케이션의 정의 ... 1
웹 애플리케이션의 개발 ... 3
아키텍처의 정의 ... 4
어떻게 시작해야 할까? ... 5
02장 웹 애플리케이션 아키텍처 ... 9
계층적 소프트웨어 아키텍처 ... 9
계층 기반 기술들 ... 13
소프트웨어 인터페이스 디자인 ... 15
규모의 변화 ... 18
소프트웨어/하드웨어 분리 ... 20
하드웨어 플랫폼 ... 20
공유 서버 호스팅 ... 23
전용 서버 호스팅 ... 23
콜로케이션 ... 23
자체 호스팅 ... 24
하드웨어 플랫폼의 성장 ... 25
입수용이성 및 선행 시간 ... 25
수입, 운송, 그리고 설치 ... 26
공간 ... 26
전력 ... 27
네트워크 운영 센터 ... 27
연결성 ... 28
잉여 하드웨어 ... 28
네트워킹 ... 29
언어, 기술, 그리고 데이터베이스 ... 32
03장 개발 환경 ... 35
세 가지 규칙 ... 35
소스 컨트롤 사용 ... 36
소스 컨트롤이란? ... 36
유틸리티 - 가지고 있으면 좋은 것 ... 42
소스 컨트롤 제품들 ... 46
소스 컨트롤에 넣어야 할 것들 ... 55
소스 컨트롤에 넣지 말아야 할 것들 ... 57
한 방 빌드 ... 57
직접 수정하기 ... 58
개발 환경 만들기 ... 59
릴리스 절차 ... 61
릴리스 관리 ... 64
자동화하지 말아야 할 것들 ... 66
이슈 관리 ... 68
최소한의 기능들 ... 69
이슈 관리 소프트웨어 ... 69
관리할 것들 ... 73
이슈 관리 전략 ... 74
CADT ... 76
개발 모델의 확장 ... 77
코딩 규범 ... 78
테스트 ... 81
회귀 테스트 ... 81
수동 테스트 ... 82
04장 i18n, L10n 그리고 유니코드 ... 85
국제화와 지역화 ... 86
웹 애플리케이션의 국제화 ... 86
웹 애플리케이션의 지역화 ... 88
유니코드란? ... 90
유니코드 인코딩 ... 92
바이트 순서 표기 ... 96
UTF-8 인코딩 ... 97
UTF-8 웹 애플리케이션 ... 98
출력 관리 ... 98
입력 관리 ... 100
PHP에서의 UTF-8 사용 ... 100
다른 언어에서의 UTF-8 사용 ... 102
MySQL에서 UTF-8 사용 ... 102
이메일에서의 UTF-8 사용 ... 104
자바스크립트에서의 UTF-8 사용 ... 107
API에서의 UTF-8 사용 ... 108
05장 데이터 무결성과 보안 ... 111
데이터 무결성 정책 ... 112
적합, 유효, 그리고 무효 ... 113
UTF-8 필터링 ... 114
제어 문자 필터링 ... 120
HTML 필터링 ... 122
HTML을 사용하는 이유 ... 122
HTML 입력 필터링 ... 123
블랙리스트와 화이트리스트 ... 124
대조 ... 124
HTML 다루기 ... 125
크로스 사이트 스크립팅(XSS) ... 126
기본적인 결함 ... 126
사용자 입력 결함 ... 128
태그와 괄호 대조 ... 129
프로토콜 필터링 ... 132
SQL 주입 공격 ... 135
SQL 주입 공격 완화 ... 136
SQL 주입 공격 회피 ... 138
06장 이메일 ... 145
이메일 받기 ... 145
애플리케이션에서 이메일 수신하기 ... 148
대안적인 접근법 ... 149
MIME 형식 ... 150
간단한 MIME 이메일 분석 ... 152
UU 인코딩된 첨부 파일의 분석 ... 154
TNEF 첨부 파일 ... 155
무선통신사업자들은 당신을 싫어한다 ... 158
문자 집합과 인코딩 ... 161
사용자 인식 ... 163
단위 테스트 ... 165
07장 원격 서비스 ... 169
원격 서비스 클럽 ... 170
소켓 ... 170
HTTP 사용 ... 174
HTTP 요청/응답 주기 ... 174
HTTP 인증 ... 177
HTTP 요청 만들기 ... 178
원격 서비스 잉여성 ... 180
비동기 시스템 ... 184
XML 교환 ... 188
XML 파싱 ... 189
REST ... 191
XML-RPC ... 192
SOAP ... 193
경량 프로토콜 ... 194
메모리 사용 ... 194
네트워크 속도 ... 195
분석 속도 ... 195
쓰기 속도 ... 196
문제점 ... 196
만들기 ... 197
08장 병목 현상 ... 201
병목 지점 찾기 ... 202
소프트웨어 컴포넌트별 애플리케이션 영역 ... 204
하드웨어 컴포넌트별 애플리케이션 영역 ... 206
CPU 사용량 ... 208
코드 프로파일링 ... 210
Opcode 캐싱 ... 212
템플릿 속도 향상 ... 214
일반적인 해결책 ... 215
입출력(I/O) ... 216
디스크 입출력 ... 216
네트워크 입출력 ... 221
메모리 입출력 ... 226
메모리와 스왑 ... 227
외부 서비스와 블랙 박스 ... 231
데이터베이스 ... 231
쿼리 현장 검사 ... 232
쿼리 프로파일 ... 235
쿼리 및 인덱스 최적화 ... 236
캐시 ... 241
비정규화 ... 244
09장 웹 애플리케이션의 범위 가변성 ... 249
범위 가변성에 대한 미신 ... 250
범위 가변성이란? ... 250
하드웨어 범위 가변성 ... 251
수직적 범위 가변성 ... 252
수평적 범위 가변성 ... 253
지속적인 작업 ... 256
잉여성 ... 256
네트워크 범위 가변성 ... 261
PHP 범위 가변성 ... 262
부하 분산 ... 264
하드웨어를 통한 부하 분산 ... 266
소프트웨어를 통한 부하 분산 ... 267
4계층(L4) ... 269
7계층(L7) ... 270
대규모 분산 ... 273
비 HTTP 트래픽의 분산 ... 277
MySQL 범위 가변성 ... 280
저장소 뒷단 ... 280
MyISAM ... 282
InnoDB ... 283
BDB ... 284
Heap ... 285
MySQL 복제 ... 285
마스터-슬레이브 복제 ... 286
트리 복제 ... 288
마스터-마스터 복제 ... 290
복제 장애 ... 292
복제 지연 ... 293
데이터베이스 파티셔닝 ... 295
클러스터링 ... 295
연합 ... 297
대규모 데이터베이스 범위 가변성 ... 299
저장소 범위 가변성 ... 301
파일시스템 ... 302
프로토콜 ... 302
RAID ... 304
연합 ... 307
캐시 ... 309
데이터 캐시 ... 310
HTTP 요청 캐시 ... 311
10장 통계, 감시, 경보 ... 315
웹 통계 추적 ... 316
서버 로그 파일 ... 317
분석 ... 318
비컨의 사용 ... 319
분산 ... 322
부하 분산기 ... 324
사용자 계측 추적 ... 325
애플리케이션 감시 ... 327
대역폭 감시 ... 328
장기적 시스템 통계 ... 329
사용자 정의 시각화 ... 345
경보 ... 347
업타임 검사 ... 348
자원 수위 감시 ... 348
한계값 검사 ... 348
저수위 검사 ... 349
11장 API ... 351
데이터 피드 ... 351
RSS ... 352
RDF ... 355
Atom ... 357
기타 피드 형식 ... 358
피드 자동 탐지 ... 359
피드 템플릿 ... 359
OPML ... 361
피드 인증 ... 362
모바일 ... 365
WAP ... 366
XHTML 모바일 프로필 ... 367
웹 서비스 ... 370
API 전송 ... 373
REST ... 373
XML-RPC ... 374
SOAP ... 377
전송 방식 추상화 ... 381
API 오용 ... 383
API 키를 통한 감시 ... 383
조절 ... 384
캐시 ... 385
인증 ... 386
무인증 ... 387
일반 텍스트 ... 387
MAC ... 388
토큰 기반 시스템 ... 388
전망 ... 390
찾아보기 ... 391
더보기 닫기