1. 광고배너
  2. 광고배너
/ 이전버튼 다음버튼
2
미리보기

gRPC 시작에서 운영까지(클라우드 컴퓨팅)
저자 : 카순인드라시리,다네쉬쿠루푸 ㅣ 출판사 : 에이콘출판 ㅣ 역자 : 한성곤

2020.11.12 ㅣ 284p ㅣ ISBN-13 : 9791161754635

정가25,000
판매가23,750(5% 할인)
적립금 1,000원 (4%)
배송일정 04월 24일 출고 가능
주문 수량 변경시 안내 배송안내
쿠폰 및 결제혜택 확인하기

크기 기타 규격
제품구성 단행본
이용약관 청약철회
국내도서 > 컴퓨터 > 시스템공학 > 소프트웨어공학
클라우드 및 마이크로서비스 아키텍처의 출현으로 오늘날 애플리케이션은 프로세스간 통신 기술을 사용해 연결되며, gRPC는 가장 널리 사용되는 효율적인 통신 기술 중 하나이다. 이 책은 gRPC를 처음 시작하는 아키텍트에게 애플리케이션 간 통신 설계를 위한 깊이 있는 이해를 제공한다. 또한 개발자들이 gRPC를 실제 서비스에 적용할 때 필요한 인증과 권한 관리, 확장을 위한 로드 밸런싱 등 다양한 고급 기술도 실제 사례를 중심으로 Go와 Java 언어를 통해 제시한다.

펼쳐보기

[목 차]

1장. gRPC 소개
__gRPC
____서비스 정의
____gRPC 서버
____gRPC 클라이언트
____클라이언트-서버 메시지 흐름
__프로세스 간 통신의 역사
____기존 RPC
____SOAP
____REST
____gRPC의 시작
____왜 gRPC인가?
____다른 프로토콜과의 비교: 그래프QL과 쓰리프트
__gRPC 실사례
____넷플릭스
____etcd
____드롭박스
__요약

2장. gRPC 시작
__서비스 정의 작성
____메시지 정의
____서비스 정의
__구현
____서비스 개발
____gRPC 클라이언트 개발
__빌드와 실행
____Go 서버 빌드
____Go 클라이언트 빌드
____Go 서버와 클라이언트 실행
____자바 서버 빌드
____자바 클라이언트 빌드
____자바 서버와 클라이언트 실행
__요약

3장. gRPC 통신 패턴
__단순 RPC(단일 RPC)
__서버 스트리밍 RPC
__클라이언트 스트리밍 RPC
__양방향 스트리밍 RPC
__마이크로서비스 통신을 위한 gRPC
__요약

4장. gRPC: 동작 원리
__RPC 흐름
__프로토콜 버퍼를 사용한 메시지 인코딩
____인코딩 기술
__길이-접두사 지정 메시지 프레이밍
__HTTP/2를 통한 gRPC
____요청 메시지
____응답 메시지
____gRPC 통신 패턴에서의 메시지 흐름 이해
__gRPC 구현 아키텍처
__요약

5장. gRPC: 고급 기능
__인터셉터
____서버 측 인터셉터
____클라이언트 측 인터셉터
__데드라인
__취소 처리
__에러 처리
__멀티플렉싱
__메타데이터
____메타데이터 생성과 조회
____메타데이터 전송과 수신: 클라이언트 측
____메타데이터 전송과 수신: 서버 측
____네임 리졸버
__로드밸런싱
____로드밸런서 프록시
____클라이언트 측 로드밸런싱
____압축
__요약

6장. 보안 적용 gRPC
__TLS를 사용한 gRPC 채널 인증
____단방향 보안 연결 활성화
____mTLS 보안 연결 활성화
__gRPC 호출 인증
____베이직 인증 사용
____OAuth 2.0 사용
____JWT 사용
____구글 토큰 기반 인증 사용
__요약

7장. 서비스 수준 gRPC 실행
__gRPC 애플리케이션 테스트
____gRPC 서버 테스트
____gRPC 클라이언트 테스트
____부하 테스트
____지속 통합
__배포
____도커로의 배포
____쿠버네티스로의 배포
__관찰 가능성
____메트릭
____로그
____추적
____디버깅과 문제 해결
____추가 로깅 활성화
__요약

8장. gRPC 생태계
__gRPC 게이트웨이
__gRPC를 위한 HTTP/JSON 트랜스코딩
__gRPC 서버 리플렉션 프로토콜
__gRPC 미들웨어
__상태 확인 프로토콜
__gRPC 상태 프로브
__다른 생태계 프로젝트
__요약


[본 문]

현대 소프트웨어 애플리케이션은 프로세스 간 통신 기술을 활용해 컴퓨터 네트워크를 통해 서로 연결되는 경우가 많다. gRPC는 이런 분산 애플리케이션이나 마이크로서비스 구축을 위해 사용되는 고성능 RPC(Remote Procedure Calls)를 기반으로 하는 최신 프로세스 간 통신 스타일이며, 마이크로서비스와 클라우드 네이티브 애플리케이션의 출현으로 gRPC 채택이 기하급수적으로 증가하고 있다.

이 책을 쓰게 된 것은 gRPC 활용이 증가하면서 gRPC 애플리케이션 개발 주기의 모든 단계에서 최고의 참조 가이드로 사용할 수 있는 깊이 있는 책이 필요하다고 느꼈기 때문이다. gRPC의 다양한 리소스와 코드 샘플이 도처(문서, 블로그, 기사, 콘퍼런스 토크 등)에 있지만 gRPC 애플리케이션을 개발하는 데 사용할 수 있는 단일 리소스는 없을뿐더러 내부 프로토콜과 동작 방식의 리소스도 없다.
이런 도전을 극복하고 gRPC의 기본 사항, 기존 프로세스 간 통신 기술과의 차이점, 실제 gRPC 통신 패턴, Go 언어와 자바를 사용한 애플리케이션 개발, 이면의 동작 방식, 실제 환경에서의 실행, 쿠버네티스 및 기타 생태계와의 동작 방식에 대해 포괄적인 이해를 제공하고자 한다.
(/ 지은이의 말 중에서)

클라우드 네이티브와 마이크로서비스 아키텍처의 출현과 함께 도커와 같은 컨테이너 기반 시스템 구축과 운영은 급변하는 비즈니스와 기술 변화에 빠르게 적응하기 위한 기업에게는 필수를 넘어 기본이 됐다. 아울러 클라우드와 마이크로서비스를 적극 활용하기 위한 폴리글랏 프로그래밍(polyglot programming)과 다양한 서비스 간 통신 기술은 핵심 기술로 부각되고 있다. 특히 다양한 언어와 시스템과의 효율적인 통신을 위한 gRPC는 중요한 기술로 빠르게 자리 잡았다.
gRPC는 구글 데이터센터에서 수천 개의 여러 서비스를 연결하고자 만들어져 10년 이상 활용된 스터비(Stubby)라는 소프트웨어에서 시작됐고, 2015년 오픈소스로 공개된 이후 넷플릭스와 같은 대형 서비스에 적극적으로 활용되고 있으며, 여러 오픈소스 커뮤니티의 적극적인 지원으로 계속 발전하고 있다. 특히 현재 공식적으로 지원되는 언어는 여러 시스템 환경과 컴파일러를 포함하여 C/C++, C#, 자바, 파이썬, 루비 등의 전통적인 언어뿐만 아니라 오브젝티브C, Go, Node.js, 다트(Dart), 코틀린(Kotlin) 등 비교적 최신 언어도 포함한다.
이 책은 gRPC 기본적인 활용의 실제 사례를 기반으로 다양한 가이드를 제공할 뿐만 아니라 기존 통신 기술과의 비교를 통해 애플리케이션 간 통신을 설계하는 소프트웨어 아키텍트에게 훌륭한 지침을 제공한다. 또한 여러 통신 패턴과 내부 동작 방식을 깊이 있게 설명해 통신 기술을 포괄적으로 이해할 수 있도록 돕고, 서비스 수준의 실제 적용 시에 고려돼야 할 다양한 기술 요소를 자세하게 설명한다. 인증과 접근 통제, 서비스 확장을 위한 로드밸런싱 등의 고급 기술을 포함하며, 개발 주기에 필요한 테스팅, CI/CD 통합과 다양한 모니터링 기술도 잘 제시하고 있다.
이 책이 gRPC 통신 기술을 활용한 견고한 애플리케이션과 마이크로서비스 개발에 토대가 되기를 희망한다.
(/ 옮긴이의 말 중에서)

펼쳐보기
★ 이 책에서 다루는 내용 ★

■ gRPC의 기본 사항을 이해하고 유사한 기술과 비교하기
■ 실제 사례를 통한 gRPC 통신 패턴 확인
■ gRPC 통신 프로토콜의 내부 세부 사항
■ 인터셉터, 멀티플렉싱, 에러 처리 등의 고급 gRPC 기능 탐색
■ 통신 채널을 보호하고 사용자를 인증하기
■ gRPC 애플리케이션 수명 주기에 따라 테스트, CI/CD 통합, 도커, 쿠버네티스 배포

★ 이 책의 대상 독자 ★

여러 프로세스 간 통신 기술을 사용해 분산 애플리케이션과 마이크로서비스를 구축하는 개발자를 위한 책이다. 개발자가 분산된 애플리케이션이나 마이크로서비스를 개발하려면 gRPC의 기본 사항과 함께 서비스 간 통신이 필요한 때와 사용하는 방법, 실제 환경에서의 모범 사례 등을 배워야 한다. 아울러 마이크로서비스나 클라우드 네이티브 아키텍처를 채택하고 서비스 통신 방식을 설계하는 아키텍트는 다른 기술과 비교해보고, 언제 사용해야 하는지, 또는 언제 사용하지 말아야 하는지 등의 지침을 제공해야 하기 때문에 많은 인사이트를 얻을 수 있다.
이 책을 읽는 개발자와 아키텍트는 프로세스 간 통신 기술, 서비스 지향 아키텍처(SOA, Service-Oriented Architecture), 마이크로서비스와 같은 기본적인 분산 컴퓨팅의 기본 지식이 있다고 가정한다.

★ 이 책의 구성 ★

실제 적용 사례를 통해 이론적인 개념을 설명하며, Go 언어와 자바를 사용한 코드 예제를 광범위하게 활용해 각 개념에 대한 실무 경험을 제공한다. 이 책은 다음과 같이 8개의 장으로 구성됐다.
1장, 'gRPC 소개'에서는 gRPC 기본 사항의 기초 지식을 제공하고 REST, GraphQL, 다른 RPC 기술과 같은 유사한 프로세스 간 통신 기술 스타일을 비교한다.
2장, 'gRPC 시작'에서는 Go 언어와 자바를 사용해 완전한 gRPC 애플리케이션 구축의 첫 번째 경험을 제공한다.
3장, 'gRPC 통신 패턴'에서는 실제 예제를 통해 gRPC 통신 패턴을 살펴본다.
4장, 'gRPC: 동작 원리'에서는 gRPC 내부에 관심이 있는 고급 사용자를 위한 장으로, 서버와 클라이언트 간 gRPC 통신의 모든 단계와 네트워크상 동작 방식을 설명한다.
5장, 'gRPC: 고급 기능'에서는 인터셉터(interceptors), 데드라인(deadlines), 메타데이터(metadata) 멀티플렉싱(multiplexing), 로드밸런싱(load balancing) 등과 같은 주요 고급 기능을 설명한다.
6장, '보안 적용 gRPC'에서는 통신 채널을 보호하는 방법과 gRPC 애플리케이션에 대한 사용자 인증과 접근 제어에 대한 포괄적인 이해를 제공한다.
7장, '서비스 수준 gRPC 실행'에서는 gRPC 애플리케이션의 전체 개발 주기(development life cycle)를 살펴본다. gRPC 애플리케이션의 테스팅, CI/CD와의 통합, 도커(Docker), 쿠버네티스 배포와 실행, 상태 확인을 알아본다.
8장, 'gRPC 생태계'에서는 gRPC의 유용한 지원 요소들을 설명한다. 대부분의 프로젝트는 gRPC 기반의 실제 애플리케이션을 구축할 때 유용하다.

펼쳐보기
카순 인드라시리
WSO2의 설계자, 저자, 마이크로서비스 및 통합 에반젤리스트, 통합 아키텍처 디렉터이며, 샌프란시스코 베이 에어리어(San Francisco Bay Area)에서 벤더 중립적인 마이크로서비스 모임인 ‘마이크로서비스, API, 통합 밋업 그룹(Microservices, APIs, and Integration meetup group)’을 설립했다. 『Beginning WSO2 ESB』(Apress, 2017)의 저자이며, 엔터프라이즈 통합 분야에서 쌓은 7년 이상의 경험을 바탕으로 소프트웨어 아키텍트 및 제품 리더로 일했다.
아파치 커미터와 PMC의 멤버로 활동 중이며 샌프란시스코, 런던, 바르셀로나에서 열린 여러 콘퍼런스에서 엔터프라 이즈 통합과 마이크로서비스에 관련된 주제를 발표했다. 베이 에어리어 마이크로서비스, 컨테이너, 클라우드 네이티브 밋업에서 강연을 하고 있으며, 마이크로서비스에 대한 블로그와 논문도 게시한다. 다수의 포춘 100대 기업과 협력해 엔터프라이즈 통합 및 마이크로서비스 영역에서 솔루션을 제공한다.

다네쉬 쿠루푸
엔터프라이즈 통합과 마이크로서비스 기술 분야에서 5년 이상의 경험을 쌓은 WSO2의 기술 책임자다. 오픈소스이자 클라우드 네이티브 프로그래밍 언어인 발레리나(Ballerina)에 gRPC 지원을 추가하는 주요 설계자이자 개발자다. gRPC 커뮤니티의 일원으로 자바용 WSO2 마이크로서비스 프레임워크와 WSO2 거버넌스 레지스트리의 주요 공헌자이기도 하다.


옮긴이 한성곤
현재 삼성SDS에서 코드 품질과 관련된 다양한 업무를 수행하고 있다. 관련 지표 수립과 이를 측정하기 위한 툴 개발뿐만 아니라 개선을 위한 다양한 활동(리팩토리/클린코드 교육, 코드 리뷰 및 점검 수행 등)도 하고 있다. 최근에는 Go 언어 등을 활용한 마이크로서비스 기반의 코드봇 시스템 개발을 리딩하고 있으며, 변경된 코드에 대해 여러 점검을 자동으로 수행하고 결과를 제공한다.
20여 년 가까이 개발과 소프트웨어 아키텍트로서 나름 열심히 살았지만 뭔가 생산적인 활동을 하지 못했던 점을 아쉬워하며, 늦은 나이임에도 불구하고 최근 다양한 활동을 하려고 노력 중이다. 특허 출원, 콘퍼런스 발표, 오픈소스 소프트웨어 활동 등을 하고 있으며, 첫 번역인 이 책도 그 노력 중 하나다. 저서도 집필 중인데, 올해 안에 마무리하고자 노력하고 있다.

펼쳐보기

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.
도서평점
내용
등록하기
0/2000자
교환/반품 방법
  • 마이페이지 > 주문관리 > 주문/배송조회 > 주문조회 후  [1:1상담신청]  또는 고객센터 (1544-9020)
  • ※ 오픈마켓, 해외배송 주문상품 문의 시 [1:1상담신청] 또는 고객센터 (1544-9020)
교환/반품 가능기간
  • 변심반품의 경우 수령 후 7일 이내
  • 상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
교환/반품 비용
  • 단순변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
  • 해외직배송 도서 구매 후 단순변심에 의한 취소 및 반품 시 도서판매가의 20% 수수료 부과
교환/반품 불가사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우 예) 만화, 잡지, 수험서 및 문제집류
  • 복제가 가능한 상품 등의 포장을 훼손한 경우 예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
상품 품절
  • 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는 이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁 해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함

이 분야의 베스트

더보기 >

    이 분야의 신간

    더보기 >
      맨위로가기

      영풍문고 로고

      • 회사명 : (주)영풍문고
      • 대표이사 : 김경환
      • 소재지 : 서울특별시 종로구 청계천로 41 (우)03188
      • 사업자 등록번호 : 773-86-01800 ㅣ 통신판매업 신고번호 : 2023-서울종로-0130 [ 사업자정보확인 ]
      • 개인정보관리 책임자 : 조순제 ㅣ customer@ypbooks.co.kr ㅣ 대량주문 : webmaster@ypbooks.co.kr
      COPYRIGHT © YOUNGPOONG BOOKSTORE INC. ALL RIGHTS RESERVED.
      영풍문고 네이버블로그 영풍문고 인스타그램
      맨위로가기