dotnet / dotnet/aspnetcore

Investigate performance improvement in java MessagePack deserializer

Open
#25,089 1 comment 0 reactions 0 assignees View on GitHub
affected-very-few area-signalr enhancement severity-minor
Dominant language
C#
Stars
38.4k
Forks
10.9k
Avg merge
2d 6h
Merged PRs (30d)
290

Description

In the below block, we effectively deserialize maps/arrays twice - first to find out how long they are, second to feed that number of bytes into `ObjectMapper.readValue`. We should investigate if its possible to pass the bytes in from their starting offset, and to find out after the fact how many bytes were read so we can advance the underlying buffer. Perhaps with a custom Reader that keeps track of how many bytes it has read?

https://github.com/dotnet/aspnetcore/blob/8522ba8e55a6fc4ebfcea57fe159905b080bb6a6/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/MessagePackHubProtocol.java#L568-L610

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.