TDB Documentation portal logo
Помощь
Обновлена 30 июля 2026 г. в 16:49

Использование Go-коннектора

В этом разделе приведен список запускаемых примеров, в которых демонстрируется использования Go-коннектора в Tarantool DB. Как и все готовые примеры в Tarantool DB, эти примеры сделаны на основе Docker Compose, что позволяет быстро запустить и попробовать ту или иную функциональность. Подробное описание и файлы конфигурации этих примеров доступны в соответствующем репозитории на GitHub.

  • Работа напрямую с экземпляром Tarantool DB через Go-коннектор. В примере операции выполняются напрямую с конкретным экземпляром. Такой подход может увеличить производительность, но требует дополнительной экспертизы — понимания внутреннего устройства кластера Tarantool DB и принципа его работы. В примере показано, как выполнять операции напрямую с конкретным экземпляром: приложение записывает по одному кортежу напрямую в спейс, а также выполняет чтение данных;

  • Работа с кластером Tarantool DB через модуль CRUD с помощью Go-коннектора. В примере приложение записывает кортежи в спейс пачками через выбранный роутер, а также выполняет чтение данных. Для взаимодействия в целях универсальности используется тип interface{}. Это означает, что значения после чтения нужно преобразовывать в нужный тип — в примере показано преобразование в число;

  • Балансировка запросов к роутерам через Go-коннектор. В примере демонстрируется работа с повреждённым кластером под нагрузкой. Приложение непрерывно записывает кортежи пачками через все роутеры по очереди. Для записи используется операция replace. Если какой-либо роутер стал недоступен, трафик с него переключается на другие роутеры. Если роутер снова стал доступен, трафик на него возвращается. Для мониторинга в примере используются Prometheus и Grafana.

  • Замена автокодировщика на свой алгоритм с помощью Go-коннектора. В примере приложение записывает кортежи пачками в спейс через выбранный роутер. После записи приложение читает добавленные кортежи. За счёт замены автокодировщика в MsgPack на свой алгоритм производительность записи в примере повышена на 20%. В качестве примера производится также чтение записанных значений и их декодирование собственным алгоритмом.