
Erlang/OTP проти нових агентних фреймворків: старі патерни для нової хвилі
Автор статті на DEV Community доводить, що сучасні агентні фреймворки відтворюють архітектуру Erlang/OTP: ізольований стан, обмін повідомленнями, дерева супервізорів і автоматичне відновлення після збоїв.
Інженер-програміст Matheus de Camargo Marques опублікував на DEV Community статтю, у якій твердить: агентні фреймворки, які AI-індустрія оголошує мало не щомісяця, по черзі відтворюють архітектуру, яку екосистема Erlang/OTP і віртуальна машина BEAM мають як властивість самої runtime-системи з 1986 року, а саме ізольований стан, обмін повідомленнями, ієрархії супервізорів і автоматичне відновлення після збоїв.
Його аргумент не в перевазі конкретної мови: форма задачі диктує ту саму відповідь. Агент із власною пам'яттю та чергою повідомлень повторює модель акторів, яку Carl Hewitt запропонував 1973 року, а Erlang реалізував як runtime 1986 року.
Мапа мікросервісів, яка вже є в OTP
Стаття відштовхується від матеріалу Teksystems за квітень 2026 року, де поняття мікросервісів зіставлено з агентними: виявлення сервісів стає можливостями агента, доступними через MCP, API-шлюз стає головним агентом або супервізором, що маршрутизує запити до спеціалізованих субагентів, а схеми даних стають структурованим контекстом.
Кожному рядку Marques знаходить відповідник в OTP: Registry і :global для виявлення, Supervisor та DynamicSupervisor для маршрутизації й пулів агентів, стан GenServer і таблиці :ets для даних, зіставлення зі зразком для контрактів. Окремо він цитує матеріал VentureBeat за грудень 2025 року, який називає асистента, зібраного з одного великого запиту, «когнітивним монолітом».
Робочий код: GenServer, gen_statem, ETS
Друга половина тексту це компактні приклади на Elixir. Агент на GenServer тримає історію розмови й скорочує її, щоб контекст не розмивався; дерево супервізорів із Registry знаходить агентів і перезапускає їх після збою; DynamicSupervisor створює агентів на вимогу.
Для циклів ReAct автор обирає gen_statem замість GenServer, бо цикл міркування стає явною машиною станів зі станами idle, reasoning, acting і done. Реєстр інструментів приблизно на 50 рядків Elixir на базі ETS відтворює патерн виявлення MCP без середовища Python і без фреймворку.
Що дається безкоштовно
Найвідчутніша перевага це відновлення: якщо GenServer падає, супервізор перезапускає його, а сусідні процеси продовжують роботу, про що говорить і документація Elixir-фреймворку Jido. Стан можна відбудувати через чекпойнти в ETS чи базу даних, event sourcing або сніпшот із повторним відтворенням подій.
Кожен процес має власну купу пам'яті, тому для пісочниці достатньо ізоляції процесів, таймаутів і обмежень пам'яті, без контейнерів. Інструменти спостережуваності OTP показують дерево процесів, стан GenServer і потоки повідомлень. Цитуючи виступ Matheus Guimaraes на AWS Summit London, автор підсумовує: «Патерни не вмирають, вони лише змінюють маску».
SiTech — веброзробка з підтримкою AI
Створюємо швидкі та сучасні сайти й інтегруємо AI у бізнес-процеси. Маєте проєкт чи запитання? Із задоволенням допоможемо.