본문 바로가기

리디 접속이 원활하지 않습니다.
강제 새로 고침(Ctrl + F5)이나 브라우저 캐시 삭제를 진행해주세요.
계속해서 문제가 발생한다면 리디 접속 테스트를 통해 원인을 파악하고 대응 방법을 안내드리겠습니다.
테스트 페이지로 이동하기

Go 언어를 활용한 네트워크 프로그래밍 상세페이지

컴퓨터/IT 개발/프로그래밍

Go 언어를 활용한 네트워크 프로그래밍

보안에 강하고 신뢰할 수 있는 네트워크 서비스
소장종이책 정가33,000
전자책 정가30%23,100
판매가23,100
Go 언어를 활용한 네트워크 프로그래밍 표지 이미지

Go 언어를 활용한 네트워크 프로그래밍작품 소개

<Go 언어를 활용한 네트워크 프로그래밍> 간결하며 신뢰할 수 있는 네트워크 소프트웨어!

『Go 언어를 활용한 네트워크 프로그래밍』은 Go 언어를 사용하여 보안에 강하며, 신뢰할 수 있고, 가독성이 좋은, 그리고 실제 서비스에 사용할 수 있는 네트워크 코드를 작성할 수 있도록 도와준다. 전반부에서는 네트워크와 트래픽 라우팅에 대한 기본 지식을 배우며, 후반부에서는 배운 지식을 활용하여 TCP와 UDP, 유닉스 소켓을 사용하는, 신뢰성 있는 데이터 통신 프로그램을 작성한다.


출판사 서평

간결하며 신뢰할 수 있는 네트워크 소프트웨어!

주요 프로그래밍 언어에서 장점만 조합하여 만든 Go 언어는 빠른 속도와 확장성을 자랑하며, 네트워크와 멀티 프로세스 처리에 고성능을 내도록 설계되었습니다. 즉, 네트워크 프로그래밍에 최적화된 언어입니다. 《Go 언어를 활용한 네트워크 프로그래밍》은 Go 언어를 사용하여 보안에 강하며, 신뢰할 수 있고, 가독성이 좋은, 그리고 실제 서비스에 사용할 수 있는 네트워크 코드를 작성할 수 있도록 도와줍니다. 전반부에서는 네트워크와 트래픽 라우팅에 대한 기본 지식을 배우며, 후반부에서는 배운 지식을 활용하여 TCP와 UDP, 유닉스 소켓을 사용하는, 신뢰성 있는 데이터 통신 프로그램을 작성합니다. HTTP나 HTTP/2와 같은 상위 계층의 네트워크 프로토콜을 점진적으로 경험하고, TLS를 사용하여 네트워크를 통해 서버와 클라이언트, 서드파티 API 사이에서 안전하게 통신하는 애플리케이션을 구현합니다. 한마디로 이 책은 Go 언어에 내재된 병렬성과 빠른 컴파일 속도, 그리고 풍부한 표준 라이브러리를 활용할 수 있는 다양한 방법을 살펴봅니다.

주요 내용

■ IPv4, IPv6의 구조, 멀티캐스트, DNS, 그리고 네트워크 주소 해석과 같은 인터넷 프로토콜의 기초
■ 소켓 레벨 통신에서 신뢰성을 확보하는 방법
■ 핸들러와 미들웨어, 멀티플렉서를 사용하여 최소한의 코드로 HTTP 애플리케이션을 작성하는 방법
■ TLS를 사용하여 애플리케이션에 인증과 암호화를 통합하는 도구 사용법
■ Go 언어가 쉽게 처리할 수 있는 데이터 포맷인 JSON이나 Gob, XML, 프로토콜 버퍼를 활용하여 데이터를 직렬화하고 저장하거나 전송하는 방법
■ 요청이나 에러 등의 정보를 포함하는 메트릭스를 만들기 위한 코드 계측 방법
■ 애플리케이션을 클라우드에 배포하는 방법과 시점



저자 소개

저 : 애덤 우드벡 (Adam Woodbeck)
애덤 우드벡은 바라쿠다 네트워크(Barracuda Networks)의 시니어 소프트웨어 엔지니어이며, 주로 Go 언어를 사용한 분산 클라우드 환경을 구현하고 있다. Go 언어로 작성된 네트워크 기반 서비스의 아키텍트로도 활동하고 있다.


역 : 김찬빈
숭실대학교에서 정보통신공학 학사와 석사를 취득하였다. Go 언어의 매력에 빠져 2017년부터 시스템 엔지니어로 근무하며 다양한 시스템 도구와 대규모 트래픽 서비스를 Go 언어로 구현하고 운영하였다. 또한, 기존에 작성된 시스템 중 개선이 필요한 부분을 Go 언어로 포팅하여 비약적인 성능 향상을 이루기도 했다. 평소 동료 개발자들에게 Go 언어의 매력을 전하는 한편, 백발의 개발자를 꿈꾸며 개발과 삽질을 즐기는 중이다.

목차

옮긴이 머리말 xi
베타리더 후기 xiii
머리말 xv
이 책에 대하여 xvii

PART I |네트워크 아키텍처

CHAPTER 1 |네트워크 시스템 개요
네트워크 토폴로지 선택하기
대역폭 vs 레이턴시
개방형 시스템 상호 연결 참조 모델
TCP/IP 모델
이 장에서 배운 것

CHAPTER 2 |리소스의 위치와 트래픽 라우팅
인터넷 프로토콜
IPv4 주소 지정
IPv6 주소 지정
인터넷 제어 메시지 프로토콜
인터넷 트래픽 라우팅
라우팅 프로토콜
이름과 주소 해석
이 장에서 배운 것

PART II |소켓 계층 프로그래밍

CHAPTER 3 |신뢰성 있는 TCP 데이터 스트림
TCP를 신뢰성 있게 만드는 것
TCP 세션 사용
Go 언어 표준 라이브러리를 이용한 TCP 연결 수립
이 장에서 배운 것

CHAPTER 4 |TCP 데이터 전송하기
net.Conn 인터페이스 사용하기
데이터 송수신
io 패키지를 이용한 안정적인 네트워크 애플리케이션 만들기
Go의 TCPConn 객체 살펴보기
일반적인 Go TCP 네트워크 문제 해결
이 장에서 배운 것

CHAPTER 5 |신뢰성 없는 UDP 통신
간단하고 신뢰성 없는 UDP 사용하기
UDP 데이터 송수신
파편화 피하기
이 장에서 배운 것

CHAPTER 6 |UDP 통신의 신뢰성 확보
TFTP를 이용한 신뢰성 있는 파일 전송
TFTP 타입
TFTP 서버
UDP로 파일 다운로드
이 장에서 배운 것

CHAPTER 7 |유닉스 도메인 소켓
유닉스 도메인 소켓이란
유닉스 도메인 소켓 파일에 바인딩
클라이언트와 인증하는 서비스 작성
이 장에서 배운 것

PART III |애플리케이션 계층 프로그래밍

CHAPTER 8 |HTTP 클라이언트 작성
HTTP의 기초 이해
Go에서 웹 리소스 가져오기
HTTP로 데이터 전송하기
이 장에서 배운 것

CHAPTER 9 |HTTP 서비스 작성
Go HTTP 서버 해부
핸들러
미들웨어
멀티플렉서
HTTP/2 서버 푸시
이 장에서 배운 것

CHAPTER 10 |Caddy: 모던 웹 서버
Caddy란
Caddy 사용해 보기
Caddy 환경구성 및 실행하기
모듈과 어댑터로 Caddy 확장하기
백엔드 웹 서비스로 요청 리버스 프락시하기
이 장에서 배운 것

CHAPTER 11 |TLS를 사용한 통신 보안
전송 계층 보안 심층 탐구
전송 중인 데이터의 보안
상호 TLS 인증
이 장에서 배운 것

PART IV |서비스 아키텍처

CHAPTER 12 |데이터 직렬화
객체 직렬화하기
직렬화된 객체 전송하기
이 장에서 배운 것

CHAPTER 13 |로깅과 메트릭스
이벤트 로깅
코드 계측하기
기본적인 HTTP 서버 계측하기
이 장에서 배운 것

CHAPTER 14 |클라우드로 이동
기초 작업하기
AWS Lambda
구글 Cloud Function
애저 Functions
이 장에서 배운 것

찾아보기


리뷰

구매자 별점

5.0

점수비율
  • 5
  • 4
  • 3
  • 2
  • 1

1명이 평가함

리뷰 작성 영역

이 책을 평가해주세요!

내가 남긴 별점 0.0

별로예요

그저 그래요

보통이에요

좋아요

최고예요

별점 취소

구매자 표시 기준은 무엇인가요?

'구매자' 표시는 리디에서 유료도서 결제 후 다운로드 하시거나 리디셀렉트 도서를 다운로드하신 경우에만 표시됩니다.

무료 도서 (프로모션 등으로 무료로 전환된 도서 포함)
'구매자'로 표시되지 않습니다.
시리즈 도서 내 무료 도서
'구매자’로 표시되지 않습니다. 하지만 같은 시리즈의 유료 도서를 결제한 뒤 리뷰를 수정하거나 재등록하면 '구매자'로 표시됩니다.
영구 삭제
도서를 영구 삭제해도 ‘구매자’ 표시는 남아있습니다.
결제 취소
‘구매자’ 표시가 자동으로 사라집니다.

이 책과 함께 구매한 책


이 책과 함께 둘러본 책



본문 끝 최상단으로 돌아가기

spinner
모바일 버전