zqr10159 opened a new pull request, #3861: URL: https://github.com/apache/hertzbeat/pull/3861
**Description** This PR introduces a major refactoring of the communication layer by fully adopting **Apache Fory** and switching the message payload type to `byte[]`. **Key Changes:** 1. **Serialization Upgrade**: Replaced the previous Protobuf/String-based logic with **Apache Fory**, significantly reducing CPU usage and memory footprint during serialization/deserialization. 2. **Protocol Optimization**: Changed the `msg` field in `ClusterMessage` from `String` to `byte[]`. This eliminates unnecessary encoding/decoding steps (like UTF-8 conversions) and ensures data integrity for binary content. 3. **Go-Collector Adaptation**: The move to a strict binary protocol aligns with the requirements for the upcoming **Go version Collector**, ensuring seamless cross-language serialization compatibility. **⚠️ BREAKING CHANGE ⚠️** **Important Notice for Users and Developers:** This change fundamentally alters the communication protocol to **reduce serialization costs** and **adapt to the Go-collector**. * **Incompatibility**: The Server (Manager) and Collector in this version are **NOT compatible** with any previous versions. * **Action Required**: You must upgrade **both** the HertzBeat Manager and the Collector to this version simultaneously. An old Collector will fail to communicate with a new Manager, and vice versa. **Verification** 1. Start the Manager and Collector built from this branch. 2. Verify that the Collector successfully goes online. 3. Confirm that monitoring data is collected and transmitted efficiently without errors. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
