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

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
Snailclimb avatar

Snailclimb/guide-rpc-framework

0
View on GitHub↗
4,416 stars·2,165 forks·Java·14 viewsgitee.com/SnailClimb/guide-rpc-framework↗

Guide Rpc Framework

This is a remote procedure call framework built on Netty for asynchronous communication between distributed services. It provides the infrastructure necessary to execute remote procedure calls across a network, allowing clients and servers to interact without blocking.

The framework utilizes Zookeeper for service registration and dynamic discovery, ensuring that service providers can be located automatically at runtime. It includes a service versioning manager to organize and track different iterations of service interfaces, enabling side-by-side deployments of multiple versions.

The system implements binary serialization via Kryo to convert Java objects into compact byte streams for network transport. It also incorporates a distributed load balancer that routes requests across providers using random or round-robin strategies, and uses heartbeat-based monitoring to track service availability and connection health.

Features

  • Remote Procedure Calls - Provides a high-performance framework for executing remote procedures as if they were local function calls.
  • Complex Data Serialization - Serializes complex Java objects into efficient byte streams for fast transmission over the network.
  • Data Serialization Formats - Implements binary serialization formats to move Java objects efficiently across the network.
  • Serialization Libraries - Utilizes the Kryo library for converting Java objects into binary formats for network transport.
  • Service Instance Registrations - Utilizes Zookeeper to announce service provider locations and enable dynamic discovery during runtime.
  • Binary Serialization - Employs Kryo to convert complex Java objects into compact binary streams for efficient network transmission.
  • Netty-Based Servers - Leverages Netty's event-driven non-blocking I/O model for high-concurrency request and response processing.
  • RPC Frameworks - Provides a high-performance RPC framework built on Netty for asynchronous distributed communication.
  • Traffic Distribution - Distributes RPC requests across multiple available providers using random or round-robin selection strategies.
  • Dynamic Service Discovery - Provides mechanisms for locating available service provider instances via a centralized Zookeeper registry.
  • Service Discovery Registries - Uses Zookeeper to maintain a dynamic registry of service providers for automatic runtime discovery.
  • Registry Heartbeat Monitoring - Uses periodic heartbeat signals to track service availability and evict unresponsive nodes from the registry.
  • Proxy-Based Remote Invocation - Utilizes dynamic proxies and Java reflection to transparently route local method calls to remote servers.
  • Distributed Load Balancing - Routes RPC requests across a distributed pool of providers to optimize resource utilization.
  • Load Balancing Strategies - Distributes incoming RPC requests across available providers using random and round-robin selection strategies.
  • Interface Versioning - Organizes and tracks different versions of service interfaces to allow side-by-side deployments.
  • Service Version Management - Manages multiple iterations of service interfaces to enable side-by-side deployments of different versions.
  • Load Balancers - Balances network traffic across multiple service instances using random or round-robin rotation.
  • Asynchronous Service Invocations - Implements non-blocking remote calls that return futures to enable asynchronous processing.
  • Service Versioning Strategies - Provides a service versioning manager to organize and track different iterations of service interfaces for side-by-side deployment.
  • RPC Connection Heartbeats - Implements heartbeat-based monitoring to track service availability and connection health between distributed nodes.
  • Network Connectivity Monitoring - Tracks the real-time online status of remote service providers using periodic heartbeat signals.
  • Service Availability Checkers - Uses heartbeat detection to monitor the availability and operational status of remote service providers.
  • Provider Version Matching - Groups services and tracks version numbers to ensure clients connect to the correct iteration of a provider.

Star history

Star history chart for snailclimb/guide-rpc-frameworkStar history chart for snailclimb/guide-rpc-framework

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does snailclimb/guide-rpc-framework do?

This is a remote procedure call framework built on Netty for asynchronous communication between distributed services. It provides the infrastructure necessary to execute remote procedure calls across a network, allowing clients and servers to interact without blocking.

What are the main features of snailclimb/guide-rpc-framework?

The main features of snailclimb/guide-rpc-framework are: Remote Procedure Calls, Complex Data Serialization, Data Serialization Formats, Serialization Libraries, Service Instance Registrations, Binary Serialization, Netty-Based Servers, RPC Frameworks.

What are some open-source alternatives to snailclimb/guide-rpc-framework?

Open-source alternatives to snailclimb/guide-rpc-framework include: apache/dubbo — Dubbo is a Java RPC framework and microservices governance platform designed for high-performance remote procedure… doocs/advanced-java — This project is a comprehensive Java backend engineering guide and technical reference focused on high-concurrency… apache/dubbo-spring-boot-project — This project is an integration framework that bootstraps Apache Dubbo remote procedure call services within Spring… netflix/eureka — Eureka is a service registry and discovery server that serves as a coordination tool for microservices. It provides a… apache/brpc — brpc is a high-performance C++ RPC framework and network programming library designed for building distributed… neuecc/magiconion — MagicOnion is a remote procedure call framework for the .NET platform and Unity. It functions as a binary API protocol…

Open-source alternatives to Guide Rpc Framework

Similar open-source projects, ranked by how many features they share with Guide Rpc Framework.
  • 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

    Javadistributed-systemsdubboframework
    View on GitHub↗41,519
  • doocs/advanced-javadoocs avatar

    doocs/advanced-java

    78,987View on GitHub↗

    This project is a comprehensive Java backend engineering guide and technical reference focused on high-concurrency design, distributed systems, and microservices architecture. It provides detailed strategies for decomposing monolithic applications, managing service discovery, and implementing the architectural patterns required for scalable backend environments. The repository distinguishes itself through an extensive collection of big data algorithmic references and database scaling strategies. It covers memory-efficient techniques for analyzing massive datasets, such as Top-K element extrac

    Javaadvanced-javadistributed-search-enginedistributed-systems
    View on GitHub↗78,987
apache/dubbo-spring-boot-projectapache avatar

apache/dubbo-spring-boot-project

5,389View on 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
View on GitHub↗5,389
  • netflix/eurekaNetflix avatar

    Netflix/eureka

    12,712View on GitHub↗

    Eureka is a service registry and discovery server that serves as a coordination tool for microservices. It provides a distributed service registry where instances record their network locations and health status to enable dynamic communication without the use of hardcoded addresses. The system functions as a client-side load balancing framework, providing location data to consumers so they can distribute network traffic across available instances. It employs a heartbeat-based health monitor to track instance availability and automatically removes unresponsive nodes from the registry to manage

    Java
    View on GitHub↗12,712
  • See all 30 alternatives to Guide Rpc Framework→