gRPC: Up and Running. Создание облачных приложений на Go и gRPC — Kasun Indrasiri, Danesh Kuruppu — обложка книги
265 страниц
Go (Golang)
PDF
4.5

gRPC: Up and Running. Создание облачных приложений на Go и gRPC

Практическое руководство по gRPC на Go

Автор:

Год:

Краткое содержимое:

Введение

Книга «gRPC: Up and Running» (авторы Kasun Indrasiri и Danesh Kuruppu, 2020 год, 265 страниц) — это практическое руководство по созданию современных облачных приложений с использованием фреймворка gRPC на языке Go (Golang). Несмотря на то, что сайт PythonLib посвящён Python, эта книга заслуживает внимания любого разработчика, интересующегося микросервисной архитектурой и высокопроизводительными протоколами связи. gRPC — технология, активно используемая в экосистеме Python (например, через библиотеки grpcio), и понимание её основ на примере Go даёт глубокое понимание принципов, которые легко перенести на Python.

О чём книга

Книга последовательно знакомит читателя с gRPC: от установки и настройки до развёртывания в продакшене. Авторы начинают с основ — что такое gRPC, чем он отличается от REST, как работает HTTP/2 и Protocol Buffers. Затем переходят к созданию серверов и клиентов на Go, работе с потоками (streaming), обработке ошибок, аутентификации, балансировке нагрузки и мониторингу. Отдельные главы посвящены интеграции с Kubernetes и gRPC-web.

Для кого эта книга

Книга рассчитана на разработчиков, уже знакомых с Go (хотя базовые примеры понятны и новичкам). Она будет полезна:

  • Go-разработчикам, желающим освоить gRPC для микросервисов;
  • Python-разработчикам, которые хотят понять gRPC изнутри (многие концепции идентичны);
  • Архитекторам, проектирующим системы с высокой производительностью;
  • Всем, кто переходит с REST на gRPC.

Что узнает читатель

После прочтения вы сможете:

  • Понимать принципы gRPC и его отличия от REST;
  • Создавать эффективные .proto файлы и генерировать код;
  • Реализовывать унарные и стриминговые RPC (server-streaming, client-streaming, bidirectional);
  • Настраивать аутентификацию (SSL/TLS, токены);
  • Интегрировать gRPC с Kubernetes и Envoy;
  • Отлаживать и профилировать gRPC-сервисы.

Сильные стороны

Главное достоинство книги — практическая направленность. Каждая глава содержит готовые примеры кода на Go, которые можно сразу запустить. Авторы уделяют внимание не только теории, но и реальным проблемам: таймаутам, повторным попыткам, балансировке нагрузки. Книга написана живым языком, сложные концепции объясняются на аналогиях. Отдельно стоит отметить главу про gRPC-web — это редкость для литературы 2020 года.

Кому рекомендуется

Я рекомендую эту книгу всем, кто работает с микросервисами, независимо от основного языка. Для Python-разработчиков она станет отличным дополнением к официальной документации grpcio, так как показывает «взгляд со стороны» — на Go, но с теми же принципами. Если вы хотите понять gRPC глубоко и начать использовать его в своих проектах — это лучший старт.

Рекомендаций