Для распределённых архитектур

Микросервисы
под контролем

API меняются. Консьюмеры ломаются. Контракты дрифтуют. diffray поддерживает порядок в вашей распределённой системе, ловя breaking changes на этапе PR.

Дилемма распределённых систем

Больше сервисов — больше способов сломать

Breaking Changes

Изменили ответ API в одном сервисе — сломали 5 консьюмеров. Никто не знал, что они зависели от этого поля.

Нарушение границ

Сервисы обходят API и ходят напрямую в базы друг друга. 'Так было быстрее' превращается в техдолг.

Дрифт контрактов

Документация API говорит одно. Код делает другое. Консьюмеры полагаются на недокументированное поведение.

Каскадные отказы

Нет обработки ошибок, нет circuit breaker'ов, штормы ретраев. Один сервис упал — все упали.

Governance без совещаний

AI применяет ваши архитектурные решения на каждом PR

Валидация контрактов

AI анализирует OpenAPI спеки, GraphQL схемы и protobuf'ы. Ловит удаления, изменения типов и breaking-модификации.

"Удаление 'email' из UserResponse сломает OrderService и NotificationService."

Контроль границ

Определите, какие сервисы могут общаться и как. Помечайте прямой доступ к БД и неуместные связи.

"PaymentService не должен импортировать из внутренностей UserService. Используйте публичный API."

Паттерны отказоустойчивости

Обеспечьте правильную обработку ошибок, таймауты, ретраи и circuit breaker'ы в межсервисных вызовах.

"У этого HTTP-вызова нет таймаута. Добавьте таймаут для предотвращения каскадных отказов."

Соблюдение версионирования

Применяйте вашу стратегию версионирования API. Убедитесь, что изменения соблюдают правила обратной совместимости.

"Обнаружен breaking change. Либо увеличьте версию API, либо сделайте изменение аддитивным."

Обнаружение Breaking Changes

Знайте до релиза

Удаление поляBreaking
Изменение типа поляBreaking
Добавление обязательного поляBreaking
Добавление опционального поляБезопасно
Добавление нового эндпоинтаБезопасно
Депрекация поляВнимание

Вопросы и ответы

Распределённые системы.
Централизованное качество.

Держите ваши микросервисы в синхронизации.

Начать бесплатно