For a high performance serialization library for Java, the strongest matches are google/protobuf (Protocol Buffers is a high-performance, schema-driven binary serialization framework), esotericsoftware/kryo (Kryo is a high-performance Java serialization library that provides) and alipay/fury (Fury is a high-performance, multi-language binary serialization framework that). protocolbuffers/protobuf and apache/fory round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Curamos repositorios de código abierto en GitHub que coinciden con “best java serialization libraries”. Los resultados están clasificados por relevancia según tu búsqueda; usa los filtros de abajo para acotar o refina con IA.
Protocol Buffers is a binary serialization framework used to encode structured information into compact payloads to reduce network bandwidth and storage. It functions as a cross-language data interchange standard that enables different platforms and languages to exchange structured data using a shared schema. The project includes an interface definition language compiler that transforms schema definitions into type-safe source code for multiple target programming languages. This mechanism decouples data structures from specific language memory layouts and ensures consistent data handling acro
Protocol Buffers is a high-performance, schema-driven binary serialization framework that provides robust cross-language support and efficient data evolution, making it a standard choice for Java developers needing fast, reflection-free serialization.
Kryo is a Java binary serialization framework and object cloning library used to convert Java objects into a compact binary format and restore them from bytes. It provides a system for creating deep or shallow copies of complex object graphs without requiring binary conversion. The project utilizes variable-length integer encoding and integer-ID class registration to reduce the size of serialized data. It handles complex object graphs through circular reference tracking to prevent data duplication and infinite loops. To maintain long-term data viability, it includes schema evolution managemen
Kryo is a high-performance Java serialization library that provides compact binary formatting, schema evolution, and advanced object graph handling, making it a flagship solution for your requirements.
Fury is a multi-language binary serialization framework designed for encoding domain objects and complex graphs to facilitate cross-language data exchange. It includes an interface definition language compiler that translates schema definitions into idiomatic native types and serialization boilerplate across multiple languages. The project distinguishes itself through a zero-copy binary reader that allows specific fields to be accessed without deserializing the entire object, as well as an object graph serializer that preserves circular references and referential integrity. It also features a
Fury is a high-performance, multi-language binary serialization framework that supports schema evolution, zero-copy reads, and reflection-free serialization, making it a comprehensive solution for Java object encoding.
Protocol Buffers is a language-neutral, platform-agnostic mechanism for serializing structured data. It provides a schema-driven toolchain that compiles declarative data definitions into type-safe source code, enabling consistent communication and strongly typed API contracts across services written in different programming languages. The project distinguishes itself through a highly efficient binary wire format that utilizes tag-based encoding and variable-width integer compression to minimize payload size and processing overhead. It supports robust evolutionary schema management, allowing d
Protocol Buffers is a high-performance, schema-driven serialization framework that provides the binary format, cross-language support, and schema evolution capabilities required for efficient Java data handling.
Fory is a cross-language serialization framework and binary data serializer designed to convert complex object graphs into a compact binary format for high-performance data exchange. It includes an IDL-based schema compiler to transform interface definition language files into type-safe native data models and a schema evolution manager to maintain forward and backward compatibility. The project features a zero-copy data access layer that allows reading specific fields from binary rows without deserializing the entire object. It supports dual-mode serialization, enabling a toggle between a por
Fory is a high-performance, cross-language binary serialization framework that provides schema evolution, zero-copy data access, and reflection-free capabilities, making it a comprehensive solution for Java object serialization.
MessagePack is a binary object serialization library and a cross-platform data exchange format. It serves as a binary alternative to JSON, converting structured data into a space-efficient binary representation for network transmission and storage. The system provides a standardized format for swapping complex data types across different programming languages and architectures. It allows for the definition of custom data type encoding by pairing application-specific information with specialized serialization markers. The library handles the encoding and decoding of diverse data types, includ
MessagePack is a high-performance binary serialization library that provides cross-language support and efficient data exchange, making it a direct fit for your requirements.
Thrift is a cross-language remote procedure call framework and data serialization protocol. It provides an interface definition language to specify data types and service interfaces in a neutral format, enabling the automated generation of client and server code across multiple programming languages. The project functions as a polyglot service communicator using a layered software stack to ensure interoperable communication. It focuses on implementing cross-language remote procedure calls and transforming complex data structures into standardized formats for efficient network transport. The
Thrift provides a high-performance, binary-based serialization protocol with robust schema evolution and cross-language support, making it a standard choice for Java developers needing efficient data serialization.
Apache Avro is a data serialization system.
Apache Avro is a high-performance data serialization system that provides binary format support, schema evolution, and cross-language compatibility, making it a flagship solution for Java serialization needs.
FlatBuffers is a cross-platform serialization library designed for performance-critical applications that require efficient, zero-copy data access. By organizing data in a structured binary format, it allows applications to read and write complex data structures directly from memory-mapped buffers without the need for intermediate parsing or temporary object allocation. The project distinguishes itself through a schema-driven approach that balances high-performance access with long-term data evolution. It utilizes a unique memory layout featuring relative offsets and inline fixed-size structu
FlatBuffers is a high-performance, schema-driven serialization library that supports Java and provides the binary format, schema evolution, and zero-copy access required for performance-critical applications.
Moshi is a JSON serialization library and parser for Kotlin and Java. It functions as a reflectionless JSON encoder that converts typed objects to JSON strings and parses JSON data back into language objects. The library distinguishes itself through compile-time adapter generation, which removes the performance overhead associated with runtime reflection. It also provides a polymorphic JSON mapper that uses type identifiers to resolve and instantiate specific subclasses of a common base type. The framework supports custom adapter definitions for specialized type conversion, including nullabi
Moshi is a high-performance, reflection-free serialization library for Java and Kotlin that excels at JSON processing, though it focuses on text-based JSON rather than the binary formats often required for high-performance schema-based serialization.
Gson is a Java library designed for the serialization and deserialization of objects into structured text formats. It functions as a reflection-based data mapper, inspecting class structures at runtime to automatically convert memory-resident objects into data representations and reconstruct them back into typed language objects. The library distinguishes itself through a modular type-adapter pattern that allows for custom conversion rules for complex or nested structures. It also provides robust support for production environments by generating build-time metadata and configuration rules, wh
Gson is a widely used Java library for object serialization and deserialization that provides robust support for mapping complex object structures, though it focuses on text-based JSON rather than binary formats.
Fastjson is a Java data binding framework and serialization library designed to convert objects to JSON strings and parse JSON data into typed objects. It functions as a JSON parser and stream processor capable of transforming JSON strings into data structures. The project emphasizes high performance JSON processing and memory management, specifically through the use of a pipeline to stream oversized JSON objects and texts to prevent memory exhaustion. It provides capabilities for JSON data serialization and deserialization workflows, including custom JSON data mapping and the ability to def
Fastjson is a high-performance Java library for JSON serialization and deserialization that provides extensive data binding and streaming capabilities, though it focuses on the JSON text format rather than binary serialization.
Jackson-databind is a Java serialization framework and JSON data binding library used to convert Java objects to JSON and vice versa. It functions as a JSON streaming API that generates and parses content as a sequence of tokens, and as a hierarchical data tree mapper that reads data into a node structure for dynamic modification without predefined classes. The project provides a structured mapping process to bind data to objects, allowing for the transformation of complex Java objects into data formats and the reconstruction of objects from those formats. It supports custom data format mappi
This is a comprehensive Java data-binding and serialization framework that provides high-performance streaming and object mapping, though it primarily focuses on JSON rather than binary formats.
FST: fast java serialization drop in-replacement
This library provides a high-performance, drop-in replacement for standard Java serialization that focuses on speed and binary format efficiency, making it a strong candidate for your serialization needs.
MessagePack serializer implementation for Java / msgpack.orgJava
This library provides a high-performance binary serialization format for Java that supports cross-language interoperability and efficient data handling, fitting the core requirements for a serialization tool.
Serial is a Java library designed for high-speed object serialization and binary data processing. It converts complex objects into compact byte arrays to facilitate efficient storage and network transmission, specifically targeting environments where memory and resource efficiency are critical. The library distinguishes itself by bypassing reflection, instead utilizing manual field mapping and generated bytecode to perform object inspection. This approach ensures a deterministic byte layout and provides type-safe buffer management, which allows for predictable data structures. To support long
This library provides a lightweight and fast approach to Java object serialization, fitting the category as a dedicated tool for the requested task.
| Repositorio | Estrellas | Lenguaje | Licencia | Último push |
|---|---|---|---|---|
| google/protobuf | 71.4K | C++ | NOASSERTION | |
| esotericsoftware/kryo | 6.5K | HTML | BSD-3-Clause | |
| alipay/fury | 4.4K | Java | Apache-2.0 | |
| protocolbuffers/protobuf | 71.4K | C++ | NOASSERTION | |
| apache/fory | 4.2K | Java | apache-2.0 | |
| msgpack/msgpack | 7.5K | — | — | |
| apache/thrift | 10.9K | C++ | Apache-2.0 | |
| apache/avro | 3.3K | Java | Apache-2.0 | |
| google/flatbuffers | 25.6K | C++ | apache-2.0 | |
| square/moshi | 10.1K | Kotlin | Apache-2.0 |