I suggest using Externalizable instead of Serializable in RMI distribution test because implements Serializable took too much network bandwidth during high throughput loading.
- 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
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