Skip to content

Need to validate that its fine to have Akka.Remote use system dispatcher #4589

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
Aaronontheweb opened this issue Oct 26, 2020 · 2 comments
Closed
Assignees
Milestone

Comments

@Aaronontheweb
Copy link
Member

Version: 1.4.11

Need to make sure that Akka.Remote is ok to share the /system dispatcher along with Akka.Cluster, Akka.Persistence, and so forth per the changes introduced in #4511 as part of 1.4.11 (not yet live.)

This shouldn't take long to verify - just want to do it so we don't accidentally introduce any new performance regressions with the release of Akka.NET v1.4.11.

@Aaronontheweb
Copy link
Member Author

Based on a glance at the JVM Akka sources - Akka.Remote system actors still run on their own dedicated dispatcher. Makes sense given that they are at the heart of what is likely the most performance-critical area in Akka.NET.

However, #4511 never actually touched the Akka.Remote dispatcher. It appears as though Akka.Remote still runs on its own set of mutually exclusive threads.

@Aaronontheweb
Copy link
Member Author

For context, this is what the JVM currently has:

https://github.com/akka/akka/blob/dab8f3b642bdb1f052cfee4dc20755f4c3e4ae12/akka-remote/src/main/resources/reference.conf#L253-L265

This is what we have:

default-remote-dispatcher {
type = ForkJoinDispatcher
executor = fork-join-executor
dedicated-thread-pool {
# Fixed number of threads to have in this threadpool
thread-count = 4
}
}

A problem that we do appear to have with Akka.Remote: fixed thread count. We need a scalar based around the number of vCPU rather than a hard-coded value. I'll address that in a separate PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant