dotnet / dotnet/orleans

Performance optimization for message forwarding

Open
#1,744 1 comment 0 reactions 0 assignees View on GitHub
area-performance enhancement Status: In PR
Dominant language
C#
Stars
10.9k
Forks
2.1k
Avg merge
13h 56m
Merged PRs (30d)
351

Description

Scenario: Client is communicating with Silo B via Silo A as gateway.

When Silo B is sending a reply message to the client the current messaging implementation will trigger deserialization of the whole message body in Silo A prior to forwarding. For forwarding the message body is then serialized again. Current implementation does not perform lazy deserialization of the message body by default since this requires additional memory to be allocated. From a cost perspective it is assumed that requests between silos are much more frequent than forwarding messages to a client.

For future performance improvements this scenario could be considered for special treatment.

Contributor guide

Open the contributing guide

Research direction

The issue does not name files, tests, or entry points. Start by tracing the messaging implementation for replies forwarded from Silo B through gateway Silo A, then assess lazy deserialization and reserialization costs; done means an agreed, measured optimization for this forwarding path.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
distributed-systems, performance
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.