Visão geral
Esta seção descreve as opções de conexão e autenticação do MongoDB disponíveis no driver do Kotlin Sync. Você pode configurar sua conexão definindo opções no URI de conexão ou em uma instância MongoClientSettings .
Definir opções no URI de conexão
Se você passar um URI de conexão para o método MongoClient.create(), poderá incluir opções de conexão na string de caracteres como pares <name>=<value>. No exemplo a seguir, o URI de conexão contém a opção connectTimeoutMS com um valor de 60000 e a opção tls com um valor de true:
val uri = "mongodb://<hostname>:<port>/?connectTimeoutMS=60000&tls=true" val mongoClient = MongoClient.create(uri)
Definir opções em MongoClientSettings
Você pode definir opções de conexão em uma instância MongoClientSettings usando métodos da classe MongoClientSettings.Builder e, em seguida, passar o objeto de configurações para o método MongoClient.create() .
Configurar a conexão dessa forma facilita a alteração das configurações no tempo de execução e pode ajudá-lo a detectar erros no tempo de compilação.
O exemplo a seguir mostra como especificar seu destino de conexão e definir outras opções ao criar uma instância do MongoClientSettings :
val settings = MongoClientSettings.builder() .applyToClusterSettings { builder -> builder.hosts(listOf(ServerAddress("localhost", 27017))) } .applyToSocketSettings { builder -> builder.connectTimeout(60000, TimeUnit.MILLISECONDS) } .applyToSslSettings { builder -> builder.enabled(true) } .build() val mongoClient = MongoClient.create(settings)
Se preferir fornecer uma string de conexão em vez de especificar o nome do host e a porta, você poderá usar o método applyConnectionString() e, em seguida, definir outras opções usando métodos de construtor, conforme mostrado no código a seguir:
val uri = "<connection string>" val settings = MongoClientSettings.builder() .applyConnectionString(ConnectionString(uri)) .applyToSocketSettings { builder -> builder.connectTimeout(60000, TimeUnit.MILLISECONDS) } .applyToSslSettings { builder -> builder.enabled(true) } .build() val mongoClient = MongoClient.create(settings)
Opções de conexão
As seções a seguir descrevem as opções de conexão disponíveis no driver Kotlin Sync. Cada opção mostra o par opção-valor que você pode usar em um URI de conexão e, se disponível, o método do driver para defini-lo em uma instância MongoClientSettings .
Compactação de rede
Opção de conexão | Descrição |
|---|---|
compressors | Os tipos de compactação preferidos, em ordem, para mensagens de protocolo de transmissão enviadas ou recebidas do servidor. O driver usa o primeiro desses tipos de compactação que o servidor suporta. |
zlibCompressionLevel | O nível de compressão que a zlib deve usar. Esta opção aceita um valor inteiro entre |
Tempo limite
Opção de conexão | Descrição | |||
|---|---|---|---|---|
connectTimeoutMS | O tempo em milissegundos para tentar uma conexão antes de atingir o tempo limite. URI de conexão: | |||
socketTimeoutMS (obsoleto) | Esta opção está obsoleta. Você pode configurar esse tempo limite URI de conexão: |
Seleção do Servidor
Opção de conexão | Descrição | |||
|---|---|---|---|---|
serverSelectionTimeoutMS | A quantidade máxima de tempo, em milissegundos, o driver aguarda o sucesso da seleção do servidor antes de lançar uma exceção. URI de conexão: |
Autenticação
Dica
Para saber mais sobre as opções de autenticação, consulte a seção Mecanismos de autenticação.
Opção de conexão | Descrição | |||
|---|---|---|---|---|
authMechanism | O mecanismo que o driver do Kotlin Sync usa para autenticar o aplicação. URI de conexão: | |||
authMechanismProperties | Opções específicas para o mecanismo de autenticação. Esta opção não é necessária para todos os mecanismos de autenticação. | |||
authSource | O banco de dados para autenticar. | |||
nome de usuário | O nome de usuário para autenticação. Quando essa opção é incluída em um URI de conexão, você deve codificá-la por porcentagem. | |||
Senha | A senha para autenticação. Quando essa opção é incluída em um URI de conexão, você deve codificá-la por porcentagem. |
Operações de leitura e escrita
Para saber mais sobre como se conectar a diferentes tipos de sistemas do MongoDB , consulte o guia Escolher um destino de conexão .
Opção de conexão | Descrição | |||
|---|---|---|---|---|
replicaSet | Especifica o nome do conjunto de réplicas ao qual se conectar. | |||
directConnection | Se deve conectar apenas ao membro principal do conjunto de réplicas. URI de conexão: | |||
readPreference | Especifica a preferência de leitura do cliente. Para obter mais informações, consulte Preferência de leitura no manual do servidor. | |||
readConcern | Especifica a preocupação de leitura do cliente. Para obter mais informações, consulte Read Concern no manual do Servidor. | |||
writeConcern | Especifica a preocupação de gravação do cliente. Para obter mais informações, consulte Write Concern no manual do servidor. | |||
localThresholdMS | A janela de latência para a elegibilidade de um membro do conjunto de réplicas. Se o ping de ida e volta de um membro demorar mais do que o tempo de ping de ida e volta do servidor mais rápido mais esse valor, o servidor não estará qualificado para seleção. URI de conexão: |
Informações adicionais
Para ver uma lista completa de opções de conexão, consulte Connection strings no manual do servidor.
Documentação da API
Para saber mais sobre as aulas e os métodos mencionados neste guia, consulte a seguinte documentação da API: