DARP
Не бях преглеждал Darp от няколко години, а се оказва, че през това време той се е стабилизирал и активно се е развивал. Сега в него дори е добавен прост прокси за LLM.
За тези, които не са запознати, Darp е готов приложен слой под формата на sidecar контейнери. Той позволява на екипите да не пишат приложен слой, а да използват готови компоненти, като цената за това е необходимостта от обучение и малък овърхед (5-10% CPU, 5-10 Mb памет и 5-10 ms латентност при gRPC).
Реализира следните API:
- Service Invocation: Директни, защитени повиквания „услуга към услуга“ (HTTP/gRPC)
- Publish & Subscribe Messaging: Асинхронни събития между услуги чрез брокери (> 10 варианта на брокери)
- Workflow: Дълготрайни оркестрации и саги между микроуслуги
- State Management: Съхранение/запитване на key-value състояние с поддръжка на TTL и транзакции (> 20 варианта на хранилища)
- Bindings: Приемане/изпращане на данни от външни системи при събития
- Actors: Модел на виртуални актьори (активно обектно състояние)
- Secrets Management: Сигурно извличане на тайни от външни хранилища
- Configuration: Четене и абонамент на живо за промени в конфигурацията на приложенията
- Distributed Lock: Взаимно изключващ се достъп до ресурси с механизъм за лизинг (lease)
- Cryptography: Криптографски операции (KMS, подписване, криптиране) без разкриване на ключове
- Jobs: Планиране и оркестрация на фонови/периодични задачи
- Conversation: Абстракция на prompt-based взаимодействие с LLM доставчици