18 repositorios
Optimized conversion of complex data structures into binary formats for minimal latency.
Distinct from Complex Data Serialization: Focuses on the overall efficiency of the serialization process rather than just support for non-primitive types.
Explore 18 awesome GitHub repositories matching data & databases · High-Performance Binary Serialization. Refine with filters or upvote what's useful.
CapnProto is a zero-copy serialization framework and remote procedure call system. It serves as a C++ communication library providing a schema-based data interchange format that eliminates the need to encode or decode data before reading it from memory. The system enables high-performance data serialization and low-latency network communication. It supports cross-language data exchange by using a defined schema to ensure consistent binary representation across different platforms. The framework provides tools for implementing remote procedure calls, allowing functions to be invoked on a remo
Provides extremely efficient binary serialization for high-throughput and low-latency data exchange.
ET is a C# game server framework and distributed actor model runtime designed for large-scale multiplayer environments. It provides a comprehensive toolkit for building distributed game backends, incorporating a multiplayer network transport layer and a specialized suite for game AI and pathfinding. The framework is distinguished by its use of a distributed actor model to scale processing across multiple threads and servers, utilizing isolated actors for state management and messaging. It features a unified codebase architecture that allows shared logic between the server and client, enabling
Implements a binary serialization format designed for high performance and zero garbage collection.
Jackson is a Java data binding framework and multi-format data serializer used to translate data structures into native language objects. It functions as a JSON data binding library and a streaming parser that reads and writes data as discrete tokens to process large datasets with minimal memory. The project distinguishes itself through a bytecode serialization accelerator that replaces standard reflection with generated bytecode to increase data binding speed. It employs a module-based extensibility model to support a wide range of formats beyond JSON, including XML, YAML, CSV, TOML, and bin
Performs high-performance serialization and deserialization using the Smile binary JSON format.
ArduinoJson is a C++ library for parsing and manipulating JSON data and MessagePack binary streams on microcontrollers with limited memory and processing power. It provides the core primitives necessary for embedded data serialization and parsing, enabling devices to exchange structured data over serial or network interfaces. The library is distinguished by its focus on microcontroller memory management, employing strategies such as pool-based allocation, string deduplication, and non-owning string views to minimize RAM usage. It further optimizes for constrained environments by allowing cons
Encodes structured documents into compact MessagePack binary streams.
MessagePack-CSharp is a high-performance binary serialization library for .NET applications that converts object graphs into the MessagePack format. It functions as a C# data serialization toolkit and a polymorphic binary encoder capable of handling abstract classes and interfaces using union keys to identify concrete derived types. The library provides a binary format transcoder to transform binary data into human-readable JSON for debugging. It supports ahead-of-time formatter generation to avoid runtime overhead and implements LZ4 binary compression to reduce the size of serialized data.
Provides a high-performance binary serialization implementation specifically for the MessagePack format in .NET.
MessagePack-CSharp is a high-performance binary serializer for .NET that converts C# objects to and from the compact MessagePack format. It uses compile-time source generation to produce AOT-safe formatters and resolvers, eliminating runtime reflection and enabling ahead-of-time compilation scenarios. The serializer encodes object fields as integer indices instead of string keys, producing compact binary output with deterministic field ordering, and provides stack-allocated reader and writer structs for direct encoding and decoding of MessagePack primitives without heap allocations. The libra
Provides high-performance MessagePack binary serialization for .NET objects with customizable resolvers.
attrs is a Python library that automatically generates initialization, representation, equality, hashing, and ordering methods from declarative class attribute definitions. At its core, it provides a class decorator metaprogramming framework that intercepts class creation to rewrite the class body, producing dunder methods without manual boilerplate. The library includes a comprehensive attribute validation toolkit with built-in validators for type checks, range constraints, regex matching, length limits, and logical composition of validation rules. The library distinguishes itself through it
Encodes class instances into JSON, MessagePack, YAML, or TOML and decodes them back with validation.
This project is a Protocol Buffers Go compiler and code generation framework that translates schema definitions into optimized Go structures and reflection-free serialization methods. It includes a gRPC service generator for producing client and server communication code and a serialization performance toolkit for generating automated benchmarks and test suites. The framework features a plugin-based system for transforming data definitions into source code with custom field mapping and struct tag injection. It allows for custom type mapping and struct type overriding to link data fields to sp
Generates optimized Go code for marshaling and unmarshaling data to minimize CPU and memory overhead.
PartyKit is a serverless WebSocket backend platform for building real-time multiplayer applications. It provides a globally distributed edge computing runtime that runs stateful server code close to users, with automatic scaling and hibernation for idle rooms. The platform handles WebSocket connections, HTTP requests, and durable storage without requiring infrastructure management, and includes a client and server SDK with hooks, storage, and Yjs integration for building collaborative features. The platform distinguishes itself through per-room isolation using Durable Objects, where each uniq
Serializes JavaScript objects into a compact binary format using MessagePack to reduce message size.
FastStream is an asynchronous Python framework designed for building event-driven microservices. It provides a unified abstraction layer for interacting with various message brokers, enabling developers to manage event production and consumption through a consistent interface while maintaining access to native provider-specific features. The framework centers on a decorator-based routing model that binds application logic directly to broker topics, supported by a built-in dependency injection container that resolves resources at runtime. The framework distinguishes itself through its deep int
Integrates high-performance serialization using Msgspec for JSON, MessagePack, YAML, and TOML with schema validation.
LoopBack Next es un framework de API de Node.js utilizado para construir APIs REST y multiprotocolo. Funciona como una implementación de servidor OpenAPI que puede generar especificaciones legibles por máquina a partir del código o producir controladores e implementaciones de modelos a partir de especificaciones existentes. El framework se distingue por un contenedor central de inyección de dependencias y una capa de acceso a datos basada en el patrón repositorio. Esta arquitectura desacopla la lógica de la aplicación de la construcción de componentes y el almacenamiento persistente, permitiendo un sistema conectable donde las fuentes de datos y la lógica de negocio están aisladas a través de un sistema de conectores estandarizado. El proyecto cubre una amplia gama de capacidades, incluyendo control de acceso basado en roles con estrategias de autenticación conectables y la orquestación de servicios REST y SOAP externos. También proporciona herramientas para comunicación en tiempo real mediante endpoints WebSocket, validación de esquemas JSON y andamiaje (scaffolding) automatizado de proyectos a través de una interfaz de línea de comandos. El desarrollo está respaldado por un conjunto de herramientas CLI para arrancar aplicaciones, generar componentes de API y gestionar dependencias del proyecto.
Converts binary MessagePack payloads into objects for use within controllers and validates them against JSON schemas.
MemoryPack es una librería de serialización binaria de alto rendimiento para C# y Unity. Proporciona un pipeline de datos de cero asignaciones y un framework de evolución de esquemas diseñado para minimizar las asignaciones de memoria y la sobrecarga de codificación. El proyecto utiliza generadores de código fuente en tiempo de compilación para evitar la reflexión en tiempo de ejecución e implementa un formato binario de codificación cero para un rendimiento máximo. Se distingue por un enfoque de cero asignaciones que reutiliza instancias de objetos para reducir la presión del recolector de basura y copia el diseño de memoria de structs no gestionados directamente a flujos binarios. La librería cubre el versionado de esquemas binarios para compatibilidad hacia atrás y admite streaming de colecciones asíncronas para grandes datasets. Incluye un generador de tipos de TypeScript para sincronizar estructuras de datos entre C# y TypeScript para el intercambio de datos entre lenguajes. Las capacidades adicionales incluyen compresión de carga útil, implementaciones de formateadores personalizados y devoluciones de llamada de serialización.
Provides an optimized binary serialization engine for C# designed for minimal CPU and memory overhead.
Fury es un framework de serialización binaria multilenguaje diseñado para codificar objetos de dominio y grafos complejos para facilitar el intercambio de datos entre lenguajes. Incluye un compilador de lenguaje de definición de interfaz (IDL) que traduce definiciones de esquemas a tipos nativos idiomáticos y código repetitivo de serialización en múltiples lenguajes. El proyecto se distingue por un lector binario de copia cero (zero-copy) que permite acceder a campos específicos sin deserializar todo el objeto, así como un serializador de grafos de objetos que preserva las referencias circulares y la integridad referencial. También cuenta con un convertidor de datos que transforma datos binarios basados en filas a formatos columnares de Apache Arrow para cargas de trabajo analíticas. El framework cubre amplias áreas de capacidad, incluyendo la evolución de esquemas basada en metadatos para compatibilidad hacia adelante y hacia atrás, un proceso de compilación AOT en tiempo de construcción para eliminar la reflexión en tiempo de ejecución y la deserialización segura mediante validación de tipos basada en listas blancas. Además, proporciona integración para llamadas a procedimientos remotos de alto rendimiento a través de gRPC.
Provides high-performance serialization alternatives for complex native types, including support for lambdas.
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
Provides high-performance conversion of complex object graphs into compact binary formats for minimal latency.
Project-graph es un espacio de trabajo visual diseñado para gestionar información compleja mediante grafos de conocimiento basados en nodos. Proporciona una interfaz de manipulación directa que permite a los usuarios organizar datos en redes lógicas, mapeando pensamientos no lineales y flujos de trabajo de proyectos a través de nodos interconectados y enlaces bidireccionales. El sistema se distingue por un modelo de gestión de estado basado en eventos que registra cada modificación como una acción discreta, permitiendo capacidades precisas de deshacer y rehacer. Incorpora un motor de diseño reactivo que calcula automáticamente el espaciado de los nodos y las rutas de conexión durante la interacción para mantener la claridad visual y evitar la superposición de elementos. La plataforma admite una gestión integral del conocimiento visual, incluyendo herramientas para etiquetar conexiones, personalizar la navegación de la interfaz y estructurar datos en grafos anidados. Para garantizar la integridad y el rendimiento de los datos, el sistema utiliza persistencia automática en tiempo real y serialización binaria para optimizar la eficiencia del almacenamiento en grandes conjuntos de datos.
Optimizes the conversion of complex graph structures into binary formats for improved storage and performance.
msgspec is a high-performance data modeling, serialization, and schema validation toolkit for Python. It serves as a type-safe serialization framework that integrates schema enforcement and data parsing into a single pass, functioning as both a data serialization library and a schema validation system based on standard Python type annotations. The project distinguishes itself through high-performance structural primitives, including compilation-based routine generation and zero-copy buffer parsing. It optimizes memory usage via garbage collection-aware layouts and reduces processing overhead
Offers high-performance serialization for JSON, MessagePack, YAML, and TOML with minimal CPU and memory overhead.
json-joy es una biblioteca integral para construir aplicaciones colaborativas en tiempo real y sistemas distribuidos. Proporciona un framework robusto para gestionar estructuras de datos similares a JSON que fusionan automáticamente ediciones concurrentes de múltiples usuarios, asegurando un estado consistente en todas las réplicas sin requerir un servidor de coordinación central. El proyecto se distingue por un enfoque de alto rendimiento para el manejo de datos, utilizando tipos de datos replicados libres de conflictos y sincronización basada en relojes lógicos para mantener la integridad de los datos. Incluye un motor especializado para navegar y manipular objetos anidados complejos utilizando sintaxis de punteros estandarizada, junto con un kit de herramientas para aplicar modificaciones granulares y atómicas a los documentos. Estas capacidades se complementan con una biblioteca de serialización de alta velocidad que admite formatos binarios compactos para optimizar el ancho de banda de red y la eficiencia de almacenamiento. Más allá de su lógica de sincronización central, la biblioteca ofrece un amplio conjunto de herramientas para la gestión de estado reactiva y la integración de interfaces de usuario. Proporciona hooks y componentes declarativos que vinculan modelos de datos compartidos directamente a editores de texto y código basados en web, permitiendo características como presencia en tiempo real, renderizado de cursor remoto y seguimiento de historial local. El sistema también admite procesamiento de datos avanzado, incluyendo validación de esquemas, evaluación de expresiones y organización de datos basada en árboles de alto rendimiento.
Serializes complex data structures into compact binary formats to reduce network bandwidth usage and accelerate parsing speeds.
PalDB es un motor de almacenamiento clave-valor integrable para Java diseñado para la recuperación de datos de alto rendimiento. Funciona como una biblioteca que persiste los datos en un único archivo binario inmutable, proporcionando una solución de almacenamiento para cargas de trabajo de escritura única que requieren una sobrecarga de memoria mínima en comparación con las colecciones estándar en memoria. El sistema se distingue por un diseño de datos de escritura única que elimina la necesidad de mecanismos de bloqueo durante operaciones de lectura concurrentes. Al utilizar acceso a archivos mapeados en memoria e indexación de claves ordenadas, el motor permite búsquedas rápidas directamente dentro del espacio de direcciones del proceso. Esta arquitectura admite la distribución de conjuntos de datos estáticos como archivos de solo lectura que pueden integrarse y accederse por múltiples instancias de aplicación. La biblioteca incluye un framework para la serialización de datos de alto rendimiento, permitiendo a los desarrolladores definir lógica personalizada para convertir objetos complejos en flujos binarios compactos. Esta extensibilidad asegura que las estructuras de datos únicas puedan almacenarse y recuperarse eficientemente dentro del entorno de aplicación local.
Converts complex custom objects into efficient binary formats for fast storage and retrieval within local application environments.