FxMap.Aws.Sqs
2.0.1
dotnet add package FxMap.Aws.Sqs --version 2.0.1
NuGet\Install-Package FxMap.Aws.Sqs -Version 2.0.1
<PackageReference Include="FxMap.Aws.Sqs" Version="2.0.1" />
<PackageVersion Include="FxMap.Aws.Sqs" Version="2.0.1" />
<PackageReference Include="FxMap.Aws.Sqs" />
paket add FxMap.Aws.Sqs --version 2.0.1
#r "nuget: FxMap.Aws.Sqs, 2.0.1"
#:package FxMap.Aws.Sqs@2.0.1
#addin nuget:?package=FxMap.Aws.Sqs&version=2.0.1
#tool nuget:?package=FxMap.Aws.Sqs&version=2.0.1
FxMap.Aws.Sqs
FxMap.Aws.Sqs is an extension package for FxMap that leverages Amazon SQS for efficient data transportation. This package provides a high-performance, strongly-typed communication layer for FxMap's FluentAPI-based Data Mapping, enabling streamlined data retrieval across distributed systems.
Introduction
Amazon SQS-based Transport: Implements Amazon SQS to handle data communication between services, providing a fast, secure, and scalable solution with features like long polling, batch processing, and automatic supervision.
Installation
To install the FxMap.Aws.Sqs package, use the following NuGet command:
dotnet add package FxMap.Aws.Sqs
Or via the NuGet Package Manager:
Install-Package FxMap.Aws.Sqs
How to Use
1. Register FxMap.Aws.Sqs
Add FxMap.Aws.Sqs to your service configuration during application startup:
builder.Services.AddFxMap(cfg =>
{
cfg.AddEntitiesFromAssemblyContaining<SomeEntityAssemblyMarker>();
cfg.AddProfilesFromAssemblyContaining<SomeProfileAssemblyMarker>();
cfg.AddSqs(sqs =>
{
sqs.Region(RegionEndpoint.USEast1, credential =>
{
credential.AccessKeyId("your-access-key-id");
credential.SecretAccessKey("your-secret-access-key");
});
});
});
...
var app = builder.Build();
app.Run();
LocalStack Support (for testing)
builder.Services.AddFxMap(cfg =>
{
cfg.AddEntitiesFromAssemblyContaining<SomeEntityAssemblyMarker>();
cfg.AddProfilesFromAssemblyContaining<SomeProfileAssemblyMarker>();
cfg.AddSqs(sqs =>
{
sqs.Region(RegionEndpoint.USEast1, credential =>
{
credential.ServiceUrl("http://localhost:4566"); // LocalStack endpoint
credential.AccessKeyId("test");
credential.SecretAccessKey("test");
});
});
});
Using IAM Roles (recommended for AWS environments)
builder.Services.AddFxMap(cfg =>
{
cfg.AddEntitiesFromAssemblyContaining<SomeEntityAssemblyMarker>();
cfg.AddProfilesFromAssemblyContaining<SomeProfileAssemblyMarker>();
cfg.AddSqs(sqs =>
{
sqs.Region(RegionEndpoint.USEast1); // No credentials needed, uses IAM role
});
});
Note: FxMap.Aws.Sqs uses queues that start with fxmap-{namespace}-{distributedkeyname}. Therefore, you should avoid using other queues. Additionally, FxMap.Aws.Sqs automatically creates response queues fxmap-response-{machinename}-{guid}, so you should avoid creating a queue with the same name in your application.
That All, enjoy your moment!
| Package Name | Description | .NET Version | Document |
|---|---|---|---|
| Core | |||
| FxMap | FxMap core | 8.0, 9.0, 10.0 | ReadMe |
| Data Providers | |||
| FxMap.EntityFrameworkCore | FxMap extension package using EntityFramework to fetch data | 8.0, 9.0, 10.0 | ReadMe |
| FxMap.MongoDb | FxMap extension package using MongoDb to fetch data | 8.0, 9.0, 10.0 | ReadMe |
| Integrations | |||
| FxMap.HotChocolate | FxMap.HotChocolate is an integration package with HotChocolate for FxMap. | 8.0, 9.0, 10.0 | ReadMe |
| Transports | |||
| FxMap.Aws.Sqs | FxMap.Aws.Sqs is an extension package for FxMap that leverages Amazon SQS for efficient data transportation. | 8.0, 9.0, 10.0 | This Document |
| FxMap.Azure.ServiceBus | FxMap.Azure.ServiceBus is an extension package for FxMap that leverages Azure ServiceBus for efficient data transportation. | 8.0, 9.0, 10.0 | ReadMe |
| FxMap.Grpc | FxMap.Grpc is an extension package for FxMap that leverages gRPC for efficient data transportation. | 8.0, 9.0, 10.0 | ReadMe |
| FxMap.Kafka | FxMap.Kafka is an extension package for FxMap that leverages Kafka for efficient data transportation. | 8.0, 9.0, 10.0 | ReadMe |
| FxMap.Nats | FxMap.Nats is an extension package for FxMap that leverages Nats for efficient data transportation. | 8.0, 9.0, 10.0 | ReadMe |
| FxMap.RabbitMq | FxMap.RabbitMq is an extension package for FxMap that leverages RabbitMq for efficient data transportation. | 8.0, 9.0, 10.0 | ReadMe |
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- AWSSDK.SQS (>= 3.7.0)
- FxMap (>= 2.0.1)
- Microsoft.Extensions.Hosting.Abstractions (>= 8.0.0)
-
net8.0
- AWSSDK.SQS (>= 3.7.0)
- FxMap (>= 2.0.1)
- Microsoft.Extensions.Hosting.Abstractions (>= 8.0.0)
-
net9.0
- AWSSDK.SQS (>= 3.7.0)
- FxMap (>= 2.0.1)
- Microsoft.Extensions.Hosting.Abstractions (>= 8.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.