25 июня 2018
Теперь маршрутизация SQL-запросов и управление системой Постгри SQL стали открытыми: Яндекс опубликовал исходную кодировку proxy-сервера Одиссей над ГитХаб. При этом код создан на одном из базовых языков программирования – С – и распространяется по системе BSD.
На данный момент проект проходит beta-тестирование и базируется на движке Machinarium, которая и позволяет обрабатывать события посредством приложений без синхронизации обратных вызовов.
Процессы работы Odyssey и PostgreSQL
Odyssey – это обработка соединения посредством мультипотоковых процессов. Они и отвечают за контроль качества формируемых SQL-запросов и их проксирование.
Отсюда основной функционал Одиссея включает в себя:
- Контроль проводимых транзакций и своевременное их отключение при завершении клиентом сеанса работы;
- В случае, если прерванный коннект восстанавливается, осуществление автоподключения к предыдущему клиенту;
- Привязка к пользователю или БД, за счет чего возможны режимы работы с различными уровнями аутентификации;
- Возможность блокировать любых пользователей по SSL/TLS;
- Поиск ошибок и ведение лога при поддержке UUID.
Если же говорить про преимущества PostgreSQL, то в вышедшем октябрьском релизе 2017 года авторы разработки добавили логическую репликацию и существенно улучшили мультипоточность.