CacheOrchestrator.HttpBus
3.0.0-beta.2
dotnet add package CacheOrchestrator.HttpBus --version 3.0.0-beta.2
NuGet\Install-Package CacheOrchestrator.HttpBus -Version 3.0.0-beta.2
<PackageReference Include="CacheOrchestrator.HttpBus" Version="3.0.0-beta.2" />
<PackageVersion Include="CacheOrchestrator.HttpBus" Version="3.0.0-beta.2" />
<PackageReference Include="CacheOrchestrator.HttpBus" />
paket add CacheOrchestrator.HttpBus --version 3.0.0-beta.2
#r "nuget: CacheOrchestrator.HttpBus, 3.0.0-beta.2"
#:package CacheOrchestrator.HttpBus@3.0.0-beta.2
#addin nuget:?package=CacheOrchestrator.HttpBus&version=3.0.0-beta.2&prerelease
#tool nuget:?package=CacheOrchestrator.HttpBus&version=3.0.0-beta.2&prerelease
CacheOrchestrator.HttpBus
CacheOrchestrator unifies the configuration of Output Cache, data cache, and client Cache-Control within a single domain model. It ensures seamless coordination and cache invalidation across all layers while significantly reducing boilerplate code.
This package is the HTTP cluster command bus: it delivers invalidate, Version, and settings patches to every configured peer. Use it when you run more than one instance and need those commands everywhere (it does not share Redis cache payloads by itself).
Install
dotnet add package CacheOrchestrator.HttpBus --prerelease
Config
{
"Cache": {
"Namespace": "app1",
"InstanceId": "app1-a",
"Cluster": {
"Bus": {
"Enabled": true,
"Membership": "Static",
"ApiKey": "…",
"Static": {
"Instances": [
{ "Id": "app1-a", "Url": "http://10.0.0.1:8080" },
{ "Id": "app1-b", "Url": "http://10.0.0.2:8080" }
]
}
}
}
}
}
Membership may also be ServiceDiscovery. Peers authenticate POST …/cluster/apply with X-Cache-Admin-Key (Cache:Cluster:Bus:ApiKey, or Cache:Admin:ApiKey if empty).
Example
dotnet add package CacheOrchestrator --prerelease
dotnet add package CacheOrchestrator.HttpBus --prerelease
builder.Services.AddCacheOrchestrator(builder.Configuration, o => o.AddHttpClusterBus());
var app = builder.Build();
app.UseCacheOrchestrator();
app.MapCacheOrchestratorHttpBus();
app.MapGet("/api/products/{id}", async (HttpContext http, string id, IDomainDataCache cache) =>
{
var data = await cache.GetOrSetAsync(http, ct => LoadProductAsync(id, ct));
return Results.Json(data);
})
.CacheOutputWithDomain("catalog");
Invalidate / Version / settings from Admin or ICacheOrchestratorInvalidator are then delivered to peers over the bus.
Related packages
| Package | Role |
|---|---|
| CacheOrchestrator | Meta package (AspNetCore + Fusion) for typical web apps |
| CacheOrchestrator.Core | Http-free domains and ICacheOrchestrator (libraries / workers) |
| CacheOrchestrator.AspNetCore | Output Cache, Client Cache, Admin API, IDomainDataCache |
| CacheOrchestrator.FusionCache | FusionCache data-cache provider |
| CacheOrchestrator.HybridCache | Microsoft HybridCache data-cache provider |
| CacheOrchestrator.Redis | Redis Output Cache store / Fusion L2 / backplane |
| CacheOrchestrator.EFCore.Invalidation | Invalidate after EF SaveChanges |
Documentation
License
MIT — LICENSE.md
| 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 was computed. 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
- CacheOrchestrator.AspNetCore (>= 3.0.0-beta.2)
- Microsoft.Extensions.ServiceDiscovery (>= 10.0.0)
-
net8.0
- CacheOrchestrator.AspNetCore (>= 3.0.0-beta.2)
- Microsoft.Extensions.ServiceDiscovery (>= 9.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.
| Version | Downloads | Last Updated |
|---|---|---|
| 3.0.0-beta.2 | 30 | 8/25/2026 |
| 3.0.0-beta.1 | 29 | 8/25/2026 |
CacheOrchestrator 3.0.0-beta.2
Beta 2 release of the completely redesigned v3 architecture, built around a new modular package ecosystem. This release separates the HTTP-free core orchestration from the ASP.NET host, introduces foundational support for both FusionCache and HybridCache providers, and is published for early integration testing and community feedback.
(Note for existing users: v3 is a full redesign and does not preserve API compatibility with 1.x or 2.x. Please see the Changelog before upgrading.)
Full notes: https://github.com/amarinsek/CacheOrchestrator/blob/main/CHANGELOG.md