18 repository-uri
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 este un framework API Node.js utilizat pentru construirea de API-uri REST și multi-protocol. Funcționează ca o implementare de server OpenAPI care poate fie să genereze specificații lizibile de către mașină din cod, fie să producă controllere și modele de implementare din specificații existente. Framework-ul se remarcă printr-un container central de injecție a dependențelor și un strat de acces la date bazat pe modelul repository. Această arhitectură decuplează logica aplicației de construcția componentelor și stocarea persistentă, permițând un sistem pluggable unde sursele de date și logica de business sunt izolate printr-un sistem standardizat de conectori. Proiectul acoperă o gamă largă de capabilități, inclusiv controlul accesului bazat pe roluri cu strategii de autentificare pluggable și orchestrarea serviciilor externe REST și SOAP. De asemenea, oferă instrumente pentru comunicarea în timp real prin endpoint-uri WebSocket, validarea schemelor JSON și scaffolding-ul automatizat al proiectelor printr-o interfață de linie de comandă. Dezvoltarea este susținută de un set de instrumente CLI pentru bootstrapping-ul aplicațiilor, generarea componentelor API și gestionarea dependențelor proiectului.
Converts binary MessagePack payloads into objects for use within controllers and validates them against JSON schemas.
MemoryPack este o bibliotecă de serializare binară de înaltă performanță pentru C# și Unity. Oferă un pipeline de date zero-allocation și un framework de evoluție a schemei conceput pentru a minimiza alocările de memorie și overhead-ul de codificare. Proiectul utilizează generatoare de sursă la momentul compilării pentru a evita reflexia la runtime și implementează un format binar zero-encoding pentru un throughput maxim. Se distinge printr-o abordare zero-allocation care reutilizează instanțele de obiecte pentru a reduce presiunea asupra garbage collector-ului și copiază layout-ul de memorie al structurilor neadministrate direct în fluxurile binare. Biblioteca acoperă versionarea schemei binare pentru compatibilitate inversă și suportă streaming-ul asincron al colecțiilor pentru seturi mari de date. Include un generator de tipuri TypeScript pentru a sincroniza structurile de date între C# și TypeScript pentru schimbul de date cross-language. Capabilitățile suplimentare includ compresia payload-ului, implementări personalizate de formatter și callback-uri de serializare.
Provides an optimized binary serialization engine for C# designed for minimal CPU and memory overhead.
Fury este un framework de serializare binară multi-limbaj conceput pentru encodarea obiectelor de domeniu și a grafurilor complexe, pentru a facilita schimbul de date între limbaje. Include un compilator de limbaj de definire a interfețelor (IDL) care traduce definițiile de schemă în tipuri native idiomatice și boilerplate de serializare în mai multe limbaje. Proiectul se distinge printr-un cititor binar zero-copy care permite accesarea unor câmpuri specifice fără a deserializa întregul obiect, precum și un serializator de grafuri de obiecte care păstrează referințele circulare și integritatea referențială. De asemenea, dispune de un convertor de date care transformă datele binare bazate pe rânduri în formate coloanare Apache Arrow pentru sarcini analitice. Framework-ul acoperă domenii largi de capabilități, inclusiv evoluția schemei bazată pe metadate pentru compatibilitate înainte și înapoi, un proces de compilare AOT (Ahead-Of-Time) pentru a elimina reflexia la runtime și deserializarea securizată prin validarea tipurilor bazată pe whitelist. Oferă, de asemenea, integrare pentru apeluri de proceduri la distanță de înaltă performanță prin 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 este un spațiu de lucru vizual conceput pentru gestionarea informațiilor complexe prin grafuri de cunoștințe bazate pe noduri. Oferă o interfață de manipulare directă care permite utilizatorilor să organizeze datele în rețele logice, mapând gândurile non-liniare și fluxurile de lucru ale proiectelor prin noduri interconectate și legături bidirecționale. Sistemul se distinge printr-un model de gestionare a stării bazat pe event-sourcing, care înregistrează fiecare modificare ca o acțiune discretă, permițând funcționalități precise de undo și redo. Acesta încorporează un motor de layout reactiv care calculează automat spațierea nodurilor și căile de conexiune în timpul interacțiunii pentru a menține claritatea vizuală și a preveni suprapunerea elementelor. Platforma suportă gestionarea vizuală cuprinzătoare a cunoștințelor, inclusiv instrumente pentru etichetarea conexiunilor, personalizarea navigării în interfață și structurarea datelor în grafuri imbricate. Pentru a asigura integritatea și performanța datelor, sistemul utilizează persistența automată în timp real și serializarea binară pentru a optimiza eficiența stocării pentru seturi mari de date.
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 este o bibliotecă cuprinzătoare pentru construirea de aplicații colaborative în timp real și sisteme distribuite. Oferă un framework robust pentru gestionarea structurilor de date partajate de tip JSON care îmbină automat editările concurente de la mai mulți utilizatori, asigurând o stare consistentă pe toate replicile fără a necesita un server central de coordonare. Proiectul se distinge printr-o abordare de înaltă performanță a gestionării datelor, utilizând tipuri de date replicate fără conflicte (CRDT) și sincronizare bazată pe ceasuri logice pentru a menține integritatea datelor. Include un motor specializat pentru navigarea și manipularea obiectelor imbricate complexe folosind sintaxa standardizată de pointeri, alături de un toolkit pentru aplicarea modificărilor granulare și atomice asupra documentelor. Aceste capabilități sunt completate de o bibliotecă de serializare de mare viteză care suportă formate binare compacte pentru a optimiza lățimea de bandă a rețelei și eficiența stocării. Dincolo de logica sa de sincronizare de bază, biblioteca oferă o suită largă de instrumente pentru gestionarea reactivă a stării și integrarea interfeței utilizator. Oferă hook-uri și componente declarative care leagă modelele de date partajate direct de editoarele web de text și cod, permițând funcții precum prezența în timp real, randarea cursorului la distanță și urmărirea istoricului local. Sistemul suportă, de asemenea, procesarea avansată a datelor, inclusiv validarea schemei, evaluarea expresiilor și organizarea datelor bazată pe arbori de înaltă performanță.
Serializes complex data structures into compact binary formats to reduce network bandwidth usage and accelerate parsing speeds.
PalDB este un motor de stocare cheie-valoare embeddable pentru Java, conceput pentru regăsirea datelor de înaltă performanță. Funcționează ca o bibliotecă ce persistă datele într-un singur fișier binar imutabil, oferind o soluție de stocare pentru workload-uri de tip write-once care necesită o amprentă de memorie minimă în comparație cu colecțiile standard în memorie. Sistemul se distinge printr-un layout de date write-once care elimină necesitatea mecanismelor de blocare în timpul operațiunilor de citire concurente. Utilizând accesul la fișiere mapate în memorie și indexarea sortată a cheilor, motorul permite căutări rapide direct în spațiul de adrese al procesului. Această arhitectură susține distribuția seturilor de date statice ca fișiere read-only care pot fi încorporate și accesate de mai multe instanțe de aplicație. Biblioteca include un framework pentru serializarea datelor de înaltă performanță, permițând dezvoltatorilor să definească logica personalizată pentru conversia obiectelor complexe în fluxuri binare compacte. Această extensibilitate asigură faptul că structurile de date unice pot fi stocate și regăsite eficient în mediul aplicației locale.
Converts complex custom objects into efficient binary formats for fast storage and retrieval within local application environments.