EventSourcing.Backbone.Abstractions 1.2.173

dotnet add package EventSourcing.Backbone.Abstractions --version 1.2.173                
NuGet\Install-Package EventSourcing.Backbone.Abstractions -Version 1.2.173                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="EventSourcing.Backbone.Abstractions" Version="1.2.173" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add EventSourcing.Backbone.Abstractions --version 1.2.173                
#r "nuget: EventSourcing.Backbone.Abstractions, 1.2.173"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install EventSourcing.Backbone.Abstractions as a Cake Addin
#addin nuget:?package=EventSourcing.Backbone.Abstractions&version=1.2.173

// Install EventSourcing.Backbone.Abstractions as a Cake Tool
#tool nuget:?package=EventSourcing.Backbone.Abstractions&version=1.2.173                

Deploy

NuGet NuGet

Framework Status: Beta (Graduating to RC soon; API subject to change).

Event-Source-Backbone

Understanding Event Sourcing

Event sourcing is an architectural pattern that captures and persists every change as a sequence of events. It provides a historical log of events that can be used to reconstruct the current state of an application at any given point in time. This approach offers various benefits, such as auditability, scalability, and the ability to build complex workflows.

Event sourcing, when combined with the Command Query Responsibility Segregation (CQRS) pattern, offers even more advantages. CQRS separates the read and write concerns of an application, enabling the generation of dedicated databases optimized for specific read or write needs. This separation of concerns allows for more agile and flexible database schema designs, as they are less critical to set up in advance.

By leveraging EventSource.Backbone, developers can implement event sourcing and CQRS together, resulting in a powerful architecture that promotes scalability, flexibility, and maintainability.

Introducing EventSource.Backbone

One notable aspect of EventSource.Backbone is its unique approach to event sourcing. Instead of inventing a new event source database, EventSource.Backbone leverages a combination of existing message streams like Kafka, Redis Stream, or similar technologies, along with key-value databases or services like Redis.

This architecture enables several benefits. Message streams, while excellent for handling event sequences and ensuring reliable message delivery, may not be optimal for heavy payloads. By combining key-value databases with message streams, EventSource.Backbone allows the message payload to be stored in the key-value database while the stream holds the sequence and metadata. This approach improves performance and facilitates compliance with GDPR standards by allowing the splitting of messages into different keys based on a standardized key format.

It's worth noting that EventSource.Backbone currently provides a software development kit (SDK) for the .NET ecosystem. While the framework may expand to other programming languages and frameworks in the future, at present, it is specifically focused on the .NET platform.

Leveraging Existing Infrastructure

One of the major advantages of EventSource.Backbone is its compatibility with widely adopted message streaming platforms like Kafka or Redis Stream. These platforms provide robust message delivery guarantees and high throughput, making them ideal for handling event streams at scale.

Furthermore, EventSource.Backbone seamlessly integrates with popular key-value databases such as Redis, Couchbase, or Amazon DynamoDB. This integration allows developers to leverage the strengths of these databases for efficient storage and retrieval of auxiliary data related to events.

Conclusion

In this introductory post, we've explored the concept of event sourcing and introduced the unique aspects of EventSource.Backbone. This framework stands out by leveraging a combination of message streams and key-value databases to achieve better performance, support GDPR standards, and provide flexibility in event sourcing implementations.

EventSource.Backbone integrates seamlessly with popular message streaming platforms and key-value databases, enabling developers to leverage their strengths for scalable and efficient event sourcing.

When combined with CQRS, event sourcing can enhance database schema design, making it more agile and flexible, and enabling the generation of dedicated databases optimized for specific needs.

Stay tuned for more exciting content on event sourcing and EventSource.Backbone! If you have any questions or topics you'd like me to cover, feel free to leave a comment below.

Feel free to further customize this blog post to align with your writing style and any additional information you wish to provide. Happy blogging!

Product Compatible and additional computed target framework versions.
.NET net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (11)

Showing the top 5 NuGet packages that depend on EventSourcing.Backbone.Abstractions:

Package Downloads
EventSourcing.Backbone

Package Description

EventSourcing.Backbone.Channels.S3StoreProvider.Common

Package Description

EventSourcing.Backbone.Consumers

Package Description

EventSourcing.Backbone.Channels.RedisProvider.Common

Package Description

EventSourcing.Backbone.Producers

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.2.173 312 12/30/2023
1.2.172 228 12/29/2023
1.2.171 222 12/28/2023
1.2.168 229 12/28/2023
1.2.163 339 8/11/2023
1.2.162 290 8/11/2023
1.2.161 286 8/10/2023
1.2.160 284 8/10/2023
1.2.158 290 8/8/2023
1.2.157 279 8/8/2023
1.2.156 288 8/8/2023
1.2.155 289 8/8/2023
1.2.154 289 8/8/2023
1.2.153 289 7/21/2023
1.2.152 315 7/13/2023
1.2.151 293 7/13/2023
1.2.150 304 7/13/2023
1.2.149 318 7/12/2023
1.2.148 300 7/12/2023
1.2.147 304 7/12/2023
1.2.146 318 7/11/2023
1.2.145 311 7/11/2023
1.2.144 293 7/9/2023
1.2.138 293 7/4/2023
1.2.137 290 7/4/2023
1.2.134 316 7/4/2023
1.2.133 316 7/3/2023
1.2.132 329 7/3/2023
1.2.129 319 7/3/2023
1.2.128 311 7/2/2023
1.2.127 303 6/28/2023
1.2.126 305 6/28/2023
1.2.125 315 6/25/2023
1.2.124 334 6/25/2023
1.2.123 330 6/25/2023
1.2.121 341 6/25/2023
1.2.120 325 6/25/2023
1.2.119 312 6/21/2023
1.2.118 332 6/14/2023
1.2.117 301 6/13/2023
1.2.116 316 6/13/2023
1.2.115 321 6/12/2023
1.2.114 315 6/11/2023
1.2.113 314 6/11/2023
1.2.112 328 6/8/2023
1.2.111 331 6/8/2023
1.2.110 319 6/8/2023
1.2.109 323 6/8/2023
1.2.108 342 6/8/2023
1.2.107 330 6/7/2023
1.2.106 341 6/7/2023
1.2.103 329 6/6/2023
1.2.102 314 6/6/2023
1.2.100 313 6/6/2023
1.2.98 314 6/6/2023
1.2.96 313 6/6/2023
1.2.94 323 6/5/2023
1.2.92 320 6/5/2023
1.2.90 187 6/5/2023
1.2.88 180 6/5/2023
1.2.84 376 6/2/2023
1.2.82 351 6/1/2023
1.2.80 332 6/1/2023
1.2.78 337 6/1/2023
1.2.76 336 5/29/2023
1.2.74 339 5/28/2023
1.2.72 335 5/28/2023
1.2.70 326 5/28/2023
1.2.68 331 5/28/2023
1.2.64 352 5/24/2023
1.2.62 350 5/24/2023
1.2.60 324 5/24/2023
1.2.58 341 5/24/2023
1.2.56 321 5/24/2023
1.2.53 318 5/24/2023
1.2.52 258 5/24/2023
1.2.51 276 5/24/2023
1.2.50 305 5/24/2023
1.2.48 321 5/24/2023
1.2.46 364 5/24/2023
1.2.45 350 5/24/2023
1.2.44 349 5/24/2023
1.2.42 375 5/24/2023
1.2.40 408 5/23/2023
1.2.39 480 5/23/2023
1.2.36 374 5/24/2023
1.2.34 327 5/24/2023
1.2.32 330 5/24/2023
1.2.31 377 5/23/2023

# 1.2.85:
Breaking changes: S3Strategy was renamed to S3Storage
# 1.2.96
Breaking changes: Method on the consumer interface generated with first parameter of type ConsumerContext
# 1.2.115
Breaking changes: registration extensions was re-module
# 1.2.121
Open Telemetry
# 1.2.146
Breaking changes:
- AddRedisStorage - renamed -> AddRedisHashStorage
- ResolveRedisStorage - renamed -> ResolveRedisHashStorage
# 1.2.147
Breaking changes:
- Redis Storage path: adding operation into the path
# 1.2.151
Breaking changes (major):
- Version awareness
- COnsumerMetadata become ConsumerContext
- Changes of URI and storage path
- Fix type: IConsumerSubscribtionHubBuilder -> IConsumerSubscriptionHubBuilder