gRPC в GOlang. Углубленный курс по gRPC
На курсе ты глубоко изучишь все возможности gRPC:
На курсе ты глубоко изучишь все возможности gRPC:
- Узнаешь все о gRPС для успешного трудоустройства в BigTech-компанию
- Научишься лучшим практикам gRPC от Senior-разработчика из OZON и сможешь применять их в работе
- Поймешь, в чем отличия gRPC от REST — популярного подхода построения API
- Научишься писать правильный легкомасштабируемый код так, как это делают разработчики в ведущих IT-компаниях
- Познакомишься с транспортной валидацией данных, автоматически генерируемой документацией и другими опциями gRPC и его экосистемы
- На живой практике научишься качественно обслуживать и тестировать микросервисы с помощью gRPC
1. Введение в синтаксис protobuf и экосистему gRPC
Бонус: реализуешь свой первый gRPC сервер, gRPC клиент и организуешь общение между ними.
2. Архитектурные вопросы построения проекта
3. Дополнительные опции экосистемы gRPC
4. Безопасность в gRPC
5. Паттерны и полезные практики в gRPC
6. Потоковая передача данных и тестирование сервиса
Результат: применишь стриминговые endpoint’ы в gRPC и реализуешь с их помощью консольный чат. Умеешь тестировать микросервисы с помощью gRPC и покрывать сервер тестами с применением mock-объектов. Реализуешь готовый проект, использующий богатый набор функций gRPC, который легко сможешь взять себе в портфолио для трудоустройства в BigTech-компанию.
- Protobuf
- gRPC
- Protoc
- Vendoring
- Postman / Evans
- Reflection
- CodeGeneration
- Buf.gen
- Env config
- Makefile
- PostgreSQL
- Docker
Бонус: реализуешь свой первый gRPC сервер, gRPC клиент и организуешь общение между ними.
2. Архитектурные вопросы построения проекта
- Clean code
- Clean architecture
- Patterns: DI, Adaptor, MVC
3. Дополнительные опции экосистемы gRPC
- gRPC Gateway
- Protogen-Validate
- Swagger
- Type of fields: oneof и fieldMask
- Goroutines
- http
4. Безопасность в gRPC
- TLS
- Authentication / authorization
- JWT
- Interceptors
- Public key / private key
- Security certificate
5. Паттерны и полезные практики в gRPC
- Timeout
- Retry
- Circuit breaker
- Load balancing
- Система обработки ошибок в gRPC
6. Потоковая передача данных и тестирование сервиса
- gRPC Stream
- Unit tests
- Minimock
- Table tests
Результат: применишь стриминговые endpoint’ы в gRPC и реализуешь с их помощью консольный чат. Умеешь тестировать микросервисы с помощью gRPC и покрывать сервер тестами с применением mock-объектов. Реализуешь готовый проект, использующий богатый набор функций gRPC, который легко сможешь взять себе в портфолио для трудоустройства в BigTech-компанию.
https://balun.courses/courses/grpc