Go 언어를 활용한 네트워크 프로그래밍
도서명:Go 언어를 활용한 네트워크 프로그래밍
저자/출판사:애덤,우드벡/제이펍
쪽수:428쪽
출판일:2022-01-14
ISBN:9791191600643
목차
옮긴이 머리말 xi
베타리더 후기 xiii
머리말 xv
이 책에 대하여 xvii
PART I | 네트워크 아키텍처 1
CHAPTER 1 | 네트워크 시스템 개요 3
네트워크 토폴로지 선택하기 3
대역폭 vs? 레이턴시 7
개방형 시스템 상호 연결 참조 모델 8
TCP/IP 모델 13
이 장에서 배운 것 17
CHAPTER 2 | 리소스의 위치와 트래픽 라우팅 19
인터넷 프로토콜 20
IPv4 주소 지정 20
IPv6 주소 지정 30
인터넷 제어 메시지 프로토콜 36
인터넷 트래픽 라우팅 37
라우팅 프로토콜 38
이름과 주소 해석 40
이 장에서 배운 것 48
PART II | 소켓 계층 프로그래밍 49
CHAPTER 3 | 신뢰성 있는 TCP 데이터 스트림 51
TCP를 신뢰성 있게 만드는 것 52
TCP 세션 사용 52
Go 언어 표준 라이브러리를 이용한 TCP 연결 수립 58
이 장에서 배운 것 81
CHAPTER 4 | TCP 데이터 전송하기 82
net.Conn 인터페이스 사용하기 82
데이터 송수신 83
io 패키지를 이용한 안정적인 네트워크 애플리케이션 만들기 98
Go의 TCPConn 객체 살펴보기 110
일반적인 Go TCP 네트워크 문제 해결 114
이 장에서 배운 것 116
CHAPTER 5 | 신뢰성 없는 UDP 통신 117
간단하고 신뢰성 없는 UDP 사용하기 118
UDP 데이터 송수신 119
파편화 피하기 128
이 장에서 배운 것 131
CHAPTER 6 | UDP 통신의 신뢰성 확보 132
TFTP를 이용한 신뢰성 있는 파일 전송 132
TFTP 타입 133
TFTP 서버 145
UDP로 파일 다운로드 150
이 장에서 배운 것 154
CHAPTER 7 | 유닉스 도메인 소켓 155
유닉스 도메인 소켓이란 156
유닉스 도메인 소켓 파일에 바인딩 157
클라이언트와 인증하는 서비스 작성 170
이 장에서 배운 것 177
PART III | 애플리케이션 계층 프로그래밍 179
CHAPTER 8 | HTTP 클라이언트 작성 181
HTTP의 기초 이해 182
Go에서 웹 리소스 가져오기 191
HTTP로 데이터 전송하기 197
이 장에서 배운 것 204
CHAPTER 9 | HTTP 서비스 작성 205
Go HTTP 서버 해부 206
핸들러 212
미들웨어 222
멀티플렉서 228
HTTP/2 서버 푸시 232
이 장에서 배운 것 238
CHAPTER 10 | Caddy: 모던 웹 서버 239
Caddy란? 240
Caddy 사용해 보기 241
Caddy 환경구성 및 실행하기 242
모듈과 어댑터로 Caddy 확장하기 248
백엔드 웹 서비스로 요청 리버스 프락시하기 257
이 장에서 배운 것 265
CHAPTER 11 | TLS를 사용한 통신 보****266
전송 계층 보****심층 탐구 267
전송 중인 데이터의 보****271
상호 TLS 인증 283
이 장에서 배운 것 295
PART IV | 서비스 아키텍처 297
CHAPTER 12 | 데이터 직렬화 299
객체 직렬화하기 300
직렬화된 객체 전송하기 316
이 장에서 배운 것 328
CHAPTER 13 | 로깅과 메트릭스 329
이벤트 로깅 330
코드 계측하기 354
기본적인 HTTP 서버 계측하기 359
이 장에서 배운 것 366
CHAPTER 14 | 클라우드로 이동 368
기초 작업하기 369
AWS Lambda 372
구글 Cloud Function 381
애저 Functions 387
이 장에서 배운 것 396
찾아보기 398