Bagikan melalui


ringkasan integrasi .NET.NET Aspire

integrasi .NET Aspire adalah rangkaian paket NuGet yang dikumpulkan yang dipilih untuk memfasilitasi integrasi aplikasi cloud-native dengan layanan dan platform terkemuka, seperti Redis dan PostgreSQL. Setiap integrasi melengkapi fungsionalitas cloud-native penting melalui penyediaan otomatis atau pola konfigurasi standar.

Ujung

Selalu berusaha untuk menggunakan versi terbaru integrasi .NET.NET Aspire untuk memanfaatkan fitur, peningkatan, dan pembaruan keamanan terbaru.

Tanggung jawab integrasi

Sebagian besar integrasi .NET.NET Aspire terdiri dari dua pustaka terpisah, masing-masing dengan tanggung jawab yang berbeda. Jenis ini mewakili sumber daya di dalam host aplikasi proyek—dikenal sebagai integrasi hosting . Jenis integrasi lainnya mewakili pustaka klien yang terhubung ke sumber daya yang dimodelkan oleh integrasi hosting, yang dikenal sebagai integrasi klien .

Integrasi Hosting

Integrasi hosting mengonfigurasi aplikasi dengan menyediakan sumber daya (seperti kontainer atau sumber daya cloud) atau menunjuk ke instans yang ada (seperti server SQL lokal). Paket ini memodelkan berbagai layanan, platform, atau kemampuan, termasuk cache, database, pengelogan, penyimpanan, dan sistem olahpesan.

Integrasi hosting memperluas antarmuka IDistributedApplicationBuilder, memungkinkan proyek host aplikasi untuk menyatakan sumber daya dalam model aplikasi . Paket NuGet integrasi hosting resmi diberi tag dengan aspire, integration, dan hosting. Selain integrasi hosting resmi, komunitas telah membuat integrasi hosting untuk berbagai layanan dan platform sebagai bagian dari Toolkit Komunitas.

Untuk informasi tentang membuat integrasi hosting kustom, lihat Membuat integrasi hosting .NET.NET Aspire kustom.

Client integrasi

Client integrasi menghubungkan pustaka klien ke injeksi dependensi (DI), menentukan skema konfigurasi, dan menambahkan pemeriksaan kesehatan , ketahanan , dan telemetri jika berlaku. Library integrasi klien .NET.NET Aspire diawali dengan Aspire. dan kemudian menyertakan nama paket lengkap yang mereka integrasikan, seperti Aspire.StackExchange.Redis.

Paket-paket ini mengonfigurasi pustaka klien yang ada untuk terhubung ke integrasi hosting. Mereka memperluas antarmuka IHostApplicationBuilder, memungkinkan proyek klien seperti aplikasi web atau API Anda menggunakan sumber daya yang terhubung. Paket NuGet resmi untuk integrasi klien ditandai dengan aspire, integration, dan client. Selain integrasi klien resmi, komunitas telah membuat integrasi klien untuk berbagai layanan dan platform sebagai bagian dari Toolkit Komunitas.

Untuk informasi selengkapnya tentang membuat integrasi klien kustom, lihat Membuat integrasi klien .NET.NET Aspire kustom.

Hubungan antara hosting dan integrasi klien

Integrasi hosting dan klien paling baik ketika digunakan bersama-sama, tetapi tidak digabungkan dan dapat digunakan secara terpisah. Beberapa integrasi hosting tidak memiliki integrasi klien yang sesuai. Konfigurasilah yang membuat integrasi hosting berfungsi dengan integrasi klien.

Pertimbangkan diagram berikut yang menggambarkan hubungan antara integrasi hosting dan klien:

diagram

Proyek host aplikasi adalah tempat integrasi hosting digunakan. Konfigurasi, khususnya variabel lingkungan, disuntikkan ke dalam proyek, executable, dan kontainer, memungkinkan integrasi klien terhubung ke integrasi hosting.

Fitur integrasi

Saat Anda menambahkan integrasi klien ke proyek dalam solusi .NET.NET Aspire Anda, default layanan diterapkan secara otomatis ke proyek tersebut; yang berarti proyek Default Layanan dirujuk dan metode ekstensi AddServiceDefaults dipanggil. Default ini dirancang untuk bekerja dengan baik dalam sebagian besar skenario dan dapat disesuaikan sesuai kebutuhan. Pengaturan default layanan berikut diterapkan:

  • Observabilitas dan telemetri: Secara otomatis menyiapkan konfigurasi pengelogan, pelacakan, dan metrik:

    • Pengelogan : Teknik di mana kode diinstrumentasikan untuk menghasilkan log peristiwa menarik yang terjadi saat program sedang berjalan.
    • Melacak: Bentuk pengelogan khusus yang membantu Anda melokalisasi kegagalan dan masalah performa dalam aplikasi yang didistribusikan di beberapa mesin atau proses.
    • Metrik: Pengukuran numerik yang dicatat dari waktu ke waktu untuk memantau performa dan kesehatan aplikasi. Metrik sering digunakan untuk menghasilkan pemberitahuan ketika potensi masalah terdeteksi.
  • Pemeriksaan kesehatan: Mengekspos titik akhir HTTP untuk memberikan informasi ketersediaan dasar dan status tentang aplikasi. Pemeriksaan kesehatan digunakan untuk memengaruhi keputusan yang dibuat oleh orkestrator kontainer, load balancer, gateway API, dan layanan manajemen lainnya.

  • Ketahanan : Kemampuan sistem Anda untuk bereaksi terhadap kegagalan dan masih tetap berfungsi. Ketahanan tidak hanya mencakup pencegahan kegagalan tetapi juga pemulihan dan rekonstruksi lingkungan cloud Anda menjadi kembali sehat.

Pertimbangan penerapan versi

Integrasi hosting dan klien diperbarui setiap rilis untuk menargetkan versi stabil terbaru dari sumber daya dependen. Ketika gambar kontainer diperbarui dengan versi gambar baru, integrasi hosting diperbarui ke versi baru ini. Demikian pula, ketika versi NuGet baru tersedia untuk pustaka klien dependen, integrasi klien yang sesuai diperbarui ke versi baru. Ini memastikan fitur terbaru dan pembaruan keamanan tersedia untuk aplikasi.

Ketika perubahan besar yang mengganggu fungsionalitas terjadi di sumber daya dependen, integrasi dapat dibagi sementara menjadi paket yang bergantung pada versi untuk memudahkan pembaruan saat menghadapi perubahan yang mengganggu. Untuk informasi selengkapnya, lihat contoh pertama dari perubahan signifikan tersebut.

Integrasi resmi

.NET .NET Aspire menyediakan banyak integrasi untuk membantu Anda membangun aplikasi cloud-native. Integrasi ini dirancang agar dapat berfungsi dengan mulus dengan host aplikasi .NET.NET Aspire dan pustaka klien. Bagian berikut merinci integrasi cloud-agnostic, Azure-specific, Amazon Web Services (AWS), dan Community Toolkit.

Integrasi yang tidak bergantung pada cloud tertentu

Bagian berikut merinci integrasi .NET.NET Aspire cloud-agnostic dengan tautan ke dokumen dan paket NuGet masing-masing, dan memberikan deskripsi singkat tentang setiap integrasi.

Dokumen integrasi dan paket NuGet Deskripsi
- Pelajari lebih lanjut: 📄 Apache Kafka
- Hosting: 📦Aspire. Hosting.Kafka
- Client: 📦Aspire. Confluent.Kafka
Perpustakaan untuk memproduksi dan mengonsumsi pesan dari broker Apache Kafka.
- Pelajari lebih lanjut: 📄 Dapr
- Hosting: 📦Aspire. Hosting.Dapr
- Client: N/A
Pustaka untuk pemodelan Dapr sebagai sumber daya .NET.NET Aspire.
- Pelajari lebih lanjut: 📄 Elasticsearch
- Hosting: 📦Aspire. Hosting.Elasticsearch
- Client: 📦Aspire. Elastic.Clients.Elasticsearch
Pustaka untuk mengakses database Elasticsearch.
- Pelajari lebih lanjut: 📄 Keycloak
- Hosting: 📦Aspire. Hosting.Keycloak
- Client: 📦Aspire.Keycloak. Autentikasi
Pustaka untuk mengakses autentikasi pada sistem Keycloak.
- Pelajari lebih lanjut: 📄 Milvus
- Hosting: 📦Aspire. Hosting.Milvus
- Client: 📦Aspire.Milvus.Client
Pustaka untuk mengakses database Milvus.
- Pelajari lebih lanjut: 📄MongoDB Driver
- Hosting: 📦Aspire. Hosting.MongoDB
- Client: 📦Aspire.MongoDB. Pengandar
Pustaka untuk mengakses database MongoDB.
- Pelajari lebih lanjut: 📄 MySqlConnector
- Hosting: 📦Aspire. Hosting.MySql
- Client: 📦Aspire. MySqlConnector
Pustaka untuk mengakses MySqlConnector database.
- Pelajari lebih lanjut: 📄 NATS
- Hosting: 📦Aspire. Hosting.Nats
- Client: 📦Aspire.NATS.Net
Perpustakaan untuk mengakses pesan NATS.
- Pelajari lebih lanjut: 📄Oracle - EF Core
- Hosting: 📦Aspire. Hosting.Oracle
- Client: 📦Aspire.Oracle. EntityFrameworkCore
Pustaka perangkat lunak untuk mengakses database Oracle dengan Entity Framework Core.
- Pelajari lebih lanjut: 📄 Orleans
- Hosting: 📦Aspire. Hosting.Orleans
- Client: N/A
Pustaka untuk pemodelan Orleans sebagai sumber daya .NET.NET Aspire.
- Pelajari lebih lanjut: 📄 Pomelo MySQL - EF Core
- Hosting: 📦Aspire. Hosting.MySql
- Client: 📦Aspire.Pomelo.EntityFrameworkCore.MySql
Pustaka perangkat lunak untuk mengakses database MySql dengan Entity Framework Core.
- Pelajari lebih lanjut: 📄PostgreSQL - EF Core
- Hosting: 📦Aspire. Hosting.PostgreSQL
- Client: 📦Aspire. Npgsql.EntityFrameworkCore.PostgreSQL
Pustaka untuk mengakses database PostgreSQL menggunakan Entity Framework Core.
- Pelajari lebih lanjut: 📄 PostgreSQL
- Hosting: 📦Aspire. Hosting.PostgreSQL
- Client: 📦Aspire. Npgsql
Pustaka untuk mengakses database PostgreSQL.
- Pelajari lebih lanjut: 📄 Qdrant
- Hosting: 📦Aspire. Hosting.Qdrant
- Client: 📦Aspire. Qdrant.Client
Pustaka untuk mengakses database Qdrant.
- Pelajari lebih lanjut: 📄 RabbitMQ
- Hosting: 📦Aspire. Hosting.RabbitMQ
- Client: 📦Aspire.RabbitMQ.Client
Pustaka untuk mengakses RabbitMQ.
- Pelajari lebih lanjut: 📄Redis Penembolokan Terdistribusi
- Hosting: 📦Aspire. Hosting.Redis, 📦Aspire. Hosting.Garnet, atau 📦Aspire. Hosting.Valkey
- Client: 📦Aspire.StackExchange.Redis.DistributedCaching
Perpustakaan untuk mengakses cache Redis untuk caching terdistribusi.
- Pelajari selengkapnya: 📄Redis Penembolokan Output
- Hosting: 📦Aspire. Hosting.Redis, 📦Aspire. Hosting.Garnet, atau 📦Aspire. Hosting.Valkey
- Client: 📦Aspire. StackExchange.Redis. OutputCaching
Pustaka untuk mengakses cache Redis untuk penembolokan output.
- Pelajari lebih lanjut: 📄 Redis
- Hosting: 📦Aspire. Hosting.Redis, 📦Aspire. Hosting.Garnet, atau 📦Aspire. Hosting.Valkey
- Client: 📦Aspire. StackExchange.Redis
Pustaka untuk mengakses cache Redis.
- Pelajari lebih lanjut: 📄 Seq
- Hosting: 📦Aspire. Hosting.Seq
- Client: 📦Aspire.Seq
Pustaka untuk pengelogan ke Seq.
- Pelajari lebih lanjut: 📄SQL Server - EF Core
- Hosting: 📦Aspire. Hosting.SqlServer
- Client: 📦Aspire. Microsoft.EntityFrameworkCore.SqlServer
Pustaka untuk mengakses database SQL Server menggunakan EF Core.
- Pelajari lebih lanjut: 📄 SQL Server
- Hosting: 📦Aspire. Hosting.SqlServer
- Client: 📦Aspire. Microsoft.Data.SqlClient
Pustaka untuk mengakses database SQL Server.

Untuk informasi selengkapnya tentang bekerja dengan integrasi .NET Aspire di Visual Studio, lihat alat Visual Studio.

Azure integrasi

integrasi Azure mengonfigurasi aplikasi untuk menggunakan sumber daya Azure. Integrasi hosting ini tersedia dalam paket NuGet Aspire.Hosting.Azure.*, sementara integrasi klien mereka tersedia dalam paket NuGet Aspire.*:

Integrasi Dokumentasi dan Paket NuGet Deskripsi
Azure Logo App Configuration. - Pelajari lebih lanjut: 📄Azure Konfigurasi Aplikasi
- Hosting: 📦Aspire.Hosting.Azure.AppConfiguration
- Client: N/A
Pustaka untuk berinteraksi dengan Azure Konfigurasi Aplikasi.
AzureApplication Insights logo. - Pelajari lebih lanjut: 📄 Azure Application Insights
- Hosting: 📦Aspire. Hosting.Azure. ApplicationInsights
- Client: N/A
Pustaka untuk berinteraksi dengan Azure Application Insights.
AzureAzure Cache for Redis logo - Pelajari lebih lanjut: 📄 Azure Cache for Redis
- Hosting: 📦Aspire. Hosting.Azure.Redis
- Client: 📦Aspire. StackExchange.Redis atau 📦Aspire. StackExchange.Redis. DistributedCaching atau 📦Aspire. StackExchange.Redis. OutputCaching
Pustaka untuk mengakses Azure Cache for Redis.
AzureAzure Cosmos DB EF logo. - Pelajari lebih lanjut: 📄Azure Cosmos DB - EF Core
- Hosting: 📦Aspire.Hosting.Azure.CosmosDB
- Client: 📦Aspire. Microsoft.EntityFrameworkCore.Cosmos
Sebuah pustaka untuk mengakses database AzureAzure Cosmos DB dengan Entity Framework Core.
logo AzureAzure Cosmos DB. - Pelajari lebih lanjut: 📄 Azure Cosmos DB
- Hosting: 📦Aspire.Hosting.Azure.CosmosDB
- Client: 📦Aspire. Microsoft.Azure. Cosmos
Pustaka untuk mengakses database Azure Cosmos DB.
Azure Event Hubs logo. - Pelajari lebih lanjut: 📄 Azure Event Hubs
- Hosting: 📦Aspire.Hosting.Azure. EventHubs
- Client: 📦Aspire.Azure. PusatPesan.EventHubs
Pustaka untuk mengakses Azure Event Hubs.
Azure Fungsi logo. - Pelajari lebih lanjut: 📄Azure Fungsi
- Hosting: 📦Aspire. Hosting.Azure. Fungsi
- Client: N/A
Pustaka untuk mengintegrasikan dengan Fungsi Azure.
logo Azure Key Vault. - Pelajari lebih lanjut: 📄 Azure Key Vault
- Hosting: 📦Aspire. Hosting.Azure. KeyVault
- Client: 📦Aspire.Azure. Security.KeyVault
Pustaka untuk mengakses Azure Key Vault.
Azure logo Operational Insights. - Pelajari lebih lanjut: 📄Azure Wawasan Operasional
- Hosting: 📦Aspire. Hosting.Azure. OperationalInsights
- Client: N/A
Pustaka untuk berinteraksi dengan Azure Operational Insights.
AzureOpenAI logo. - Pelajari lebih lanjut: 📄 Azure AI OpenAI
- Hosting: 📦Aspire. Hosting.Azure. CognitiveServices
- Client: 📦Aspire.Azure. AI.OpenAI
Pustaka untuk mengakses fungsi Azure AI OpenAI atau OpenAI.
logo AzurePostgreSQL. - Pelajari lebih lanjut: 📄 Azure PostgreSQL
- Hosting: 📦Aspire. Hosting.Azure.PostgreSQL
- Client: N/A
Perpustakaan untuk berinteraksi dengan database Azure untuk PostgreSQL.
Azure logo Pencarian AI. Pelajari lebih lanjut: Pencarian AI
- Hosting: 📦Aspire. Hosting.Azure. Cari
- Client: 📦Aspire.Azure. Search.Documents
Pustaka untuk mengakses fungsi Pencarian AI Azure.
Azure Service Bus logo. - Pelajari lebih lanjut: 📄 Azure Service Bus
- Hosting: 📦Aspire. Hosting.Azure. ServiceBus
- Client: 📦Aspire.Azure. Messaging.ServiceBus
Pustaka untuk mengakses Azure Service Bus.
AzureAzure SignalR Service logo. - Pelajari lebih lanjut: 📄 Azure SignalR Service
- Hosting: 📦Aspire. Hosting.Azure.SignalR
- Client: Microsoft.Azure.SignalR
Pustaka untuk mengakses Azure SignalR Service.
logo Azure Blob Storage. - Pelajari lebih lanjut: 📄 Azure Blob Storage
- Hosting: 📦Aspire. Hosting.Azure. Penyimpanan
- Client: 📦Aspire.Azure.Storage.Blobs
Pustaka untuk mengakses Azure Blob Storage.
logo Azure Storage Queues. - Pelajari lebih lanjut: 📄 Azure Storage Queues
- Hosting: 📦Aspire. Hosting.Azure. Penyimpanan
- Client: 📦Aspire.Azure. Penyimpanan.Antrian
Pustaka untuk mengakses Azure Storage Queues.
logo Azure Table Storage. - Pelajari lebih lanjut: 📄 Azure Table Storage
- Hosting: 📦Aspire. Hosting.Azure. Penyimpanan
- Client: 📦Aspire.Azure. Data.Tables
Pustaka yang digunakan untuk mengakses layanan Tabel Azure.
Azure Logo Web PubSub. - Pelajari lebih lanjut: 📄Azure Web PubSub
- Hosting: 📦Aspire.Hosting.Azure.WebPubSub
- Client: 📦Aspire.Azure. Messaging.WebPubSub
Pustaka untuk mengakses layanan Web PubSub Azure.

Integrasi hosting Amazon Web Services (AWS)

Dokumen integrasi dan paket NuGet Deskripsi
- Pelajari lebih lanjut: 📄 AWS Hosting
- Hosting: 📦Aspire. Hosting.AWS
- Client: N/A
Pustaka pemodelan sumber daya AWS.

Untuk informasi selengkapnya, lihat GitHub: Aspire. Pustaka Hosting.AWS.

Integrasi Toolkit Komunitas

Nota

Integrasi Community Toolkit digerakkan oleh komunitas dan dikelola oleh komunitas .NET.NET Aspire. Integrasi ini tidak didukung secara resmi oleh tim .NET.NET Aspire.

Dokumen integrasi dan paket NuGet Deskripsi
- Pelajari lebih lanjut: 📄Azure emulator Aplikasi Web Statis
- Hosting: 📦 CommunityToolkit.Aspire.Hosting.Azure.StaticWebApps
- Client: N/A
Integrasi hosting untuk emulator Azure Static Web Apps (Catatan: ini tidak mendukung penyebaran proyek untuk Azure Static Web Apps).
- Pelajari lebih lanjut: 📄 hosting
- Hosting: 📦 CommunityToolkit.Aspire. Hosting.Bun
- Client: N/A
Integrasi hosting untuk aplikasi Bun.
- Pelajari lebih lanjut: 📄Deno hosting
- Hosting: 📦 CommunityToolkit.Aspire. Hosting.Deno
- Client: N/A
Integrasi hosting untuk aplikasi Deno.
- Pelajari lebih lanjut: 📄 Go hosting
- Hosting: 📦 CommunityToolkit.Aspire. Hosting.Golang
- Client: N/A
Integrasi hosting untuk aplikasi Go.
- Pelajari lebih lanjut: 📄 hosting Java/Spring
- Hosting: 📦 CommunityToolkit.Aspire. Hosting.Java
- Client: N/A
Integrasi untuk menjalankan kode Java di .NET.NET Aspire menggunakan JDK lokal atau menggunakan kontainer.
- Pelajari lebih lanjut: 📄Node.js ekstensi hosting
- Hosting: 📦 CommunityToolkit.Aspire. Hosting.NodeJs.Extensions
- Client: N/A
Integrasi yang berisi beberapa ekstensi tambahan untuk menjalankan aplikasi Node.js
- Pelajari lebih lanjut: 📄 Ollama
- Hosting: 📦 CommunityToolkit.Aspire. Hosting.Ollama
- Client: 📦Aspire.CommunitToolkit.OllamaSharp
Komponen Aspire yang memanfaatkan kontainer Ollama dengan mendukung pengunduhan model saat startup.
- Pelajari lebih lanjut: 📄 hosting Meilisearch
- Hosting: 📦 CommunityToolkit.Aspire.Hosting.Meilisearch
- Client: 📦Aspire.CommunitToolkit.Meilisearch
Komponen yang memanfaatkan kontainer Meilisearch.
- Pelajari lebih lanjut: 📄 hosting untuk Rust
- Hosting: 📦 CommunityToolkit.Aspire. Hosting.Rust
- Client: N/A
Integrasi hosting untuk aplikasi Rust.
- Pelajari selengkapnya: 📄 proyek SQL Database yang menghosting
- Hosting: 📦 CommunityToolkit.Aspire. Hosting.SqlDatabaseProjects
- Client: N/A
Integrasi hosting Aspire untuk Proyek SQL Database.

Untuk informasi selengkapnya, lihat .NET.NET AspireCommunity Toolkit.