Параметры подключения ADO.NET
Для подключения к базе данных приложение предоставляет строку подключения, в которой указываются такие параметры, как хост, пользователь, пароль и т.д. Строки подключения имеют вид keyword1=value; keyword2=value;. Для получения дополнительной информации смотрите официальную страницу документации о строках подключения.
Все доступные параметры подключения определены как свойства в YdbConnectionStringBuilder.
Ниже приведены параметры строки подключения, которые ожидает Ydb.Sdk.Ado.
Базовые параметры подключения
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
Host |
Адрес хоста сервера YDB. | localhost |
Port |
Порт сервера YDB. | 2136 |
Database |
Путь к базе данных. | /local |
User |
Имя пользователя. | Не определено |
Password |
Пароль пользователя. | Не определено |
Безопасность и шифрование
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
UseTls |
Определяет, следует ли устанавливать защищенное соединение по TLS (grpcs); при false — TLS не используется (grpc). |
false |
RootCertificate |
Путь к файлу доверенного корневого/промежуточного сертификата сервера (PEM). Если параметр установлен, для UseTls автоматически устанавливается значение true. |
Не определено |
Pooling
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
MinPoolSize |
Минимальный размер пула сессий. | 0 |
MaxPoolSize |
Максимальный размер пула сессий. | 100 |
SessionIdleTimeout |
Время ожидания (в секундах) перед закрытием неактивных сессий в пуле, если общее число сессий превышает MinPoolSize. |
300 |
Timeouts And Keepalive
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
ConnectTimeout |
Время ожидания (в секундах) при установлении соединения с сервером. Должно быть больше или равно 0. Установите значение 0 для бесконечного ожидания. |
10 |
CreateSessionTimeout |
Время ожидания (в секундах) при создании новой сессии. Должно быть больше или равно 0. Установите значение 0 для бесконечного ожидания. |
5 |
KeepAlivePingDelay |
Период простоя (в секундах), после которого отправляется keepalive ping при отсутствии трафика. Это свойство используется вместе с параметром KeepAlivePingTimeout, чтобы проверить, не разорвано ли соединение. Значение должно быть больше или равно 1 секунде. Установите значение 0, чтобы отключить проверку связи keep alive. |
10 |
KeepAlivePingTimeout |
Время ожидания (в секундах) после отправки keepalive ping; если за это время не получено ни одного сообщения, соединение закрывается. Время ожидания должно быть больше или равно 1 секунде. Установите значение 0, чтобы отключить тайм-аут для поддержания соединения в режиме ожидания. |
10 |
Performance
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
EnableMultipleHttp2Connections |
Определяет, следует ли автоматически масштабировать HTTP/2-соединения в пределах одного канала gRPC до одного узла кластера. Это требуется редко, но может повысить производительность в сценариях с высокой нагрузкой на один узел. При false используется одно HTTP/2-соединение на узел. |
false |
MaxSendMessageSize |
Максимальный размер исходящих сообщений в байтах. Примечание: на сервере действует лимит 64 МБ; большие сообщения отклоняются ошибкой ResourceExhausted. |
67108864 (64 MB) |
MaxReceiveMessageSize |
Максимальный размер входящих сообщений, байт. | 67108864 (64 MB) |
DisableServerBalancer |
Определяет, следует ли отключать балансировку сессий на стороне сервера; при false балансировка включена. |
false |
Параметры полезные для Serverless приложений
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
DisableDiscovery |
Определяет, следует ли отключать автоматическое обнаружение узлов и использовать прямое gRPC‑подключение по адресу из строки подключения; при false выполняется обнаружение узлов (discovery) для клиентской балансировки. | false |
EnableImplicitSession |
Определяет, включено ли неявное управление сессиями: сервер создает и завершает сессии на каждую операцию; на клиенте пул сессий не используется. В этом режиме интерактивные клиентские транзакции не поддерживаются. | false |
Параметры конструктора соединений
Существуют также дополнительные параметры, которые не участвуют в формировании строки ConnectionString. Их можно указать только с использованием YdbConnectionStringBuilder:
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
LoggerFactory |
Этот параметр принимает экземпляр, реализующий интерфейс ILoggerFactory. ILoggerFactory — это стандартный интерфейс для фабрик логирования в .NET. Допускается использование популярных фреймворков, таких как NLog, Serilog, log4net. |
NullLoggerFactory.Instance |
CredentialsProvider |
Поставщик аутентификации, реализующий Ydb.Sdk.Auth.ICredentialsProvider. Стандартные способы аутентификации: 1) Ydb.Sdk.Auth.TokenProvider — аутентификация токеном для OAuth-подобных токенов. 2) Для Yandex Cloud рассмотрите возможность использования ydb-dotnet-yc. |
Анонимное подключение |
ServerCertificates |
Указывает пользовательские серверные сертификаты, используемые для проверки TLS/SSL. Это полезно при работе с облачными провайдерами (например, Yandex Cloud), которые используют пользовательские корневые или промежуточные сертификаты, которым по умолчанию не доверяют. | Не определено |
Была ли статья полезна?
Предыдущая
Следующая