Akka.Cluster.Sharding
1.4.21-beta1
Prefix Reserved
See the version list below for details.
dotnet add package Akka.Cluster.Sharding --version 1.4.21-beta1
NuGet\Install-Package Akka.Cluster.Sharding -Version 1.4.21-beta1
<PackageReference Include="Akka.Cluster.Sharding" Version="1.4.21-beta1" />
paket add Akka.Cluster.Sharding --version 1.4.21-beta1
#r "nuget: Akka.Cluster.Sharding, 1.4.21-beta1"
// Install Akka.Cluster.Sharding as a Cake Addin #addin nuget:?package=Akka.Cluster.Sharding&version=1.4.21-beta1&prerelease // Install Akka.Cluster.Sharding as a Cake Tool #tool nuget:?package=Akka.Cluster.Sharding&version=1.4.21-beta1&prerelease
Sharded actors with managed lifecycle for Akka.NET cluster
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. 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. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Akka.Cluster.Tools (>= 1.4.21-beta1)
- Akka.Coordination (>= 1.4.21-beta1)
- Akka.DistributedData (>= 1.4.21-beta1)
- Akka.DistributedData.LightningDB (>= 1.4.21-beta1)
- Akka.Persistence (>= 1.4.21-beta1)
NuGet packages (16)
Showing the top 5 NuGet packages that depend on Akka.Cluster.Sharding:
Package | Downloads |
---|---|
Akka.Cluster.Hosting
Akka.Cluster and Akka.Cluster.Sharding Microsoft.Extensions.Hosting support. |
|
Petabridge.Cmd.Cluster.Sharding
Akka.Cluster.Sharding Petabridge.Cmd palettes for shard management and monitoring. |
|
wyvern.entity
Package Description |
|
Akkling.Cluster.Sharding
F# wrapper library for Akka.NET cluster sharding module. |
|
Akkatecture.Clustering
clustering library for akkatecture to enable distributed scenarios |
GitHub repositories (4)
Showing the top 4 popular GitHub repositories that depend on Akka.Cluster.Sharding:
Repository | Stars |
---|---|
petabridge/akkadotnet-code-samples
Akka.NET professional reference code samples
|
|
ThembisileNGQ/Akkatecture
a cqrs and event sourcing framework for dotnet core using akka.net
|
|
Aaronontheweb/InMemoryCQRSReplication
Akka.NET Reference Architecture - CQRS + Sharding + In-Memory Replication
|
|
Horusiath/AkkaCQRS
Event sourcing example build on Akka.NET with persistence plugin
|
Version | Downloads | Last updated |
---|---|---|
1.5.33 | 1,053 | 12/23/2024 |
1.5.32 | 5,456 | 12/4/2024 |
1.5.31 | 9,920 | 11/11/2024 |
1.5.30 | 17,938 | 10/3/2024 |
1.5.29 | 1,574 | 10/1/2024 |
1.5.28 | 33,971 | 9/4/2024 |
1.5.28-beta1 | 131 | 8/23/2024 |
1.5.27.1 | 47,337 | 7/26/2024 |
1.5.27 | 490 | 7/25/2024 |
1.5.27-beta2 | 112 | 7/3/2024 |
1.5.27-beta1 | 89 | 7/3/2024 |
1.5.26 | 39,992 | 6/27/2024 |
1.5.25 | 52,994 | 6/14/2024 |
1.5.24 | 5,576 | 6/7/2024 |
1.5.23 | 691 | 6/6/2024 |
1.5.22 | 1,736 | 6/3/2024 |
1.5.21 | 3,324 | 5/28/2024 |
1.5.20 | 22,626 | 4/29/2024 |
1.5.19 | 12,574 | 4/15/2024 |
1.5.18 | 34,220 | 3/12/2024 |
1.5.17.1 | 7,008 | 3/2/2024 |
1.5.17 | 810 | 2/29/2024 |
1.5.16 | 19,618 | 1/29/2024 |
1.5.15 | 27,943 | 1/10/2024 |
1.5.14 | 27,251 | 11/3/2023 |
1.5.13 | 64,313 | 9/18/2023 |
1.5.13-beta1 | 440 | 8/25/2023 |
1.5.12 | 21,775 | 8/2/2023 |
1.5.11 | 3,106 | 7/27/2023 |
1.5.10 | 7,366 | 7/25/2023 |
1.5.9 | 8,293 | 7/17/2023 |
1.5.8 | 35,566 | 6/15/2023 |
1.5.7 | 21,443 | 5/17/2023 |
1.5.6 | 9,365 | 5/8/2023 |
1.5.5 | 35,451 | 5/4/2023 |
1.5.4 | 12,489 | 4/25/2023 |
1.5.3 | 2,809 | 4/20/2023 |
1.5.2 | 17,028 | 4/6/2023 |
1.5.1 | 8,547 | 3/15/2023 |
1.5.0 | 11,485 | 3/2/2023 |
1.5.0-beta6 | 999 | 3/1/2023 |
1.5.0-beta5 | 552 | 3/1/2023 |
1.5.0-beta4 | 643 | 2/28/2023 |
1.5.0-beta3 | 726 | 2/27/2023 |
1.5.0-beta2 | 570 | 2/23/2023 |
1.5.0-beta1 | 603 | 2/20/2023 |
1.5.0-alpha4 | 952 | 2/1/2023 |
1.5.0-alpha3 | 794 | 11/15/2022 |
1.5.0-alpha2 | 676 | 10/17/2022 |
1.5.0-alpha1 | 679 | 8/22/2022 |
1.4.51 | 10,175 | 6/28/2023 |
1.4.50 | 4,362 | 3/15/2023 |
1.4.49 | 15,306 | 1/27/2023 |
1.4.49-beta1 | 607 | 1/11/2023 |
1.4.48 | 28,194 | 1/5/2023 |
1.4.47 | 9,788 | 12/9/2022 |
1.4.46 | 25,960 | 11/15/2022 |
1.4.45 | 22,790 | 10/19/2022 |
1.4.44 | 2,608 | 10/17/2022 |
1.4.43 | 11,147 | 9/27/2022 |
1.4.42 | 2,272 | 9/23/2022 |
1.4.41 | 135,016 | 8/31/2022 |
1.4.40 | 13,626 | 7/22/2022 |
1.4.39 | 86,023 | 6/1/2022 |
1.4.38 | 42,800 | 5/6/2022 |
1.4.37 | 10,992 | 4/14/2022 |
1.4.36 | 9,695 | 4/5/2022 |
1.4.35 | 21,691 | 3/18/2022 |
1.4.34 | 7,433 | 3/7/2022 |
1.4.33 | 7,925 | 2/14/2022 |
1.4.32 | 13,251 | 1/18/2022 |
1.4.31 | 29,133 | 12/21/2021 |
1.4.30 | 1,637 | 12/20/2021 |
1.4.29 | 2,037 | 12/13/2021 |
1.4.28 | 50,661 | 11/10/2021 |
1.4.27 | 44,381 | 10/11/2021 |
1.4.26 | 4,607 | 9/28/2021 |
1.4.25 | 5,683 | 9/8/2021 |
1.4.24 | 8,512 | 8/17/2021 |
1.4.23 | 3,528 | 8/10/2021 |
1.4.22 | 5,904 | 8/5/2021 |
1.4.21 | 19,007 | 6/16/2021 |
1.4.21-beta1 | 881 | 6/4/2021 |
1.4.20 | 14,415 | 5/12/2021 |
1.4.19 | 13,836 | 4/28/2021 |
1.4.18 | 10,626 | 3/23/2021 |
1.4.17 | 6,102 | 3/10/2021 |
1.4.16 | 29,156 | 1/22/2021 |
1.4.15 | 2,373 | 1/20/2021 |
1.4.14 | 10,214 | 12/30/2020 |
1.4.13 | 3,105 | 12/16/2020 |
1.4.12 | 18,927 | 11/16/2020 |
1.4.11 | 12,380 | 11/5/2020 |
1.4.10 | 18,680 | 8/20/2020 |
1.4.9 | 15,051 | 7/21/2020 |
1.4.8 | 46,976 | 6/17/2020 |
1.4.7 | 5,621 | 5/27/2020 |
1.4.6 | 6,625 | 5/12/2020 |
1.4.5 | 4,312 | 4/29/2020 |
1.4.4 | 8,351 | 3/31/2020 |
1.4.3 | 4,953 | 3/18/2020 |
1.4.2 | 4,197 | 3/13/2020 |
1.4.1 | 8,986 | 3/11/2020 |
1.4.1-rc3 | 1,013 | 3/10/2020 |
1.4.1-rc2 | 830 | 3/10/2020 |
1.4.1-rc1 | 1,251 | 2/28/2020 |
1.4.0-beta4 | 2,443 | 1/28/2020 |
1.4.0-beta3 | 7,020 | 10/30/2019 |
1.4.0-beta2 | 3,807 | 9/23/2019 |
1.4.0-beta1 | 2,596 | 7/19/2019 |
1.4.0-beta | 1,054 | 10/30/2019 |
1.3.19-beta | 75 | 5/2/2024 |
1.3.18-beta | 10,655 | 3/9/2020 |
1.3.17-beta | 6,759 | 12/20/2019 |
1.3.16-beta | 2,936 | 11/14/2019 |
1.3.15-beta | 4,585 | 9/23/2019 |
1.3.14-beta | 7,305 | 7/30/2019 |
1.3.13-beta | 19,431 | 4/30/2019 |
1.3.12-beta | 12,766 | 3/14/2019 |
1.3.11-beta | 10,590 | 12/18/2018 |
1.3.10-beta | 83,553 | 11/2/2018 |
1.3.9-beta68 | 40,423 | 8/23/2018 |
1.3.9-beta67 | 1,214 | 8/23/2018 |
1.3.9-beta | 1,154 | 8/30/2018 |
1.3.8-beta66 | 8,807 | 6/5/2018 |
1.3.8-beta65 | 1,343 | 6/5/2018 |
1.3.7-beta64 | 1,950 | 5/15/2018 |
1.3.7-beta63 | 1,424 | 5/15/2018 |
1.3.6-beta62 | 3,397 | 4/17/2018 |
1.3.6-beta61 | 1,309 | 4/17/2018 |
1.3.5-beta60 | 8,835 | 2/22/2018 |
1.3.5-beta59 | 1,346 | 2/22/2018 |
1.3.4-beta58 | 1,574 | 2/1/2018 |
1.3.4-beta57 | 1,394 | 2/1/2018 |
1.3.3-beta56 | 1,515 | 1/19/2018 |
1.3.3-beta55 | 1,423 | 1/19/2018 |
1.3.2-beta54 | 20,399 | 10/21/2017 |
1.3.2-beta53 | 1,353 | 10/21/2017 |
1.3.2-beta | 2,205 | 10/24/2017 |
1.3.1-beta52 | 2,122 | 9/5/2017 |
1.3.1-beta51 | 1,326 | 9/5/2017 |
1.3.0-beta50 | 1,409 | 8/18/2017 |
1.3.0-beta48 | 1,295 | 8/17/2017 |
1.3.0-beta47 | 1,358 | 8/17/2017 |
1.3.0-beta46 | 1,348 | 8/11/2017 |
1.2.3.43-beta | 2,916 | 7/10/2017 |
1.2.3.41-beta | 1,353 | 7/10/2017 |
1.2.2.40-beta | 1,402 | 6/28/2017 |
1.2.2.39-beta | 1,314 | 6/28/2017 |
1.2.1.38-beta | 1,353 | 6/23/2017 |
1.2.1.37-beta | 1,390 | 6/23/2017 |
1.2.0.36-beta | 10,829 | 4/13/2017 |
1.2.0.35-beta | 1,575 | 4/13/2017 |
1.2.0.34-beta | 1,298 | 4/12/2017 |
1.2.0.33-beta | 1,940 | 4/12/2017 |
1.1.3.32-beta | 2,646 | 1/23/2017 |
1.1.3.31-beta | 1,545 | 1/23/2017 |
1.1.2.30-beta | 3,041 | 9/22/2016 |
1.1.2.29-beta | 1,684 | 9/22/2016 |
1.1.1.28-beta | 1,465 | 7/16/2016 |
1.1.1.27-beta | 1,420 | 7/16/2016 |
1.1.0.26-beta | 1,473 | 7/7/2016 |
1.0.8.25-beta | 3,169 | 4/26/2016 |
1.0.8.24-beta | 1,444 | 4/26/2016 |
1.0.7.18-beta | 1,461 | 4/6/2016 |
Maintenance Release for Akka.NET 1.4**
Akka.NET v1.4.21 is a significant release that includes major performance improvements, bug fixes, and a major update to the [Akka.DependencyInjection NuGet package](https://getakka.net/articles/actors/dependency-injection.html).
Performance Improvements**
Akka.NET v1.4.21 includes some major performance fixes and improvements:
[`Ask` is now ~10% faster](https://github.com/akkadotnet/akka.net/pull/5051)
[`MurmurHash` is 33% faster and allocates 0 memory](https://github.com/akkadotnet/akka.net/pull/5028) - used _heavily_ in DData, Cluster Sharding, and Consistent Hash Routers
`ActorPath.Parse` went from 1672 ns/op to 527 ns/op - a 68% improvement in throughput and a 50% reduction in memory. See [#5039](https://github.com/akkadotnet/akka.net/pull/5039) and [#5068](https://github.com/akkadotnet/akka.net/pull/5068).
[Akka.Remote: remove `ActorPath.ToString` call from `ResolveActorRefWithLocalAddress`](https://github.com/akkadotnet/akka.net/pull/5034)
Important**: [Revert `ThreadPool.SetMinThreads(0,0)`](https://github.com/akkadotnet/akka.net/pull/5059) - based on the input from users on "[Akka.NET v1.4.19: ChannelExecutor performance data](https://github.com/akkadotnet/akka.net/discussions/4983)"
Our observed performance numbers for Akka.Remote show a significant increase in performance for v1.4.21 over v1.4.20:
Before*
```
PS> dotnet run -c Release --framework netcoreapp3.1
OSVersion: Microsoft Windows NT 6.2.9200.0
ProcessorCount: 16
ClockSpeed: 0 MHZ
Actor Count: 32
Messages sent/received per client: 200000 (2e5)
Is Server GC: True
Thread count: 109
Num clients, Total [msg], Msgs/sec, Total [ms]
1, 200000, 113379, 1764.56
5, 1000000, 186429, 5364.05
10, 2000000, 185340, 10791.11
15, 3000000, 183218, 16374.06
20, 4000000, 179824, 22244.63
25, 5000000, 182716, 27365.89
30, 6000000, 182039, 32960.61
```
After*
```
PS> dotnet run -c Release --framework netcoreapp3.1
OSVersion: Microsoft Windows NT 6.2.9200.0
ProcessorCount: 16
ClockSpeed: 0 MHZ
Actor Count: 32
Messages sent/received per client: 200000 (2e5)
Is Server GC: True
Thread count: 111
Num clients, Total [msg], Msgs/sec, Total [ms]
1, 200000, 109770, 1822.14
5, 1000000, 192902, 5184.79
10, 2000000, 191663, 10435.53
15, 3000000, 191339, 15679.11
20, 4000000, 192725, 20755.78
25, 5000000, 189754, 26350.14
30, 6000000, 189772, 31617.20
```
> N.B. these after numbers don't benefit from the performance benefits we observed in v1.4.20 when we invoked `ThreadPool.SetMinThreads(0,0)`, which makes them even more impressive.
Akka.DependencyInjection Updates**
We had one major issue we implemented in v1.4.21 for Akka.DependencyInjection: [Abstraction of `ServiceProvider`, Improving Akka.DependencyInjection ](https://github.com/akkadotnet/akka.net/pull/4814)
What this change did was:
Deprecate the `Akka.DependencyInjection.ServiceProvider` class in favor of the `Akka.DependencyInjection.DependencyResolver` class - to avoid namespace collision with Microsoft.Extensions.DependencyInjection.ServiceProvider;
Deprecates the `Akka.DependencyInjection.ServiceProviderSetup` class in favor of the `Akka.DependencyInjection.DependencyResolverSetup` class for consistency reasons;
`Akka.DependencyInjection.DependencyResolver` now takes an input of type [`IDependencyResolver`](https://getakka.net/api/Akka.DependencyInjection.IDependencyResolver.html), which allows users to abstract away the `IServiceProvider` and mock / replace it during unit testing; and
Added some non-generic `Props` methods for dynamically spawning actors via DI.
All of these changes are backwards-compatible with v1.4.20 and earlier - and the deprecation warnings will appear in your code when you upgrade. If you run into any [issues upgrading to Akka.DependencyInjection v1.4.21 please reply on this thread](https://github.com/akkadotnet/akka.net/discussions/5070)!
Other Changes and Fixes**
[Akka.Streams: A couple of fixes affecting the `FileSubscriber`](https://github.com/akkadotnet/akka.net/pull/5035)
[Akka.DistributedData: memory leak when recovering events from LMDB data store](https://github.com/akkadotnet/akka.net/issues/5022)
[Akka.DistributedData: port `VectorClock` performance optimizations to `VersionVector` and similar types](https://github.com/akkadotnet/akka.net/issues/4956)
To see the [full set of fixes in Akka.NET v1.4.21, please see the milestone on Github](https://github.com/akkadotnet/akka.net/milestone/51).
| COMMITS | LOC+ | LOC- | AUTHOR |
| --- | --- | --- | --- |
| 12 | 999 | 160 | Aaron Stannard |
| 10 | 410 | 299 | Gregorius Soedharmo |
| 4 | 853 | 520 | Ismael Hamed |
| 4 | 5 | 5 | dependabot[bot] |
| 1 | 6 | 2 | Brah McDude |
| 1 | 428 | 67 | Sam Ember |
| 1 | 1 | 1 | Martin |