apache / apache/jmeter

I suggest using Externalizable instead of Serializable in RMI distribution test because implements Serializable took too much network bandwidth during high throughput loading.

Open
#4,781 0 comments 0 reactions 0 assignees View on GitHub
enhancement os: All P2
Dominant language
Java
Stars
9.5k
Forks
2.3k
Avg merge
1d 22h
Merged PRs (30d)
5

Description

**Liu XP** ([Bug 62374](https://bz.apache.org/bugzilla//show_bug.cgi?id=62374&redirect=false)):
I have captured network package by Wireshark and found there are too many package path when sending a little StatisticalSampleResult data. It used up network bandwidth during high load performance testing.

There is an article told that serialization is very easy to send more data than is required.To solve the performance problems associated with making a class Serializable, the serialization mechanism allows you to declare that a class is Externalizableinstead.

Ref: http://archive.oreilly.com/pub/a/onjava/excerpt/JavaRMI_10/index.html?page=5

OS: All

Contributor guide

Open the contributing guide

Research direction

Locate the RMI distribution test and the StatisticalSampleResult serialization path mentioned in the report. First compare where Serializable is currently used with the Externalizable proposal, then reproduce the high-throughput loading case and inspect network traffic. Done means the distribution test still works while unnecessary serialized data and bandwidth use are reduced.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
distributed-systems, performance, testing
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.