Як повідомляє Devclass, Microsoft представила Aspire 13.4 — значний крок у спрощенні розробки складних розподілених систем. Aspire визначається як «рівень оркестрації та моніторингу коду для розподілених додатків». Цей інструмент дозволяє розробникам моделювати, створювати та налагоджувати розподілені додатки за допомогою CLI (command line interface), виходячи за межі оригінального фокусу на .NET.
Розширення мовного стеку
Найважливіша функція оновлення — це перетворення TypeScript AppHost у клас першої категорії. Раніше, в .NET-версії, AppHost був проектом C#, тоді як для TypeScript він існував як файл коду apphost.mts. Тепер цей механізм стає універсальним, дозволяючи використовувати його з TypeScript. Крім того, Aspire 13.4 інтегрує підтримку нових мов: Go та Bun, доповнюючи вже існуючі можливості для Python, Java та Rust.
Aspire не є сервісом, який працює в продакшені; це інструмент для розробки. Розробники додають цілі «цілі» (targets) до проекту Aspire, щоб забезпечити команди publish та deploy. Ці команди створюють артефакти для подальшого розгортання на сконфігурованих платформах, таких як Azure container apps, Azure app service або Kubernetes.
Покращення оркестрації та моніторингу
AppHost відіграє центральну роль у збірці розподіленого додатку. Наприклад, за допомогою команди AppHost автоматично отримує можливість підтримувати PostgreSQL. Це включає додавання контейнерного образу для роботи бази даних, створення самої бази, інтеграцію веб-адмінпанелі та налаштування телеметрії.
Система моніторингу використовує дану OpenTelemetry дані через Aspire dashboard. Хоча цей дашборд переважно призначений для розробки, він може працювати автономно або в середовищах без використання самого Aspire. Оновлення 13.4 також додало критичні функції для Kubernetes-розгортання, включаючи підтримку cert-manager, Gateway API та зовнішніх Helm charts.
- Оркестрація: AppHost автоматизує налаштування залежностей, таких як бази даних чи кеші.
- Моніторинг: Aspire dashboard збирає дані про використання пам'яті та загальний стан програми через OpenTelemetry.
- Розгортання: Підтримка нових Kubernetes-функцій спрощує перехід від локальної розробки до промислового середовища.
Як зазначив James Newton-King, головний інженер Microsoft над проектом, «Ви не запускаєте Aspire в продакшені. Ви створюєте свій додаток за допомогою нього локально, а потім розгортаєте його на потрібній вам платформі». Це підкреслює роль Aspire як потужного допоміжного засобу для підвищення якості та швидкості розробки.