gRPC: Up and Running: Building Cloud Native Applications with Go and Java for Docker and Kubernetes
暫譯: gRPC:快速上手:使用 Go 和 Java 為 Docker 和 Kubernetes 建立雲原生應用程式
Indrasiri, Kasun, Kuruppu, Danesh
- 出版商: O'Reilly
- 出版日期: 2020-03-03
- 定價: $1,800
- 售價: 9.5 折 $1,710
- 語言: 英文
- 頁數: 200
- 裝訂: Quality Paper - also called trade paper
- ISBN: 1492058335
- ISBN-13: 9781492058335
-
相關分類:
Docker、Go 程式語言、程式語言、Java 程式語言、Kubernetes
-
相關翻譯:
gRPC 與雲原生應用開發 : 以 Go 和 Java 為例 (簡中版)
立即出貨 (庫存 < 4)
買這商品的人也買了...
-
$2,640$2,508 -
$1,575Graph Databases: New Opportunities for Connected Data, 2/e (Paperback)
-
$474$450 -
$2,340$2,223 -
$403AWS Lambda 實戰 : 開發事件驅動的無服務器應用程序 (AWS Lambda in Action: Event-Driven Serverless Applications)
-
$580$493 -
$580$452 -
$474$450 -
$352深入學習 Go 語言
-
$1,650$1,568 -
$1,200$1,000 -
$700$600 -
$2,166Building Event-Driven Microservices: Leveraging Organizational Data at Scale
-
$439數據中台架構:企業數據化最佳實踐
-
$500$390 -
$602設計模式就該這樣學:基於經典框架源碼和真實業務場景
-
$780$390 -
$414$393 -
$550$429 -
$500$390 -
$780$616 -
$420$357 -
$580$406 -
$680$530 -
$600$468
商品描述
Get a comprehensive understanding of gRPC fundamentals through real-world examples. With this practical guide, you'll learn how this high-performance interprocess communication protocol is capable of connecting polyglot services in microservices architecture, while providing a rich framework for defining service contracts and data types.
Complete with hands-on examples written in Go, Java, Node, and Python, this book also covers the essential techniques and best practices to use gRPC in production systems. Authors Kasun Indrasiri and Danesh Kuruppu discuss the importance of gRPC in the context of microservices development.
商品描述(中文翻譯)
透過實際案例全面了解 gRPC 的基本概念。這本實用指南將教您如何利用這個高效能的進程間通訊協議來連接微服務架構中的多語言服務,同時提供一個豐富的框架來定義服務合約和數據類型。
本書包含用 Go、Java、Node 和 Python 編寫的實作範例,還涵蓋了在生產系統中使用 gRPC 的基本技術和最佳實踐。作者 Kasun Indrasiri 和 Danesh Kuruppu 討論了 gRPC 在微服務開發中的重要性。
作者簡介
Kasun Indrasiri is an author and an evangelist of Microservices and Enterprise Integration Architecture with over ten years of experience in building distributed systems. He is the director of Integration Architecture at WSO2 and the product manager of the WSO2 Enterprise Integrator. He has authored Microservices for Enterprise (Apress, 2018) and Beginning WSO2 ESB (Apress, 2017) books and has spoken at several conferences including O'Reilly Software Architecture Conference 2019 in San Jose, GOTO Con 2019 in Chicago, and WSO2 Conferences in San Francisco, London, and Barcelona. Kasun lives in San Jose, California and has founded the "Silicon Valley Microservices, APIs and Integration" Meetup, which is one of the largest microservices meetups in the San Francisco Bay area.
Danesh Kuruppu is an Associate Technical Lead at WSO2 and with over five years of experience in Enterprise Integration and Microservices technologies. Danesh is the main designer and developer of adding gRPC support for the open source, cloud native programming language, Ballerina. He is part of the gRPC community and a key contributor to the WSO2 Microservices Framework for Java and WSO2 Governance Registry.
作者簡介(中文翻譯)
Kasun Indrasiri 是一位作者及微服務(Microservices)和企業整合架構(Enterprise Integration Architecture)的推廣者,擁有超過十年的分散式系統建置經驗。他是 WSO2 的整合架構總監及 WSO2 企業整合器(Enterprise Integrator)的產品經理。他著有《Microservices for Enterprise》(Apress, 2018)和《Beginning WSO2 ESB》(Apress, 2017)兩本書,並在多個會議上發表演講,包括 2019 年在聖荷西舉行的 O'Reilly 軟體架構會議、2019 年在芝加哥的 GOTO Con,以及在舊金山、倫敦和巴塞隆納的 WSO2 會議。Kasun 目前居住在加州聖荷西,並創立了「矽谷微服務、API 和整合」的 Meetup,這是舊金山灣區最大的微服務聚會之一。
Danesh Kuruppu 是 WSO2 的副技術負責人,擁有超過五年的企業整合和微服務技術經驗。Danesh 是為開源的雲原生程式語言 Ballerina 添加 gRPC 支援的主要設計師和開發者。他是 gRPC 社群的一員,也是 WSO2 Java 微服務框架和 WSO2 治理註冊中心的主要貢獻者。
目錄大綱
Preface
Why Did We Write This Book?
Who Is This Book For?
How This Book Is Organized
Using Code Examples
Conventions Used in This Book
O’Reilly Online Learning
How to Contact Us
Acknowledgments
1. Introduction to gRPC
What Is gRPC?
Service Definition
gRPC Server
gRPC Client
Client–Server Message Flow
Evolution of Inter-Process Communication
Conventional RPC
SOAP
REST
Inception of gRPC
Why gRPC?
gRPC Versus Other Protocols: GraphQL and Thrift
gRPC in the Real World
Netflix
etcd
Dropbox
Summary
2. Getting Started with gRPC
Creating the Service Definition
Defining Messages
Defining Services
Implementation
Developing a Service
Developing a gRPC Client
Building and Running
Building a Go Server
Building a Go Client
Running a Go Server and Client
Building a Java Server
Building a Java Client
Running a Java Server and Client
Summary
3. gRPC Communication Patterns
Simple RPC (Unary RPC)
Server-Streaming RPC
Client-Streaming RPC
Bidirectional-Streaming RPC
Using gRPC for Microservices Communication
Summary
4. gRPC: Under the Hood
RPC Flow
Message Encoding Using Protocol Buffers
Encoding Techniques
Length-Prefixed Message Framing
gRPC over HTTP/2
Request Message
Response Message
Understanding the Message Flow in gRPC Communication Patterns
gRPC Implementation Architecture
Summary
5. gRPC: Beyond the Basics
Interceptors
Server-Side Interceptors
Client-Side Interceptors
Deadlines
Cancellation
Error Handling
Multiplexing
Metadata
Creating and Retrieving Metadata
Sending and Receiving Metadata: Client Side
Sending and Receiving Metadata: Server Side
Name Resolver
Load Balancing
Load-Balancer Proxy
Client-Side Load Balancing
Compression
Summary
6. Secured gRPC
Authenticating a gRPC Channel with TLS
Enabling a One-Way Secured Connection
Enabling an mTLS Secured Connection
Authenticating gRPC Calls
Using Basic Authentication
Using OAuth 2.0
Using JWT
Using Google Token-Based Authentication
Summary
7. Running gRPC in Production
Testing gRPC Applications
Testing a gRPC Server
Testing a gRPC Client
Load Testing
Continuous Integration
Deployment
Deploying on Docker
Deploying on Kubernetes
Observability
Metrics
Logs
Tracing
Debugging and Troubleshooting
Enabling Extra Logging
Summary
8. The gRPC Ecosystem
gRPC Gateway
HTTP/JSON Transcoding for gRPC
The gRPC Server Reflection Protocol
gRPC Middleware
Health Checking Protocol
gRPC Health Probe
Other Ecosystem Projects
Summary
Index
目錄大綱(中文翻譯)
Preface
Why Did We Write This Book?
Who Is This Book For?
How This Book Is Organized
Using Code Examples
Conventions Used in This Book
O’Reilly Online Learning
How to Contact Us
Acknowledgments
1. Introduction to gRPC
What Is gRPC?
Service Definition
gRPC Server
gRPC Client
Client–Server Message Flow
Evolution of Inter-Process Communication
Conventional RPC
SOAP
REST
Inception of gRPC
Why gRPC?
gRPC Versus Other Protocols: GraphQL and Thrift
gRPC in the Real World
Netflix
etcd
Dropbox
Summary
2. Getting Started with gRPC
Creating the Service Definition
Defining Messages
Defining Services
Implementation
Developing a Service
Developing a gRPC Client
Building and Running
Building a Go Server
Building a Go Client
Running a Go Server and Client
Building a Java Server
Building a Java Client
Running a Java Server and Client
Summary
3. gRPC Communication Patterns
Simple RPC (Unary RPC)
Server-Streaming RPC
Client-Streaming RPC
Bidirectional-Streaming RPC
Using gRPC for Microservices Communication
Summary
4. gRPC: Under the Hood
RPC Flow
Message Encoding Using Protocol Buffers
Encoding Techniques
Length-Prefixed Message Framing
gRPC over HTTP/2
Request Message
Response Message
Understanding the Message Flow in gRPC Communication Patterns
gRPC Implementation Architecture
Summary
5. gRPC: Beyond the Basics
Interceptors
Server-Side Interceptors
Client-Side Interceptors
Deadlines
Cancellation
Error Handling
Multiplexing
Metadata
Creating and Retrieving Metadata
Sending and Receiving Metadata: Client Side
Sending and Receiving Metadata: Server Side
Name Resolver
Load Balancing
Load-Balancer Proxy
Client-Side Load Balancing
Compression
Summary
6. Secured gRPC
Authenticating a gRPC Channel with TLS
Enabling a One-Way Secured Connection
Enabling an mTLS Secured Connection
Authenticating gRPC Calls
Using Basic Authentication
Using OAuth 2.0
Using JWT
Using Google Token-Based Authentication
Summary
7. Running gRPC in Production
Testing gRPC Applications
Testing a gRPC Server
Testing a gRPC Client
Load Testing
Continuous Integration
Deployment
Deploying on Docker
Deploying on Kubernetes
Observability
Metrics
Logs
Tracing
Debugging and Troubleshooting
Enabling Extra Logging
Summary
8. The gRPC Ecosystem
gRPC Gateway
HTTP/JSON Transcoding for gRPC
The gRPC Server Reflection Protocol
gRPC Middleware
Health Checking Protocol
gRPC Health Probe
Other Ecosystem Projects
Summary
Index