Перейти до основного вмісту

Сервіси

інформація

Сервіси, як функціональна група, відрізняються тим, що вони можуть управляти іншими складовими другого рівня абстракцій, мають лише один екземпляр в пам'яті основного обчислювального ядра або забезпечують рішення на рівні структури, такі як генерація документації, доступ до конфігураційних даних тощо.

Архітектура

Запуск ядра обчислень супроводжується запуском зʼєднувача обчислень, який в свою чергу в певному порядку запускає сервіси. Кожний сервіс виконує власну структурну функцію. В переважній своїй кількості, сервіси можуть бути сконфігуровані, при чому ряд сервісів надають ряд методів в агенти функціональності для подальшого їх використання в бізнес-схемі.

service-arch.svg

інформація

Завдяки використанню абстрактного сервісу AbstractService, який встановлює стандарти створення сервісів та базовий опис сервісу, досягається підвищення надійності та спрощення розуміння принципів роботи сервісів. Крім того, визначається спільна частина для кожного сервісу, що сприяє уніфікації їх правилам запуску, зупинки, а також базового вмісту.

порада

Ряд сервісів має можливості підключення чи відключення їх від роботи ядра обчислень. Щоб підключити або відключити сервіси, які це допускають необхідно вказати це в конфігураційному файлі налаштування. При відключенні, ядро обчислень не буде витрачати ресурси на роботу цього сервісу.

Порядок виконання

Порядок виконання сервісів визначається залежностями одних сервісів від інших. Наприклад, сервіс комбінацій CombinationService визначає тип http адаптеру на основі конфігураційного налаштування, що вже вносить залежність від сервісу відкриттів DiscoveryService оскільки він завантажує конфігурацію роботи обчислень - з цього слідує, що сервіс відкриттів DiscoveryService повинен запускатись перед запуском сервісу комбінацій CombinationService.

НазваОбов'язковістьПорядокСтабільністьДоступОпис
DiscoveryService+1StableЗагальнийОбробка конфігураційних файлів та надання конфігураційних параметрів як в рамках ядра так і конфігураційні параметри веб-застосунку.
LoggerService+2AlphaЗагальнийСтворення логів роботи веб-сервера з урахуванням рівнів логування та типу транспорту.
ContextService+3StableВнутрішнійФормування унікального контексту виконання запитів з присвоєнням унікального ідентифікатора запиту.
SchemeService+4StableВнутрішнійОбробка бізнес схеми та побудови знімків версій бізнес схеми.
CombinationService+5AlphaВнутрішнійЗапуск фабричних конструкцій, які можуть підтримувати одну або декілька стратегій / адаптерів реалізації функціоналу однієї напрямленості
ScramblerService-6AlphaЗовнішнійНадання методів по роботі з шифруванням, дешифруванням та хешуванням.
TaskService-7AlphaЗовнішнійРеєстрація та виконання запланованих задач.
інформація

Порядок зупинки сервісів прямопротилежний порядку запуску сервісів, дозволяючи таким чином коректно завершувати процеси сервісів з більшою кількістю залежностей.

warning

Наразі X-Fiber не підтримує впровадження власних сервісів, але в майбутніх релізах X-Fiber буде допускати включати Ваші власні рішення в порядок запуску сервісів.

Перелік сервісів

Деталі реалізації та застосування конкретного сервісу: