Введение 0:00 В видео рассказывается о создании микросервисов для приложения, которое использует несколько фреймворков (Angular, React, Vue). Основная проблема - сложность управления кодом и релизами.
Решение 2:52 Идея создания микросервисов для каждого фреймворка, чтобы упростить управление кодом и релизами. Использование нескольких фреймворков и поддержка разных версий вендеров.
Примеры решений 6:37 Проект "Мозаик" использует сервер-сайт рендеринг, но не подходит для большого количества команд и релизов. "Сингл Спей" предлагает писать каждый микросервис как обычное приложение, но все равно все код собирает в единую сборку. Автор видео предлагает свое решение, основанное на использовании ядра "Сингл Спей" для управления микросервисами.
Микросервисы и их взаимодействие 9:22 Микросервис - это самостоятельная сингл пейшн, решающая одну задачу пользователя. Важно, чтобы каждый микросервис был автономным и не решал задачи команды целиком.
Схема работы микросервисов 11:22 Микросервисы общаются через посредника, который предоставляет общий интерфейс для всех приложений. Посредник предоставляет общие компоненты и обеспечивает единообразное отображение для всех приложений.
Загрузчик сервисов и бандлы 15:22 Загрузчик сервисов загружает скрипты и метафайлы микросервисов из бандлов. Бандлы содержат информацию о микросервисах, их версиях и флагах включения/выключения. Каждый микросервис создает метафайл конфиг, содержащий имя юрай роуд и список файлов для загрузки.
Разработка микросервисов 17:37 Автор объясняет, как он разработал систему микросервисов, которая позволяет загружать и использовать различные сервисы в одном проекте. Он использует загрузчик для загрузки конфигураций и файлов сервисов, а также роутер для маршрутизации запросов.
Общение между сервисами 19:36 Автор использует шину сообщений для общения между сервисами, которая позволяет отправлять команды и запросы. Он также объясняет, как можно использовать секьюрси для ограничения доступа к шине.
Сборка и компиляция микросервисов 21:36 Автор рассказывает о процессе сборки и компиляции микросервисов, который включает в себя использование webpack и Yarn. Он также объясняет, как можно предоставить вендеры для микросервисов и как они могут быть скомпилированы в бандл.
Разработка и взаимодействие с другими сервисами 26:36 Автор предлагает использовать репозитории для локальной разработки и отладки микросервисов. Он также объясняет, как можно проверить взаимодействие между сервисами, используя шаблоны и ким-сити.
Версионирование и общие библиотеки 29:36 Версионирование файлов и использование общих библиотек для микросервисов. Обсуждение важности строгой документации и стандартов для микросервисов.
Архитектура и роутинг 35:36 Создание второго приложения для интеграции с первым. Использование роутера для управления маршрутами и ролями.
Шареный код и ошибки 39:36 Обсуждение управления и поддержки библиотек с общим кодом. Отсутствие обратной связи для команд в микросервисах. Консистентность данных на уровне бэк-энда.
Микросервисы и их взаимодействие 41:36 Микросервисы не могут контролировать друг друга, это делается людьми в процессе разработки. Микросервисы могут быть связаны между собой зависимостями, которые могут быть критическими или не критическими.
Стили и асации 43:36 Стили и асации в основном находятся в CSS и не являются проблемой для микросервисов. Решение проблемы с асациями - создание менеджера, который будет порождать папку с асациями и подменять пути.
Миграция разработчиков и тестирование 46:24 Миграция разработчиков из микросервиса в другой осуществляется через карусель. Тестирование каждого приложения осуществляется самостоятельно, и тесты должны быть встроены в процесс разработки.
Архитектура и репозитории 50:09 Микросервисы решают одну задачу для пользователя, и каждая команда разработчиков имеет свою репозиторию. Разработчики могут работать вместе или отдельно над разными компонентами.