Cirreum.Messaging.Distributed
1.2.0
dotnet add package Cirreum.Messaging.Distributed --version 1.2.0
NuGet\Install-Package Cirreum.Messaging.Distributed -Version 1.2.0
<PackageReference Include="Cirreum.Messaging.Distributed" Version="1.2.0" />
<PackageVersion Include="Cirreum.Messaging.Distributed" Version="1.2.0" />
<PackageReference Include="Cirreum.Messaging.Distributed" />
paket add Cirreum.Messaging.Distributed --version 1.2.0
#r "nuget: Cirreum.Messaging.Distributed, 1.2.0"
#:package Cirreum.Messaging.Distributed@1.2.0
#addin nuget:?package=Cirreum.Messaging.Distributed&version=1.2.0
#tool nuget:?package=Cirreum.Messaging.Distributed&version=1.2.0
Cirreum.Messaging.Distributed
Distributed-envelope orchestration for the Cirreum Messaging track — sibling to Cirreum.Messaging (transport).
Overview
Cirreum.Messaging.Distributed is the distributed-envelope foundation of the Messaging track. It layers distributed message orchestration (typed envelopes, registry, scanning, transport publishing contracts, options) on top of the transport abstractions provided by Cirreum.Messaging.
Cirreum.Messaging.Distributed contains:
- Envelope types —
DistributedMessage,DistributedMessageEnvelope(a dumb wire record; receivers resolve the inbound type by identity via the registry'sResolveType(identifier, version)and deserialize withDeserializeMessage(Type); the channel's wire format is System.Text.Json),DistributedMessageHandler,DistributedMessagePriority,DistributedMessageReceived - Routing —
DistributedMessageTargetAttribute+MessageTarget(queue vs topic, per message type; pairs with[MessageVersion]from Cirreum.Kernel) - Registry —
IDistributedMessageRegistry/DistributedMessageRegistry(the channel registry over the Kernel'sIMessageRegistry<TBase>primitive, adding per-type target lookup) - Batching strategy —
IBatchingPolicy+BatchingContext/BatchingDecision, the pass-throughDefaultBatchingPolicy, and the framework-suppliedTimeOfDayBatchingPolicy(+TimeOfDayBatchingOptions/TimeOfDayScalingRule) - Node identity —
INodeIdProvider,DefaultNodeIdProvider - Options —
DistributedMessagingOptions,BackgroundDeliveryOptions,ReceiverOptions - Metrics —
IMessagingMetricsService
This package is the model; the runtime delivery engine (outbound Conductor bridge, batch processor, transport publisher, inbound receiver) lives in Cirreum.Runtime.Messaging. It is also pulled transitively by tracks that publish or consume distributed envelopes (e.g., cross-process auth event propagation).
Relationship to Cirreum.Messaging
Cirreum.Messaging (existing) provides generic queue/topic/transport abstractions (IMessagingQueue, IMessagingTopicSender, IMessagingClient, etc.). Cirreum.Messaging.Distributed (this package) provides the higher-level distributed-envelope orchestration that composes on top. The two are peers; both reference Cirreum.Kernel directly; composition happens where concrete transports wire to concrete envelope flows.
Where it fits
Base — Cirreum.Kernel, Cirreum.Result, Cirreum.Exceptions
Common ← Cirreum.Messaging.Distributed lives here (peer of Cirreum.Messaging,
Cirreum.Common, etc.)
Above — Provider tracks compose on top
Versioning
Cirreum.Messaging.Distributed follows Semantic Versioning.
License
MIT — see LICENSE.
Cirreum Foundation Framework
Layered simplicity for modern .NET
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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
- Cirreum.Kernel (>= 1.1.0)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Cirreum.Messaging.Distributed:
| Package | Downloads |
|---|---|
|
Cirreum.Services.Serverless
Cirreum infrastructure services for serverless applications |
|
|
Cirreum.Runtime.Messaging
Messaging services composition and the Distributed Messaging delivery engine for Cirreum server hosts: registers configured messaging providers (Azure Service Bus) as keyed IMessagingClient instances, and delivers DistributedMessage traffic with policy-driven batching, an inbound receiver, and OpenTelemetry observability. |
GitHub repositories
This package is not used by any popular GitHub repositories.