Видео: разработка микросервиса на Go на примере реального проекта

Обложка: Видео: разработка микросервиса на Go на примере реального проекта
6

В этом видео мы рассмотрим готовый проект на Go, являющийся API Gateway для микросервисной архитектуры. Он используется в рамках системы заметок, которую мы разрабатываем в отдельной серии материалов.

Мы разберём реализацию JSON Web Token авторизации и систему ошибок. Посмотрим на программную архитектуру проекта, изучим программные паттерны разработки и посмотрим, как использовать в проекте язык программирования Golang.

Исходный код проекта доступен на GitHub.

0:33 Обзор структуры проекта, функции main в файле main.go — точке входа в приложении.

2:42 Обзор обёртки над логером logrus. Логирование в разные файлы с разным уровнем логирования.

12:34 Создание объекта конфигурации из YAML-файла при помощи библиотеки cleanenv.

16:30 Разбираем обёртку над кэшем в Golang и реализацию кэша с использованием библиотеки freecache.

21:40 Реализация JSON Web Token.

32:05 Смотрим на хендлеры — обработчики запросов к сервису, разбираем паттерн Data Transfer Object в Golang.

41:13 Система обработки ошибок и определения статуса HTTP кода возврата по ошибке.

1:00:10 Общий REST Client для взаимодействия с RESTful сервисами.

1:09:00 Разбираемся с сервисами бизнес-логики и контекстом в Golang.

1:23:10 Функции старта приложения по порту и на сокете, Graceful Shutdown с закрытием ресурсов.

1:26:40 Разбираемся с особенностью Golang: nil != nil.

 

Что думаете?