Концепция.NET предполагает, что Axum построен на принципах изоляции, обмена сообщениями и потока данных. В Axum параллелизм вычислений задан по умолчанию: все агенты выполняются одновременно, если разработчик их не ограничивает. Соответственно, меньше времени тратится на шаблонный код для реализации многопоточности, и больше — на собственно алгоритм приложения.
 
Агенты могут размещаться в одном или нескольких процессах или даже на отдельной машине. Подобная унификация позволяет не прибегать к переписыванию кода, когда возникает необходимость его запуска в распределенном окружении. Безопасное параллельное программирование подкреплено в Axum использованием изолированных областей, помогающих избежать неявных зависимостей, которые могут приводить к трудно выявляемым ошибкам параллелизма. Также реализована модель разделения на блоки на основе задержек, позволяющая отложить запуск агента с заявленными намерениями до возникновения определенного события.

Поделитесь материалом с коллегами и друзьями