awesome-repositories.com
Blog
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

Java Serialization Libraries

Ranking updated Jul 13, 2026

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.

We curate open-source GitHub repositories matching “best java serialization libraries”. Results are ranked by relevance to your query — pick filters below to narrow, or refine with AI.

Java Serialization Libraries

Find the best repos with AI.We'll search the best matching repositories with AI.
  • google/protobufgoogle avatar

    google/protobuf

    71,412View on GitHub↗

    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.

    C++Binary SerializationBinary Serialization FormatsProtocol Buffers
    View on GitHub↗71,412
  • esotericsoftware/kryoEsotericSoftware avatar

    EsotericSoftware/kryo

    6,529View on GitHub↗

    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.

    HTMLBinary SerializationBinary Serialization FormatsSchema Evolution
    View on GitHub↗6,529
  • alipay/furyalipay avatar

    alipay/fury

    4,412View on GitHub↗

    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.

    JavaSchema EvolutionZero-CopyZero-Copy Deserialization
    View on GitHub↗4,412
  • protocolbuffers/protobufprotocolbuffers avatar

    protocolbuffers/protobuf

    71,359View on GitHub↗

    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.

    C++Protocol BuffersTag-Based Binary Encodings
    View on GitHub↗71,359
  • apache/foryapache avatar

    apache/fory

    4,234View on GitHub↗

    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.

    JavaZero-Copy DeserializationStatic Serialization Engines
    View on GitHub↗4,234
  • msgpack/msgpackmsgpack avatar

    msgpack/msgpack

    7,472View on GitHub↗

    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.

    Binary Serialization FormatsBinary Data Formats
    View on GitHub↗7,472
  • apache/thriftapache avatar

    apache/thrift

    10,933View on GitHub↗

    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.

    C++Binary Serialization FormatsInterface Definition LanguagesIDL Compilers
    View on GitHub↗10,933
  • apache/avroapache avatar

    apache/avro

    3,277View on GitHub↗

    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.

    JavaSerialization and Communication
    View on GitHub↗3,277
  • google/flatbuffersgoogle avatar

    google/flatbuffers

    25,558View on GitHub↗

    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.

    C++Binary Serialization FormatsBinary Compatibility Strategies
    View on GitHub↗25,558
  • square/moshisquare avatar

    square/moshi

    10,138View on GitHub↗

    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.

    KotlinCompile-Time Code Generation
    View on GitHub↗10,138
  • google/gsongoogle avatar

    google/gson

    24,357View on GitHub↗

    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.

    JavaJSON Serialization LibrariesSerialization LibrariesData Serialization Frameworks
    View on GitHub↗24,357
  • alibaba/fastjsonalibaba avatar

    alibaba/fastjson

    25,625View on GitHub↗

    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.

    JavaJSON Serialization LibrariesData Binding FrameworksDirect Buffer Processing
    View on GitHub↗25,625
  • fasterxml/jackson-databindFasterXML avatar

    FasterXML/jackson-databind

    3,729View on GitHub↗

    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.

    JavaJSON and Data ParsingToken-Based Streaming ParsersData Format Converters
    View on GitHub↗3,729
  • ruedigermoeller/fast-serializationRuedigerMoeller avatar

    RuedigerMoeller/fast-serialization

    1,594View on GitHub↗

    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.

    JavaData SerializationSerializationSerialization and I/O
    View on GitHub↗1,594
  • msgpack/msgpack-javamsgpack avatar

    msgpack/msgpack-java

    1,468View on GitHub↗

    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.

    JavaSerializationSerialization and I/O
    View on GitHub↗1,468
  • twitter/serialtwitter avatar

    twitter/Serial

    1,029View on GitHub↗

    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.

    JavaReflection-Free Serialization
    View on GitHub↗1,029
Compare the top 10 at a glance
RepositoryStarsLanguageLicenseLast push
google/protobuf71.4KC++NOASSERTIONJun 26, 2026
esotericsoftware/kryo6.5KHTMLBSD-3-ClauseJun 10, 2026
alipay/fury4.4KJavaApache-2.0Jun 17, 2026
protocolbuffers/protobuf71.4KC++NOASSERTIONJun 16, 2026
apache/fory4.2KJavaapache-2.0Feb 21, 2026
msgpack/msgpack7.5K——Aug 10, 2024
apache/thrift10.9KC++Apache-2.0Jun 24, 2026
apache/avro3.3KJavaApache-2.0Jun 21, 2026
google/flatbuffers25.6KC++apache-2.0Feb 18, 2026
square/moshi10.1KKotlinApache-2.0Jun 16, 2026

Related searches

  • a high performance serialization library for C#
  • a high performance serialization library for Go
  • a high performance JSON library for Java
  • a C++ library for data serialization
  • a java library for data compression
  • a binary serialization format for structured data
  • a high performance JSON library for C#
  • a caching library for Java applications