awesome-repositories.com
Blog
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektÜber unsRanking-MethodikPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
EsotericSoftware avatar

EsotericSoftware/kryo

0
View on GitHub↗
6,529 Stars·840 Forks·HTML·BSD-3-Clause·4 Aufrufe

Kryo

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 management to support the addition, removal, or renaming of fields in serialized data.

High-performance capabilities include the use of off-heap memory and direct buffers for low-level memory IO. The framework also incorporates object pooling to reuse non-thread-safe instances and imposes deserialization size limits on collections and arrays to prevent memory exhaustion.

The system allows for extensibility through custom serialization logic and specialized object instantiation for classes lacking zero-argument constructors.

Features

  • Binary Serialization Formats - Provides a high-performance binary serialization framework for converting Java objects to and from compact binary formats.
  • Binary Serialization - Converts Java objects into a compact binary format for efficient data storage or transmission.
  • Custom Serializer Implementations - Enables the definition of specific read and write logic for classes via custom serializer implementations.
  • Schema Evolution - Maintains backward and forward compatibility by allowing fields to be added, renamed, or removed in serialized data.
  • Object Cloning Techniques - Creates deep or shallow copies of object graphs without requiring intermediate binary conversion.
  • Deep Copying Libraries - Implements a specialized system for creating deep or shallow copies of complex Java object graphs.
  • Reference Tracking - Tracks object identities during serialization to handle circular dependencies and prevent data duplication.
  • Class-to-Serializer Registries - Provides a configurable registry to map specific classes to dedicated read and write serialization logic.
  • Variable-Width Integer Encodings - Employs variable-width integer encoding to represent numbers using fewer bytes and reduce binary size.
  • Deep Class Instance Cloning - Creates full independent copies of complex Java object graphs to avoid modifying original instances.
  • Direct Buffer Processing - Utilizes direct memory buffers to increase data throughput and bypass standard Java heap overhead.
  • High-Performance Binary Data Transfer - Reduces latency and bandwidth usage by utilizing variable-length encoding and optimized memory access.
  • Direct Memory Access - Provides direct memory access capabilities to read and write data using native buffers for increased throughput.
  • Low-Level Memory IO - Utilizes low-level memory access to accelerate the serialization of large primitive arrays.
  • Serializer Registrations - Associates specific classes with custom serialization logic through explicit registration or default strategies.
  • Integer-ID Class Mappings - Reduces serialized data size by mapping fully qualified class names to small integer identifiers.
  • Class Registration Optimizations - Maps fully qualified class names to small integer identifiers to significantly reduce the serialized data size.
  • Direct Memory Serializers - Uses off-heap memory and direct buffers to bypass heap overhead and increase data throughput.
  • Custom Object Instantiation - Allows defining custom instantiation logic to support classes that lack zero-argument constructors during deserialization.
  • Object Pooling - Reuses non-thread-safe serialization instances via object pooling to minimize garbage collection overhead.
  • JSON - 快速且自动化的对象序列化库。
  • Serialization Formats - Efficient object graph serialization for Java applications.
  • Data Serialization - Fast and efficient Java serialization and cloning library.
  • Serialization - Fast and efficient object graph serialization.
  • Serialization and Communication - Fast and efficient object graph serialization for Java.
  • Serialization and I/O - Fast and efficient framework for object graph serialization.

Star-Verlauf

Star-Verlauf für esotericsoftware/kryoStar-Verlauf für esotericsoftware/kryo

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Häufig gestellte Fragen

Was macht esotericsoftware/kryo?

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.

Was sind die Hauptfunktionen von esotericsoftware/kryo?

Die Hauptfunktionen von esotericsoftware/kryo sind: Binary Serialization Formats, Binary Serialization, Custom Serializer Implementations, Schema Evolution, Object Cloning Techniques, Deep Copying Libraries, Reference Tracking, Class-to-Serializer Registries.

Welche Open-Source-Alternativen gibt es zu esotericsoftware/kryo?

Open-Source-Alternativen zu esotericsoftware/kryo sind unter anderem: alipay/fury — Fury is a multi-language binary serialization framework designed for encoding domain objects and complex graphs to… google/protobuf — Protocol Buffers is a binary serialization framework used to encode structured information into compact payloads to… google/flatbuffers — FlatBuffers is a cross-platform serialization library designed for performance-critical applications that require… cysharp/magiconion — MagicOnion is a .NET RPC framework used to build type-safe remote procedure call services using shared interfaces for… golang/protobuf — This project is a Protocol Buffers implementation for Go, providing a binary serialization framework to convert native… msgpack/msgpack — MessagePack is a binary object serialization library and a cross-platform data exchange format. It serves as a binary…

Open-Source-Alternativen zu Kryo

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit Kryo.
  • alipay/furyAvatar von alipay

    alipay/fury

    4,412Auf GitHub ansehen↗

    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

    Java
    Auf GitHub ansehen↗4,412
  • google/protobufAvatar von google

    google/protobuf

    71,412Auf GitHub ansehen↗

    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

    C++
    Auf GitHub ansehen↗71,412
  • google/flatbuffersAvatar von google

    google/flatbuffers

    25,558Auf GitHub ansehen↗

    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

    C++cc-plus-plusc-sharp
    Auf GitHub ansehen↗25,558
  • cysharp/magiconionAvatar von Cysharp

    Cysharp/MagicOnion

    4,408Auf GitHub ansehen↗

    MagicOnion is a .NET RPC framework used to build type-safe remote procedure call services using shared interfaces for communication between servers and clients. It functions as a binary serialization framework and a distributed service orchestrator, providing a network layer for low-latency streaming and real-time data exchange. The project distinguishes itself through an AOT-compatible network client that uses source generators to support ahead-of-time compilation in restricted runtime environments. It enables bidirectional communication and real-time data streaming, allowing servers and mul

    C#c-sharpgrpcrpc
    Auf GitHub ansehen↗4,408
  • Alle 30 Alternativen zu Kryo anzeigen→