MSA.BuildingBlocks is a collection of common building blocks designed to aid the development of microservice-based applications using .NET. This library provides a variety of packages, each offering specific functionalities that cater to different aspects of microservice architecture.
Packages The MSA.BuildingBlocks library includes the following packages:
- MSA.BuildingBlocks.ServiceClient: Provides infrastructure for internal HTTP communication between services.
- MSA.BuildingBlocks.Mapping: Contains extensions and interfaces IMapTo<> and IMapFrom<> for AutoMapper, facilitating object-object mapping.
- MSA.BuildingBlocks.CosmosDbMigration: Implements a migration mechanism for CosmosDB, ensuring your database schema is always up-to-date.
- MSA.BuildingBlocks.EventBus: Offers infrastructure for working with messaging-broker technologies like Azure Service Bus, RabbitMQ, and Kafka.
- MSA.BuildingBlocks.RequestReplyBus: Provides infrastructure for working with messaging-broker technologies like Azure Service Bus and RabbitMQ, specifically tailored for request-reply messaging patterns.
- MSA.BuildingBlocks.FileStorage: Facilitates work with file storage systems such as Azure Blob storage, Azure DataLake, and Amazon S3.
- MSA.BuildingBlocks.Logging: Contains a common logging infrastructure that uses Serilog with Elasticsearch format and Application Insight sink.
- MSA.BuildingBlocks.Metrics: Provides extensions for Prometheus metrics.
- MSA.BuildingBlocks.Tracing: Implements infrastructure for distributed tracing, improving observability in microservice architectures.
- MSA.BuildingBlocks.WebApp: Provides infrastructure for working with web applications based on ASP.NET Core.
- MSA.BuildingBlocks.Caching: Implements a common caching infrastructure, improving performance by reducing unnecessary database calls.
Install as a library from Nuget:
MSA.BuildingBlocks.Mapping (usage)
PM> Install-Package MSA.BuildingBlocks.Mapping
MSA.BuildingBlocks.ServiceClient (usage)
PM> Install-Package MSA.BuildingBlocks.ServiceClient
MSA.BuildingBlocks.CosmosDbMigration (usage)
PM> Install-Package MSA.BuildingBlocks.CosmosDbMigration