awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
apache avatar

apache/thrift

0
View on GitHub↗
10,933 星标·4,109 分支·C++·Apache-2.0·9 次浏览

Thrift

Thrift 是一个跨语言远程过程调用(RPC)框架和数据序列化协议。它提供了一种接口定义语言(IDL)来以中立格式指定数据类型和服务接口,从而实现跨多种编程语言的客户端和服务器代码的自动化生成。

该项目作为一个多语言服务通信器,使用分层软件栈来确保互操作性通信。它专注于实现跨语言远程过程调用,并将复杂数据结构转换为标准化格式以实现高效的网络传输。

该框架包括用于管理 API 版本兼容性的功能,以支持客户端和服务器之间的非原子更新。它还提供了用于验证数据完整性并确保服务在不同语言实现中行为一致的机制。

Features

  • Cross-Language RPC Frameworks - Provides a comprehensive framework for implementing remote procedure calls that operate across multiple programming languages.
  • Remote Procedure Calls - Implements a remote procedure call framework that allows executing functions on remote servers as if they were local.
  • API Definition Languages - Uses a shared interface definition language to specify API shapes and generate language-specific client and server code.
  • Version-Tolerant Deserializers - Supports non-atomic updates by ignoring unknown fields during binary deserialization, ensuring backward and forward compatibility.
  • Binary Serialization Formats - Provides a compact binary serialization format for efficient network transmission of structured data across multiple languages.
  • Data Serialization Formats - Provides a set of protocols that define how data is encoded and serialized for efficient network transport.
  • Language-Neutral Data Serialization - Provides language-neutral binary serialization for encoding complex data structures independently of specific programming languages.
  • Cross-Language Service Communication - Enables interoperable communication between services written in different languages through shared protocols and definition languages.
  • Multi-Language RPC Services - Supports the creation of RPC services across multiple programming languages using a shared framework.
  • Type Mapping - Translates neutral interface definitions and binary tags into native data types across different programming languages.
  • Data Serialization Formats - Implements tools for converting complex data structures into standardized formats for efficient network transmission across languages.
  • IDL-Based Binding Generators - Generates serialization and deserialization code from interface definition files to automate cross-process communication.
  • Interface Definition Languages - Provides a standardized interface definition language for specifying service contracts and data structures.
  • Remote Service Definitions - Uses a neutral interface definition language to specify data types and services for automated code generation.
  • Protocol Version Compatibilities - Supports non-atomic updates by ensuring newer versions of clients and servers can still communicate with older versions.
  • Data Integrity - Includes mechanisms to ensure data remains accurate and uncorrupted throughout serialization and deserialization cycles.
  • RPC Stub Generation - Automates the creation of client and server stubs for encoding and decoding procedure arguments.
  • Protocol Abstraction Layers - Implements a layered architecture that decouples data transport from protocol serialization and service processing.
  • Protocol-Agnostic Transport Layers - Decouples high-level service logic from underlying network transports like TCP or HTTP via modular abstractions.
  • IDL Compilers - Compiles neutral interface definition files into language-specific source code to automate serialization logic.
  • API Versioning Strategies - Implements architectural patterns for API versioning to maintain service stability as definitions evolve.
  • Interoperability Validation - Validates that remote procedure calls behave identically across multiple language implementations.
  • Language Implementation Validators - Validates that service implementations behave identically across different programming languages through integration tests.
  • Network Communication - Language-independent software stack for RPC implementation.
  • RPC Frameworks - Cross-language RPC framework.
  • Serialization and Communication - Cross-language service development framework.
  • Serialization Protocols - Cross-language RPC and data serialization framework.

Star 历史

apache/thrift 的 Star 历史图表apache/thrift 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Thrift 的开源替代方案

相似的开源项目,按与 Thrift 的功能重合度排序。
  • apache/dubbo-spring-boot-projectapache 的头像

    apache/dubbo-spring-boot-project

    5,389在 GitHub 上查看↗

    This project is an integration framework that bootstraps Apache Dubbo remote procedure call services within Spring Boot applications. It serves as a microservice communication framework that enables the implementation of RPC services, service discovery, and distributed governance through automated configuration. The project distinguishes itself by providing a cross-language RPC bridge, allowing services written in different languages to communicate via standards such as gRPC and Protobuf. It further enables the exposure of backend microservices as REST endpoints using the Triple protocol for

    Javadubbo
    在 GitHub 上查看↗5,389
  • weibocom/motanweibocom 的头像

    weibocom/motan

    5,878在 GitHub 上查看↗

    Motan is a cross-language RPC framework and distributed service mesh designed for building high-performance distributed services. It functions as a networking layer that manages service discovery, request routing, and traffic distribution across server clusters. The system operates as a cross-datacenter load balancer, distributing requests across multiple clusters and data centers using weighted scheduling. It includes a service discovery registry to automatically locate and link available service instances within a distributed network environment. The framework provides capabilities for dis

    Java
    在 GitHub 上查看↗5,878
  • systemsapproach/bookSystemsApproach 的头像

    SystemsApproach/book

    3,298在 GitHub 上查看↗

    This project is a comprehensive computer networking textbook and instructional resource. It serves as a technical guide for the design and implementation of network layers, protocols, and hardware architecture, covering the spectrum from physical links to application-layer protocols. The content provides a detailed study of standards for congestion control, reliable data delivery, and internetwork routing. It includes specialized technical material on network security, public-key infrastructure, and the operation of modern cloud infrastructure and data centers. The material covers a broad ra

    Python
    在 GitHub 上查看↗3,298
  • google/protobufgoogle 的头像

    google/protobuf

    71,412在 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

    C++
    在 GitHub 上查看↗71,412
查看 Thrift 的所有 30 个替代方案→

常见问题解答

apache/thrift 是做什么的?

Thrift 是一个跨语言远程过程调用(RPC)框架和数据序列化协议。它提供了一种接口定义语言(IDL)来以中立格式指定数据类型和服务接口,从而实现跨多种编程语言的客户端和服务器代码的自动化生成。

apache/thrift 的主要功能有哪些?

apache/thrift 的主要功能包括:Cross-Language RPC Frameworks, Remote Procedure Calls, API Definition Languages, Version-Tolerant Deserializers, Binary Serialization Formats, Data Serialization Formats, Language-Neutral Data Serialization, Cross-Language Service Communication。

apache/thrift 有哪些开源替代品?

apache/thrift 的开源替代品包括: apache/dubbo-spring-boot-project — This project is an integration framework that bootstraps Apache Dubbo remote procedure call services within Spring… weibocom/motan — Motan is a cross-language RPC framework and distributed service mesh designed for building high-performance… systemsapproach/book — This project is a comprehensive computer networking textbook and instructional resource. It serves as a technical… google/protobuf — Protocol Buffers is a binary serialization framework used to encode structured information into compact payloads to… capnproto/capnproto — CapnProto is a zero-copy serialization framework and remote procedure call system. It serves as a C++ communication… alipay/fury — Fury is a multi-language binary serialization framework designed for encoding domain objects and complex graphs to…