You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Для работы с библиотекой вам понадобятся вам необходимо следующее окружение:
58
60
-**[Go](https://go.dev/)**: любая из **двух последних мажорных версий**[releases](https://go.dev/doc/devel/release).
59
-
- Сетевой доступ до шардированного кластера Tarantool
60
-
- Доступность источника топологии(источником топологии может быть etcdили другие)
61
+
- Сетевой доступ до шардированного кластера Tarantool.
62
+
- Доступность источника топологии(источником топологии может быть etcd, файл, или другие).
61
63
62
64
Для локального запуска кластера:
63
65
-**[Tarantool](https://www.tarantool.io/ru/)** (библиотека проверена для версий 2.8+, документация написана поверх версии 2.11) в качетсве предустановленной программы на вашем ПК, в случае если вы собираетесь запускать кластер локально. Либо сетевое подключение до вашего кластера.
состояния топологии вашего кластера из различных источников. Это позовляет вам считать вашу конфигурацию из любого удобного места.
231
+
Если ни один из источников топологии вам не подходит - вы можете реализовать свой.
232
+
233
+
В качестве источника топологии tarantool, вам доступны следующие:
234
+
-**etcd** (для конфигурации основанной на [moonlibs/config](https://github.com/moonlibs/config?tab=readme-ov-file#example-of-etcd-configuration-for-vshard-based-applications-etcdclustervshard), подходит для tarantool версии ниже 3 и etcd v2)
235
+
-**static** (для случая, когда вам необходимо что-то быстро протестировать и в ручную в коде забить информацию о топологии в вашем кластере. Выше в примере мы рассмавтривали именно его).
236
+
-**[viper](../providers/viper/README.md)** (дает широкие возможности использования любого источника топологии, даже тех, которые еще не поддержаны в самом tarantool. Так, любой источник конфигурации, который поддерживает viper вы можете использовать в качестве провайдера)
237
+
- etcd v3
238
+
- consul
239
+
- files
240
+
241
+
### Использование модулей go-tarantool
242
+
243
+
Мы стараемся максимально обеспечить совместимость с интерфейсами go-tarantool там,
244
+
где это необходимо. В данном разделе мы расмотрим полезные примеры использования
245
+
модулей go-tarantool, которые позволяет сделать нам совместимость интерфейсов.
246
+
247
+
##### Box
248
+
Модуль go-tarantool, позволяющий получать доступ к builtin методам Tarantool,
249
+
не описывая интерфейсов самому.
250
+
251
+
Проверка состояния кластера.
252
+
```go
253
+
// Проверим что всем мастера всех репликасетов находятся в состоянии RO=false.
254
+
// Проходимся по всем репликасетам внутри кластера.
255
+
for_, rs:=range router.RouteAll() {
256
+
// Поскольку модуль box рабоатет в рамках подключения к 1му инстансу,
257
+
// мы можем использовать адаптер, чтобы указать пулу использовать 1 инстанс репликасета в RW.
0 commit comments