Partilhar via


.NET Aspire Milvus integração de banco de dados

Neste artigo, você aprenderá a usar a integração de banco de dados .NET AspireMilvus. A biblioteca Aspire.Milvus.Client regista um MilvusClient no container DI para conectar a um Milvusserver.

Pré-requisitos

  • Milvus server e cadeia de conexão para aceder ao endpoint da API server.

Começar

Para começar com a integração do banco de dados .NET AspireMilvus, instale o pacote NuGet 📦Aspire.Milvus.Client no projeto que consome client, ou seja, no projeto da aplicação que usa o banco de dados Milvusclient.

dotnet add package Aspire.Milvus.Client

Para obter mais informações, consulte dotnet add package ou Gerir dependências de pacotes em aplicações .NET.

Exemplo de utilização

No arquivo Program.cs do seu projeto, chame o método de extensão AddMilvusClient para registrar um MilvusClient para uso por meio do contêiner de injeção de dependência. O método usa um parâmetro de nome de conexão.

builder.AddMilvusClient("milvus");

Utilização do anfitrião da aplicação

Para modelar o recurso Milvus no host da aplicação, instale o pacote NuGet 📦Aspire.Hosting.Milvus no projeto de host da aplicação .

dotnet add package Aspire.Hosting.Milvus

No ficheiro Program.cs de AppHostregiste uma Milvusserver e consuma a conexão usando os seguintes métodos:

var milvus = builder.AddMilvus("milvus");

var myService = builder.AddProject<Projects.MyService>()
                       .WithReference(milvus);

O método WithReference configura uma conexão no projeto MyService chamado milvus. No arquivo Program.cs de MyService, a conexão Milvus pode ser consumida usando:

builder.AddMilvusClient("milvus");

Milvus suporta senhas padrão baseadas em configuração (variável de ambiente COMMON_SECURITY_DEFAULTROOTPASSWORD). O usuário padrão é root e a senha padrão é Milvus. Para alterar a senha padrão no contêiner, passe um parâmetro apiKey ao chamar a API de hospedagem AddMilvus:

var apiKey = builder.AddParameter("apiKey");

var milvus = builder.AddMilvus("milvus", apiKey);

var myService = builder.AddProject<Projects.MyService>()
                       .WithReference(milvus);

O código anterior obtém um parâmetro para passar para a API AddMilvus e atribui internamente o parâmetro à variável de ambiente COMMON_SECURITY_DEFAULTROOTPASSWORD do contêiner Milvus. O parâmetro apiKey é geralmente especificado como um segredo de usuário :

{
  "Parameters": {
    "apiKey": "Non-default P@ssw0rd"
  }
}

Para obter mais informações, consulte Parâmetros externos.

Configuração

A integração .NET AspireMilvusClient fornece várias opções para configurar a conexão server com base nos requisitos e convenções do seu projeto.

Dica

O uso padrão é root e a senha padrão é Milvus. Atualmente, o Milvus não suporta a alteração da senha do superusuário na inicialização. Ele precisa ser alterado manualmente com o client.

Usar uma string de conexão

Ao usar uma cadeia de conexão da seção de configuração de ConnectionStrings, você pode fornecer o nome da cadeia de conexão ao chamar builder.AddMilvusClient():

builder.AddMilvusClient("milvus");

E, em seguida, a cadeia de conexão será recuperada da seção de configuração ConnectionStrings:

{
  "ConnectionStrings": {
    "milvus": "Endpoint=http://localhost:19530/;Key=root:123456!@#$%"
  }
}

Por padrão, o MilvusClient usa o ponto de extremidade da API gRPC.

Usar provedores de configuração

A integração .NET AspireMilvusClient suporta Microsoft.Extensions.Configuration. Ele carrega o MilvusSettings da configuração usando a tecla Aspire:Milvus:Client. Considere o exemplo a seguir appsettings.json que configura algumas das opções:

{
  "Aspire": {
    "Milvus": {
      "Client": {
        "Key": "root:123456!@#$%"
      }
    }
  }
}

Usar delegados em linha

Além disso, é possível passar o delegado de Action<MilvusSettings> configureSettings para configurar algumas ou todas as opções diretamente, por exemplo, para definir a chave de API no código:

builder.AddMilvusClient(
    "milvus",
    settings => settings.Key = "root:12345!@#$%");

Controlos sanitários

Por padrão, as integrações .NET.NET Aspire habilitam verificações de integridade para todos os serviços. Para obter mais informações, consulte .NET.NET Aspire visão geral das integrações.

A integração do banco de dados .NET AspireMilvus usa o client configurado para executar um HealthAsync. Se o resultado for saudável, o exame de saúde é considerado saudável, caso contrário, não é saudável. Da mesma forma, se houver uma exceção, a verificação de integridade será considerada não saudável, com o erro a propagar-se devido à falha da verificação.

Observabilidade e telemetria

.NET .NET Aspire integrações configuram automaticamente as configurações de Registo, Rastreio e Métricas, que às vezes são referidas como os pilares da observabilidade. Para obter mais informações sobre observabilidade e telemetria de integração, consulte Visão geral de integrações .NET.NET Aspire. Dependendo do serviço de suporte, algumas integrações podem suportar apenas alguns desses recursos. Por exemplo, algumas integrações suportam registro em log e rastreamento, mas não métricas. Os recursos de telemetria também podem ser desativados usando as técnicas apresentadas na secção de Configuração.

Registo

A integração de base de dados .NET AspireMilvus usa registo padrão .NET, e verá entradas de registo da seguinte categoria:

  • Milvus.Client

Ver também