Akka.net v1.4.25 Release Notes
Release Date: 2021-09-08 // over 2 years ago-
๐ Maintenance Release for Akka.NET 1.4 Akka.NET v1.4.25 includes some significant performance improvements for Akka.Remote and a number of important bug fixes and improvements.
๐ Bug Fixes and Improvements
- Akka.IO.Tcp: connecting to an unreachable DnsEndpoint never times out
- Akka.Actor: need to enforce
stdout-loglevel = off
all the way through ActorSystem lifecycle - Akka.Actor:
Ask
should push unhandled answers into deadletter - Akka.Routing: Make Router.Route` virtual
- Akka.Actor: Improve performance on
IActorRef.Child
API - signficantly improves performance of many Akka.NET functions, but includes a public API change onIActorRef
that is source compatible but not necessarily binary-compatible.IActorRef GetChild(System.Collections.Generic.IEnumerable<string> name)
is nowIActorRef GetChild(System.Collections.Generic.IReadOnlyList<string> name)
. This API is almost never called directly by user code (it's almost always called via the internals of theActorSystem
when resolvingActorSelection
s or remote messages) so this change should be safe. - Akka.Actor:
IsNobody
throws NRE - ๐ Akka.Cluster.Tools: singleton fix cleanup of overdue _removed members
- Akka.DistributedData: ddata exclude
Exiting
members in Read/WriteMajorityPlus
๐ Performance Improvements Using our standard
RemotePingPong
benchmark, the difference between v1.4.24 and v1.4.24 is significant:v1.4.24
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, 96994, 2062.08 5, 1000000, 194818, 5133.93 10, 2000000, 198966, 10052.93 15, 3000000, 199455, 15041.56 20, 4000000, 198177, 20184.53 25, 5000000, 197613, 25302.80 30, 6000000, 197349, 30403.82
v1.4.25
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, 130634, 1531.54 5, 1000000, 246975, 4049.20 10, 2000000, 244499, 8180.16 15, 3000000, 244978, 12246.39 20, 4000000, 245159, 16316.37 25, 5000000, 243333, 20548.09 30, 6000000, 241644, 24830.55
๐ This represents a 24% overall throughput improvement in Akka.Remote across the board. We have additional PRs staged that should get aggregate performance improvements above 40% for Akka.Remote over v1.4.24 but they didn't make it into the Akka.NET v1.4.25 release.
๐ You can see the full set of changes introduced in Akka.NET v1.4.25 here
COMMITS LOC+ LOC- AUTHOR 32 1301 400 Aaron Stannard 4 358 184 Andreas Dirnberger 3 414 149 Gregorius Soedharmo 3 3 3 dependabot[bot] 2 43 10 zbynek001 1 14 13 tometchy 1 139 3 carlcamilleri