# weibocom/motan

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/weibocom-motan).**

5,878 stars · 1,748 forks · Java · NOASSERTION

## Links

- GitHub: https://github.com/weibocom/motan
- awesome-repositories: https://awesome-repositories.com/repository/weibocom-motan.md

## Description

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 distributed service coordination through synchronous and asynchronous remote procedure calls. It also implements high availability service routing to ensure stability across different data centers and manages the exchange of data between services written in different programming languages.

## Tags

### Networking & Communication

- [Cross-Language RPC Frameworks](https://awesome-repositories.com/f/networking-communication/cross-language-rpc-frameworks.md) — Provides a high-performance framework for remote procedure calls across different programming languages.
- [High Availability Routing](https://awesome-repositories.com/f/networking-communication/high-availability-routing.md) — Ensures high availability by directing traffic between clusters based on network proximity and configuration.
- [Weighted Load Balancing](https://awesome-repositories.com/f/networking-communication/load-balancers/weighted-load-balancing.md) — Distributes incoming requests across instances using weighted scheduling and datacenter-aware logic.
- [Remote Procedure Calls](https://awesome-repositories.com/f/networking-communication/remote-procedure-calls.md) — Executes functions on distributed servers as if they were local using synchronous and asynchronous patterns. ([source](https://github.com/weibocom/motan#readme))
- [Cross-Language Service Communication](https://awesome-repositories.com/f/networking-communication/cross-language-service-communication.md) — Enables services written in different languages to exchange data and trigger functions. ([source](https://github.com/weibocom/motan/blob/master/README.md))
- [Cross-Datacenter Scheduling](https://awesome-repositories.com/f/networking-communication/load-balancers/weighted-load-balancing/cross-datacenter-scheduling.md) — Distributes requests across multiple clusters and data centers using weighted scheduling for high availability.
- [Service Traffic Routing](https://awesome-repositories.com/f/networking-communication/network-infrastructure-routing/network-routing-traffic-management/network-traffic-management/service-traffic-routing.md) — Directs requests using custom load balancing and traffic adjustments to optimize service scheduling. ([source](https://github.com/weibocom/motan/wiki/zh_overview))
- [Cross-Cluster Traffic Steering](https://awesome-repositories.com/f/networking-communication/traffic-routing-tools/in-cluster-traffic-steering/cross-cluster-traffic-steering.md) — Routes requests across multiple clusters using weighted balancing and cross-datacenter logic. ([source](https://github.com/weibocom/motan/blob/master/README.md))

### Development Tools & Productivity

- [Network Service Discovery](https://awesome-repositories.com/f/development-tools-productivity/component-discovery/automatic/network-service-discovery.md) — Locates and organizes available service instances across a distributed network cluster using configuration components. ([source](https://github.com/weibocom/motan/wiki/zh_overview))

### DevOps & Infrastructure

- [Service Registry Integrations](https://awesome-repositories.com/f/devops-infrastructure/microservice-traffic-management/service-registry-integrations.md) — Integrates with external discovery systems to automatically track and locate available service instances.
- [Service Meshes](https://awesome-repositories.com/f/devops-infrastructure/service-meshes.md) — Functions as a networking layer that manages service discovery, request routing, and traffic distribution across server clusters.
- [High Availability Services](https://awesome-repositories.com/f/devops-infrastructure/high-availability-services.md) — Optimizes resource handling and connection stability to maintain service uptime during high-load scenarios. ([source](https://github.com/weibocom/motan#readme))

### Software Engineering & Architecture

- [Interface Definition Languages](https://awesome-repositories.com/f/software-engineering-architecture/interface-definition-languages.md) — Uses a shared schema to generate typed client and server stubs for cross-language communication.
- [Service Discovery Registries](https://awesome-repositories.com/f/software-engineering-architecture/service-discovery-registries.md) — Implements a service discovery registry to automatically locate and link available service instances within a distributed network.
- [Service Instance Discovery](https://awesome-repositories.com/f/software-engineering-architecture/service-discovery-registries/service-instance-lifecycle-management/service-instance-discovery.md) — Automatically finds and links to available service instances operating within a cluster. ([source](https://github.com/weibocom/motan#readme))
- [Distributed Service Coordination](https://awesome-repositories.com/f/software-engineering-architecture/distributed-service-coordination.md) — Coordinates work across multiple servers using synchronous and asynchronous remote procedure call patterns.
- [Request-Response Pattern Support](https://awesome-repositories.com/f/software-engineering-architecture/request-response-pattern-support.md) — Implements non-blocking remote procedure calls to coordinate work between servers while improving throughput.
