awesome-repositories.com
Blog
MCP
awesome-repositories.com

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com

Java gRPC Libraries

Ranking updated Jul 13, 2026

For a java library for building gRPC services, the strongest matches are grpc/grpc (This is the official core framework for gRPC, providing), grpc/grpc-java (This is the official Java implementation of gRPC, providing) and line/armeria (Armeria is a high-performance microservices framework that natively supports). quarkusio/quarkus and apache/dubbo 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 grpc libraries”. Results are ranked by relevance to your query — pick filters below to narrow, or refine with AI.

Java gRPC Libraries

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

    grpc/grpc

    44,891View on GitHub↗

    gRPC is a language-agnostic remote procedure call framework designed for high-performance communication between distributed services. It utilizes a structured interface definition language to generate consistent client stubs and server skeletons, enabling applications to invoke methods on remote servers as if they were local objects. By leveraging the HTTP/2 transport layer, the framework supports efficient binary serialization and multiplexed data exchange across diverse programming environments. The framework distinguishes itself through its support for flexible communication patterns, incl

    This is the official core framework for gRPC, providing the essential foundation for implementing services and clients in Java with full support for Protocol Buffers, streaming, interceptors, and load balancing.

    C++Interceptor MiddlewareRequest InterceptorsServer Health Checks
    View on GitHub↗44,891
  • grpc/grpc-javagrpc avatar

    grpc/grpc-java

    12,032View on GitHub↗

    gRPC Java is a library for building distributed systems that enables client and server applications to interact through remote procedure calls. It uses protocol buffers to define service interfaces and exchange structured data, providing a framework for connecting microservices across different environments. The framework utilizes an asynchronous networking foundation to manage concurrent connections and relies on a multiplexed binary protocol to facilitate efficient data exchange. It supports pluggable transport interceptors, allowing for the injection of custom logic into the request-respon

    This is the official Java implementation of gRPC, providing the core framework for defining services with Protocol Buffers, handling asynchronous streaming, and implementing interceptors for robust microservices communication.

    JavaProtocol BuffersRequest Interceptors
    View on GitHub↗12,032
  • line/armerialine avatar

    line/armeria

    5,115View on GitHub↗

    Armeria is a Netty-based microservice framework used for building high-performance asynchronous services. It functions as a multi-protocol RPC server capable of exposing gRPC, Thrift, and REST services on a single unified port. The project is distinguished by its ability to run diverse communication protocols simultaneously and its integrated RPC debugging web console, which allows for the discovery and invocation of remote procedure calls via JSON. It also includes a gRPC to JSON transcoder to enable web client compatibility with Protobuf services. The framework provides a comprehensive sui

    Armeria is a high-performance microservices framework that natively supports gRPC alongside other protocols, providing the necessary infrastructure for service definition, interceptors, load balancing, and asynchronous communication.

    JavaClient-Side Load BalancingInterceptor MiddlewareClient-Side Load Balancing
    View on GitHub↗5,115
  • quarkusio/quarkusquarkusio avatar

    quarkusio/quarkus

    15,479View on GitHub↗

    Quarkus is a Kubernetes-native Java framework designed for building high-performance, memory-efficient applications. It utilizes ahead-of-time native compilation to transform Java code into standalone, optimized binaries that eliminate the need for a virtual machine, enabling rapid startup and reduced memory consumption. By performing code augmentation during the build phase, it shifts heavy processing tasks away from runtime, ensuring that applications are optimized for cloud-native environments. The framework distinguishes itself through a unified approach to reactive and imperative program

    Quarkus is a comprehensive Java framework that provides first-class support for gRPC through its dedicated extension, offering the required service definition, streaming, and interceptor capabilities within a cloud-native ecosystem.

    JavaCompile-Time Code GenerationgRPCHealth Checks
    View on GitHub↗15,479
  • apache/dubboapache avatar

    apache/dubbo

    41,519View on GitHub↗

    Dubbo is a Java RPC framework and microservices governance platform designed for high-performance remote procedure calls in distributed architectures. It provides the foundational components necessary to connect distributed services across a network, including a binary data serialization library and a distributed service registry. The platform distinguishes itself through a comprehensive governance suite that manages service discovery, load balancing, and traffic routing. It enables precise control over network traffic via conditional routing and a pluggable extension mechanism based on a ser

    Dubbo is a comprehensive Java RPC framework that natively supports gRPC as a transport protocol and provides the requested features like service discovery, load balancing, and streaming, though it is a broader microservices platform rather than a dedicated gRPC-only library.

    JavaRemote Procedure Call FrameworksRPC FrameworksAsynchronous RPC Execution
    View on GitHub↗41,519
  • grpc/grpc-gogrpc avatar

    grpc/grpc-go

    22,962View on GitHub↗

    grpc-go is a Go language implementation of the gRPC framework, providing a remote procedure call library for high-performance service communication. It uses the HTTP/2 protocol to execute functions on remote servers as if they were local methods and utilizes protobuf service bindings to generate type-safe client and server code. The project features a bidirectional streaming transport that supports asynchronous, full-duplex message streams between clients and servers. This networking layer allows for various communication patterns, including client-to-server and server-to-client streaming, to

    This repository provides the gRPC implementation for the Go programming language, but it does not support the Java ecosystem requested by the visitor.

    GoInterceptor MiddlewareRequest InterceptorsBidirectional Streaming Protocols
    View on GitHub↗22,962
  • protobufjs/protobuf.jsprotobufjs avatar

    protobufjs/protobuf.js

    10,558View on GitHub↗

    protobuf.js is a JavaScript and TypeScript library for encoding and decoding structured data using the Protocol Buffers binary format. It functions as a dynamic parser that can load and process schemas at runtime, a JSON transcoder for converting messages to human-readable formats, and a framework for building transport-agnostic remote procedure call clients. The project distinguishes itself by offering both dynamic message handling and a static code generator that produces TypeScript declarations and JavaScript modules to reduce runtime overhead. It also provides a reflection API for definin

    This is a JavaScript and TypeScript library for Protocol Buffers and RPC serialization, which does not provide the Java-based framework or runtime environment required for implementing gRPC services in Java.

    JavaScriptCompile-Time Code GenerationProtocol Buffers
    View on GitHub↗10,558
  • netflix/ribbonNetflix avatar

    Netflix/ribbon

    4,613View on GitHub↗

    Ribbon is a client-side load balancer and RPC communication library designed for inter-process communication. It functions as a fault-tolerant network proxy that distributes outgoing network requests across a pool of available server instances to prevent node overload. The project integrates as a service discovery client, maintaining synchronized lists of available server instances by connecting with cloud environment discovery tools. This allows it to manage request retries and failover behavior when remote servers become unresponsive. The library supports a protocol-agnostic transport laye

    Ribbon is a client-side load balancing and service discovery library for inter-process communication, but it lacks the core gRPC-specific implementation, service definition generation, and Protocol Buffers integration required to function as a gRPC framework.

    JavaClient-Side Load Balancing
    View on GitHub↗4,613
  • 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

    This repository provides the underlying serialization format and schema compiler used by gRPC, but it is a data interchange library rather than a framework for implementing gRPC services and clients.

    C++Protocol Buffers
    View on GitHub↗71,412
  • twinproduction/gatusTwinProduction avatar

    TwinProduction/gatus

    11,255View on GitHub↗

    Gatus is a multi-protocol health checker and automated service alerting tool. It provides a monitoring dashboard for tracking the uptime and health of HTTP, TCP, DNS, and gRPC endpoints, and serves as a Prometheus metrics exporter to track response times and success rates. The project distinguishes itself with a developer-oriented approach to status pages, securing administrative access and dashboards via OpenID Connect and Basic Authentication. It supports complex network environments through SSH tunneling to monitor internal services via bastion hosts and allows remote agents to push health

    This is a service monitoring and health-checking tool that can probe gRPC endpoints, but it is not a framework for building or implementing gRPC services and clients.

    GoHealth ChecksHealth Monitoring Endpoints
    View on GitHub↗11,255
  • envoyproxy/envoyenvoyproxy avatar

    envoyproxy/envoy

    27,630View on GitHub↗

    Envoy is a high-performance, cloud-native service proxy designed for service-to-service communication in distributed architectures. It functions as a service mesh data plane, providing a centralized mechanism for managing, securing, and observing network traffic between microservices. The project is distinguished by its ability to perform dynamic traffic management and configuration updates in real-time without requiring service restarts or downtime. It utilizes a non-blocking, event-driven architecture to handle high-concurrency connections and supports hot-restart process management, which

    Envoy is a high-performance service proxy and infrastructure component used to route and manage gRPC traffic, but it is not a Java framework for implementing gRPC services and clients.

    C++Health Checks
    View on GitHub↗27,630
  • apache/brpcapache avatar

    apache/brpc

    17,545View on GitHub↗

    brpc is a high-performance C++ RPC framework and network programming library designed for building distributed systems. It functions as a multi-protocol RPC server capable of hosting and detecting multiple communication protocols, including gRPC, Thrift, HTTP, Redis, and Memcached, on a single TCP port. The project distinguishes itself through high-throughput data transport and memory efficiency, utilizing RDMA-based transport to bypass the kernel TCP stack and zero-copy memory management to eliminate data duplication. It also implements the Raft algorithm for consensus-based state replicatio

    This is a high-performance C++ RPC framework rather than a Java-based library, making it a different toolset for implementing gRPC services.

    C++Protocol BuffersServer Health Checks
    View on GitHub↗17,545

Related searches

  • a library for building Go gRPC services
  • a python library for building gRPC services
  • a library for building Rust gRPC services
Compare the top 10 at a glance
RepositoryStarsLanguageLicenseLast push
grpc/grpc44.9KC++Apache-2.0Jun 16, 2026
grpc/grpc-java12KJavaApache-2.0Jun 12, 2026
line/armeria5.1KJavaApache-2.0Jun 17, 2026
quarkusio/quarkus15.5KJavaapache-2.0Feb 21, 2026
apache/dubbo41.5KJavaApache-2.0Jun 22, 2026
grpc/grpc-go23KGoApache-2.0Jun 12, 2026
protobufjs/protobuf.js10.6KJavaScriptNOASSERTIONJun 23, 2026
netflix/ribbon4.6KJavaApache-2.0Dec 17, 2025
google/protobuf71.4KC++NOASSERTIONJun 26, 2026
twinproduction/gatus11.3KGoApache-2.0Jun 10, 2026
a library for implementing gRPC in C#
  • a java library for implementing graphql apis
  • gRPC tooling and code generation for Go
  • a lightweight library for Java WebSockets
  • a java library for making http requests