Исходный код Odyssey теперь открыт для PostgreSQL

25 июня 2018

Теперь маршрутизация SQL-запросов и управление системой Постгри SQL стали открытыми: Яндекс опубликовал исходную кодировку proxy-сервера Одиссей над ГитХаб. При этом код создан на одном из базовых языков программирования – С – и распространяется по системе BSD.

На данный момент проект проходит beta-тестирование и базируется на движке Machinarium, которая и позволяет обрабатывать события посредством приложений без синхронизации обратных вызовов.

Процессы работы Odyssey и PostgreSQL

Odyssey – это обработка соединения посредством мультипотоковых процессов. Они и отвечают за контроль качества формируемых SQL-запросов и их проксирование.

Отсюда основной функционал Одиссея включает в себя:

  • Контроль проводимых транзакций и своевременное их отключение при завершении клиентом сеанса работы;
  • В случае, если прерванный коннект восстанавливается, осуществление автоподключения к предыдущему клиенту;
  • Привязка к пользователю или БД, за счет чего возможны режимы работы с различными уровнями аутентификации;
  • Возможность блокировать любых пользователей по SSL/TLS;
  • Поиск ошибок и ведение лога при поддержке UUID.

Если же говорить про преимущества PostgreSQL, то в вышедшем октябрьском релизе 2017 года авторы разработки добавили логическую репликацию и существенно улучшили мультипоточность.