Comments (4)
https://github.com/dhgate-group/protostuff
my company fork path.
To solve the compatibility issues caused by tags without sacrificing performance, I decided to implement a solution that uses the tag if it exists, but calculates a value if it doesn't. The calculation method I used is a pseudo-hashcode, which has a small chance of collision but is generally reliable and efficient.
from protostuff.
Feel free to submit a PR. There are many forks indeed and many of them are deployed in production. Contributors are definitely welcome.
from protostuff.
Then I can just pull the branch directly, right?
If the application is merged into the trunk, what tests do you need to go through?
Because our changes are compatible with the original version (all tagged), but the performance has hardly changed.
----------------------------Modify ideas--------------------------------------
Convert the attribute name to an int instead of the tag value.
As long as the it value of the conversion can be guaranteed to be small, it will not destroy the original speed.
---------------------------------pressure test----------------------------------
8 thread pressure test
Object size: 73k, and the structure and hierarchy are complex.
Scenario: spring boot accepts http requests and only serializes or deserializes them
---------------Original copy-----------------
---------------The new version is compatible with the old version mode-----------------
----------------new version new model-----------------
from protostuff.
Not everyone could understand the Chinese language in the pictures, perhaps you could use English charts to display your data.
from protostuff.
Related Issues (20)
- Protostuff Maven plugin does not support Map in Proto Version 2
- JsonIOUtil.toByteArray stack overflow when there is reference loop in message HOT 1
- Parent class add new variable,Deserialization error HOT 2
- Cause of wrapped exceptions does not get serialized
- Map conversion result is null
- Support for `readObject` and `writeObject` methods on Serializable classes
- jdk8 and jdk17 serialize String result is different
- How to serialize java class generated by protoc.exe using protostuff? HOT 2
- SO HARD TO READ CODE!!! HOT 1
- T_T
- Is it allowed to rename fields in protostuff? HOT 3
- Protostuff cannot be converted into Protobuf bytes for Map type fields
- what's the status of this project ? HOT 1
- io.protostuff.runtime throws InaccessibleObjectException with jdk17 HOT 1
- ProtobufIOUtil.toByteArray序列化出byte[]数据,使用Protobuf中的parseFrom反序化Map数据错误。
- ProtobufIOUtil.toByteArray serializes byte[] data, and uses parseFrom in Protobuf to deserialize Map data error.
- Can't deserialize map of maps
- How to deserialize protobuf to json?
- Can protostuff support jakarta ?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from protostuff.