Akka.Cluster.Sharding 1.4.21-beta1

Sharded actors with managed lifecycle for Akka.NET cluster

No packages depend on Akka.Cluster.Sharding.

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 |

.NET Standard 2.0

Version Downloads Last updated
1.5.42 15 05/23/2025
1.5.41 13 05/19/2025
1.5.40 29 03/29/2025
1.5.39 29 03/16/2025
1.5.38 24 02/17/2025
1.5.37 26 01/27/2025
1.5.36 24 01/26/2025
1.5.35 23 01/19/2025
1.5.34 22 01/14/2025
1.5.33 22 12/29/2024
1.5.32 25 12/10/2024
1.5.31 28 11/13/2024
1.5.30 29 10/06/2024
1.5.29 28 10/06/2024
1.5.28 31 09/20/2024
1.5.28-beta1 35 08/24/2024
1.5.27.1 27 07/26/2024
1.5.27 34 07/26/2024
1.5.27-beta2 35 07/04/2024
1.5.27-beta1 34 07/04/2024
1.5.26 35 06/29/2024
1.5.25 36 06/23/2024
1.5.24 36 06/08/2024
1.5.23 33 06/06/2024
1.5.22 36 06/05/2024
1.5.21 44 06/02/2024
1.5.20 55 05/04/2024
1.5.19 39 04/15/2024
1.5.18 42 03/19/2024
1.5.17.1 42 03/19/2024
1.5.17 38 03/19/2024
1.5.16 33 02/15/2024
1.5.15 35 01/23/2024
1.5.14 40 01/10/2024
1.5.13 59 10/02/2023
1.5.13-beta1 38 02/14/2024
1.5.12 39 02/15/2024
1.5.11 36 08/31/2023
1.5.10 35 01/28/2024
1.5.9 38 01/08/2024
1.5.8 40 01/08/2024
1.5.7 42 06/13/2023
1.5.6 36 02/15/2024
1.5.5 33 02/15/2024
1.5.4 36 06/13/2023
1.5.3 42 06/14/2023
1.5.2 39 06/14/2023
1.5.1 40 06/13/2023
1.5.0 55 06/13/2023
1.5.0-beta6 29 08/25/2023
1.5.0-beta5 33 08/30/2023
1.5.0-beta4 37 08/27/2023
1.5.0-beta3 37 08/25/2023
1.5.0-beta2 33 09/01/2023
1.5.0-beta1 31 08/24/2023
1.5.0-alpha4 39 08/28/2023
1.5.0-alpha3 36 02/15/2024
1.5.0-alpha2 40 08/27/2023
1.5.0-alpha1 39 08/30/2023
1.4.51 39 08/27/2023
1.4.50 38 08/30/2023
1.4.49 41 05/07/2023
1.4.49-beta1 39 05/18/2023
1.4.48 39 08/29/2023
1.4.47 40 08/27/2023
1.4.46 42 09/01/2023
1.4.45 73 04/05/2023
1.4.44 35 08/28/2023
1.4.43 60 04/29/2023
1.4.42 48 03/22/2023
1.4.41 41 08/28/2023
1.4.40 81 04/23/2023
1.4.39 36 08/28/2023
1.4.38 75 07/25/2023
1.4.37 39 08/25/2023
1.4.36 36 08/31/2023
1.4.35 37 08/31/2023
1.4.34 40 08/30/2023
1.4.33 39 08/24/2023
1.4.32 37 02/15/2024
1.4.31 71 07/21/2022
1.4.30 38 08/30/2023
1.4.29 36 08/29/2023
1.4.28 38 08/31/2023
1.4.27 36 08/30/2023
1.4.26 40 08/31/2023
1.4.25 34 08/26/2023
1.4.24 41 08/31/2023
1.4.23 39 08/29/2023
1.4.22 39 08/30/2023
1.4.21 37 08/30/2023
1.4.21-beta1 38 08/29/2023
1.4.20 35 08/30/2023
1.4.19 36 08/29/2023
1.4.18 39 08/31/2023
1.4.17 41 08/30/2023
1.4.16 39 08/29/2023
1.4.15 38 08/30/2023
1.4.14 39 08/28/2023
1.4.13 39 08/30/2023
1.4.12 40 08/25/2023
1.4.11 37 08/26/2023
1.4.10 40 08/29/2023
1.4.9 37 06/13/2023
1.4.8 38 06/14/2023
1.4.7 49 10/14/2023
1.4.6 39 06/14/2023
1.4.5 37 06/14/2023
1.4.4 39 06/14/2023
1.4.3 43 06/14/2023
1.4.2 44 06/14/2023
1.4.1 59 05/23/2023
1.4.1-rc3 35 10/18/2023
1.4.1-rc2 39 02/15/2024
1.4.1-rc1 38 02/15/2024
1.4.0-beta4 33 08/30/2023
1.4.0-beta3 32 09/01/2023
1.4.0-beta2 33 08/31/2023
1.4.0-beta1 33 08/27/2023
1.4.0-beta 45 06/14/2023
1.3.19-beta 50 05/04/2024
1.3.18-beta 41 08/30/2023
1.3.17-beta 41 08/30/2023
1.3.16-beta 42 08/28/2023
1.3.15-beta 46 03/22/2023
1.3.14-beta 44 04/09/2024
1.3.13-beta 36 08/24/2023
1.3.12-beta 39 08/28/2023
1.3.11-beta 41 08/28/2023
1.3.10-beta 41 08/26/2023
1.3.9-beta68 41 08/25/2023
1.3.9-beta67 40 08/31/2023
1.3.9-beta 39 06/12/2023
1.3.8-beta66 38 08/27/2023
1.3.8-beta65 42 08/28/2023
1.3.7-beta64 43 08/29/2023
1.3.7-beta63 41 02/15/2024
1.3.6-beta62 45 08/31/2023
1.3.6-beta61 40 08/30/2023
1.3.5-beta60 43 08/26/2023
1.3.5-beta59 43 08/29/2023
1.3.4-beta58 40 02/15/2024
1.3.4-beta57 45 08/31/2023
1.3.3-beta56 46 08/28/2023
1.3.3-beta55 44 08/31/2023
1.3.2-beta54 74 04/23/2023
1.3.2-beta53 45 08/30/2023
1.3.2-beta 38 06/14/2023
1.3.1-beta52 43 01/28/2024
1.3.1-beta51 44 08/31/2023
1.3.0-beta50 42 08/30/2023
1.3.0-beta48 67 04/28/2023
1.3.0-beta47 66 02/17/2023
1.3.0-beta46 42 08/30/2023
1.2.3.43-beta 38 09/01/2023
1.2.3.41-beta 43 08/25/2023
1.2.2.40-beta 34 08/31/2023
1.2.2.39-beta 32 08/29/2023
1.2.1.38-beta 38 08/30/2023
1.2.1.37-beta 39 08/30/2023
1.2.0.36-beta 35 04/09/2024
1.2.0.35-beta 34 04/09/2024
1.2.0.34-beta 37 09/22/2023
1.2.0.33-beta 37 12/28/2023
1.1.3.32-beta 38 04/09/2024
1.1.3.31-beta 38 02/20/2024
1.1.2.30-beta 37 04/09/2024
1.1.2.29-beta 36 04/09/2024
1.1.1.28-beta 35 04/09/2024
1.1.1.27-beta 37 04/09/2024
1.1.0.26-beta 36 09/22/2023
1.0.8.25-beta 40 08/30/2023
1.0.8.24-beta 34 04/09/2024
1.0.7.18-beta 38 08/26/2023
1.0.6 45 04/09/2024