Open funky-eyes opened 2 months ago
[!WARNING]
Rate limit exceeded
@funky-eyes has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 6 minutes and 40 seconds before requesting another review.
How to resolve this issue?
After the wait time has elapsed, a review can be triggered using the `@coderabbitai review` command as a PR comment. Alternatively, push new commits to this PR. We recommend that you space out your commits to avoid hitting the rate limit.How do rate limits work?
CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our [FAQ](https://coderabbit.ai/docs/faq) for further information.Commits
Files that changed from the base of the PR and between 7adb1f19bd0bd091d1ec06b4f2114aaec7dc3154 and ff900b96ad0f23869ace1b950fcd5303102e32b5.
The recent changes integrate the Apache Fury serialization framework into the project, enhancing serialization capabilities with the addition of the FurySerializer
. Updates include modifications to the SerializerManager
to support this new serializer, the introduction of unit tests to validate its functionality, and the expansion of the Java version matrix in the CI workflow to include Java 17, ensuring compatibility with newer features.
File Path | Change Summary |
---|---|
pom.xml |
Added property fury.version set to 0.6.0 and new dependency for fury-core with scope provided . |
src/main/java/com/alipay/remoting/serialization/SerializerManager.java |
Introduced FurySerializer with a new constant Fury for extended serialization support. |
src/test/java/com/alipay/remoting/serialization/fury/FurySerializerTest.java |
Added unit tests for FurySerializer to validate serialization under concurrent conditions and error handling. |
.github/workflows/maven.yml |
Updated Java version matrix to include Java 17. |
src/test/java/com/alipay/remoting/rpc/protocol/RpcCommandHandlerTest.java |
Improved assertions in testHandleCommand and preHandleRequest methods for better clarity. |
sequenceDiagram
participant Client
participant SerializerManager
participant FurySerializer
Client->>SerializerManager: Request Serializer (Fury)
SerializerManager->>FurySerializer: Instantiate FurySerializer
FurySerializer-->>SerializerManager: Return FurySerializer Instance
SerializerManager-->>Client: Return FurySerializer
Client->>FurySerializer: Serialize Object
FurySerializer-->>Client: Return Serialized Data
sequenceDiagram
participant Client
participant FurySerializer
Client->>FurySerializer: Serialize Invalid Object
FurySerializer-->>Client: Throw CodecException
🐰 In fields of code, a new friend hops,
With Fury's might, our data never stops.
Threads dance in joy, asserialize
sings,
Bugs flee in fright, while our rabbit heart springs.
Let's cheer for the changes, so bright and so bold,
In the world of serialization, new stories unfold! 🌟
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
Great, I'll spend some time to check this PR.
个人认为apache fury已经进入apache孵化器,未来的迭代,稳定性也会更高,性能根据其测试报告非常优秀,并且目前sofa-bolt自带的序列化器只有hessian,应该扩充一些序列化器避免用户自行实现. 目前pr中遗留2个问题需要跟社区讨论下:
Summary by CodeRabbit
New Features
FurySerializer
, enhancing serialization capabilities within the application.Bug Fixes
Tests
FurySerializer
, validating successful and concurrent serialization scenarios.Chores