Перейти к содержимому
ГоМастер

Поиск по урокам

Найдите урок, курс, термин или раздел

Connect ~12 часов 25 уроковпродвинутый

Connect RPC: курс по фреймворку Buf для Go

Connect от Buf — современный RPC: один хендлер обслуживает gRPC, gRPC-Web и собственный простой протокол, дружественный браузерам и curl. Кодогенерация через buf, ошибки поверх HTTP-статусов, красивые клиенты для TypeScript. Курс — полный путь от установки до миграции с gRPC.

Чему научитесь

Чему научитесь

  • Строить сервисы на connectrpc.com/connect
  • Понимать три протокола и выбирать правильный
  • Настраивать buf: lint, breaking changes, generate
  • Писать interceptors и обрабатывать ошибки
  • Подключать браузерных клиентов (TypeScript)
  • Мигрировать существующий gRPC-сервис

Для кого курс

  • Командам на gRPC, которым нужен браузер
  • Тем, кто хочет curl-дружелюбный RPC
  • Проектам, начинающим API с чистого листа

Что понадобится

  • Базовый Go
  • Желательно знакомство с protobuf

Программа курса: 25 уроков

  1. 1Введение в Connect RPCПроблема gRPC в браузере, решение Connect.~15 мин · что такое connect rpc, connectrpc обзор
  2. 2Установка и настройкаgo get, buf-плагины, структура проекта.~18 мин · connect установка, buf setup
  3. 3Первый Connect-сервисconnectrpc handler, http.ListenAndServe.~20 мин · connect первый сервис, connect handler
  4. 4Протоколы: gRPC, gRPC-Web, ConnectОтличия, маршрутизация, совместимость.~18 мин · connect протоколы, grpc web vs connect
  5. 5Клиенты: подключение из Goconnect.NewClient, вызовы, контекст.~18 мин · connect клиент go, connect client
  6. 6Обработка ошибокconnect.NewError, коды, HTTP-маппинг.~18 мин · connect ошибки, connect error codes
  7. 7InterceptorsUnary и stream, цепочки, логи/метрики.~20 мин · connect interceptors, перехватчики connect
  8. 8Streaming в ConnectServer/client/bidi через connect.Stream.~22 мин · connect streaming, стримы connect
  9. 9Браузерные клиенты (TypeScript)@connectrpc/connect-web, CORS, примеры.~22 мин · connect typescript, браузерный клиент rpc
  10. 10buf CLI: линтинг и breaking changesbuf lint, buf breaking, правила API.~20 мин · buf lint, buf breaking
  11. 11buf generate: кодогенерацияbuf.gen.yaml, плагины, удалённые плагины BSR.~20 мин · buf generate, кодогенерация buf
  12. 12BSR: Buf Schema RegistryПубликация модулей, зависимости, версии.~20 мин · buf schema registry, bsr модули
  13. 13Аутентификация и безопасностьТокены через interceptors, TLS, CORS.~20 мин · connect безопасность, auth connect
  14. 14Compression и производительностьgzip, message limits, HTTP/2.~18 мин · connect производительность, сжатие grpc
  15. 15Отражение и документация APIDescriptors, генерация OpenAPI/доков.~18 мин · документация protobuf, openapi connect
  16. 16Тестирование Connect-сервисовhttptest, мок-клиенты, интеграционные тесты.~18 мин · тестирование connect, httptest connect
  17. 17Мониторинг и метрикиPrometheus, latency, размеры сообщений.~18 мин · мониторинг connect, метрики connect
  18. 18Версионирование схемЭволюция proto, backcompat-политики.~18 мин · версионирование protobuf, версии схем
  19. 19Интеграция с фреймворками (net/http)Mux-совместимость, middleware chi/echo.~18 мин · connect net http, интеграция connect
  20. 20Миграция с gRPC на ConnectПошаговый план, грабли, обратная совместимость.~22 мин · миграция grpc на connect, grpc to connect
  21. 21REST-шлюз и HTTP-совместимостьgrpc-gateway vs Connect, GET-запросы.~20 мин · rest шлюз grpc, connect rest
  22. 22Развертывание Connect-сервисовDocker, ingress, HTTP/2 на границе.~18 мин · деплой connect, connect docker
  23. 23Лучшая структура проектаproto/, gen/, service/ — реальный шаблон.~18 мин · структура проекта connect, buf проект структура
  24. 24Типичные ошибки и отладкаcurl-режим, частые грабли, диагностика.~16 мин · отладка connect, grpcurl connect
  25. 25Итоговый проект: API на ConnectСервис задач: proto, сервер, клиент, тесты.~30 мин · проект connect, api connect

Вопросы о курсе

Connect заменяет gRPC?

Connect совместим с gRPC: те же .proto, тот же код, но плюс простой протокол для браузеров и curl.

Что такое BSR?

Buf Schema Registry — хранилище proto-модулей с версионированием и зависимостями, как npm для схем.