easegress  by easegress-io

Cloud-native traffic orchestration system

Created 4 years ago
5,851 stars

Top 8.8% on SourcePulse

GitHubView on GitHub
Project Summary

Easegress is a cloud-native traffic orchestration system designed for high availability, performance, and extensibility. It targets developers and operators needing to manage complex traffic flows, offering features like advanced routing, resilience patterns, API management, and service mesh capabilities. The system aims to simplify traffic management in cloud-native environments.

How It Works

Easegress employs a pipeline-filter mechanism, allowing users to define custom traffic handling logic by chaining various filters. This approach supports multiple protocols (HTTP/1.1, HTTP/2, HTTP/3, MQTT) and offers rich routing rules based on paths, methods, headers, and client IPs. Its architecture emphasizes high performance through lightweight design and efficient resource utilization, coupled with built-in Raft consensus for high availability.

Quick Start & Requirements

  • Install/Run: Download pre-built binaries or build from source. Run with easegress-server.
  • Prerequisites: None explicitly stated beyond standard OS.
  • Setup: Basic proxy setup demonstrated with egctl create httpproxy.
  • Docs: Getting Started, Tutorials

Highlighted Details

  • Supports multiple protocols including HTTP/3 (QUIC) and MQTT.
  • Offers advanced resilience patterns like CircuitBreaker, RateLimiter, and Retry.
  • Integrates with Kubernetes as an Ingress Controller and supports WebAssembly for custom filters.
  • Includes built-in OpenTelemetry for distributed tracing and AI integration features for LLM proxying.

Maintenance & Community

  • Active community via Slack Workspace.
  • Contributions welcomed following CNCF Code of Conduct.
  • Project appears to be actively developed.

Licensing & Compatibility

  • Licensed under Apache 2.0.
  • Permissive license suitable for commercial use and integration with closed-source systems.

Limitations & Caveats

The project is described as a "traffic orchestration system" and "service mesh," implying a broad scope that might require significant configuration for specific use cases. Detailed performance benchmarks are not immediately visible in the README.

Health Check
Last Commit

22 hours ago

Responsiveness

1 day

Pull Requests (30d)
21
Issues (30d)
1
Star History
6 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.