All Projects → fagongzi → Manba

fagongzi / Manba

Licence: apache-2.0
HTTP API Gateway

Programming Languages

go
31211 projects - #10 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to Manba

Tree Gateway
This is a full featured and free API Gateway
Stars: ✭ 160 (-94.67%)
Mutual labels:  api, microservice, api-gateway, proxy, gateway, circuit-breaker
Annon.api
Configurable API gateway that acts as a reverse proxy with a plugin system.
Stars: ✭ 306 (-89.8%)
Mutual labels:  api, api-gateway, proxy, gateway
Goku Api Gateway
A Powerful HTTP API Gateway in pure golang!Goku API Gateway (中文名:悟空 API 网关)是一个基于 Golang开发的微服务网关,能够实现高性能 HTTP API 转发、服务编排、多租户管理、API 访问权限控制等目的,拥有强大的自定义插件系统可以自行扩展,并且提供友好的图形化配置界面,能够快速帮助企业进行 API 服务治理、提高 API 服务的稳定性和安全性。
Stars: ✭ 2,773 (-7.57%)
Mutual labels:  api, api-gateway, proxy, gateway
Dubbo Go Pixiu
Based on the proxy gateway service of dubbo-go, it solves the problem that the external protocol calls the internal Dubbo cluster. At present, it supports HTTP and gRPC[developing].
Stars: ✭ 124 (-95.87%)
Mutual labels:  microservice, api-gateway, proxy, gateway
Tenso
Tenso is an HTTP REST API framework
Stars: ✭ 167 (-94.43%)
Mutual labels:  api, microservice, api-gateway, gateway
Apilogs
Easy logging and debugging for Amazon API Gateway and AWS Lambda Serverless APIs
Stars: ✭ 216 (-92.8%)
Mutual labels:  api, api-gateway, gateway
Apioak
Full Lifecycle Management API Gateway.
Stars: ✭ 335 (-88.83%)
Mutual labels:  microservice, api-gateway, gateway
Janus
An API Gateway written in Go
Stars: ✭ 2,249 (-25.03%)
Mutual labels:  api, api-gateway, proxy
Service Proxy
API gateway for REST and SOAP written in Java.
Stars: ✭ 355 (-88.17%)
Mutual labels:  api, api-gateway, proxy
Awesome Ocelot
A curated list of awesome ocelot books, courses, trainings, conference talks, blogs and most inspiring open source contributors
Stars: ✭ 386 (-87.13%)
Mutual labels:  api, microservice, api-gateway
Orange
OpenResty/Nginx Gateway for API Monitoring and Management.
Stars: ✭ 2,208 (-26.4%)
Mutual labels:  api, proxy, gateway
Aws Lambda Fastify
Insipired by aws-serverless-express to work with Fastify with inject functionality.
Stars: ✭ 190 (-93.67%)
Mutual labels:  api, api-gateway, proxy
Rocky
Full-featured, middleware-oriented, programmatic HTTP and WebSocket proxy for node.js
Stars: ✭ 357 (-88.1%)
Mutual labels:  microservice, proxy, gateway
Up
Up focuses on deploying "vanilla" HTTP servers so there's nothing new to learn, just develop with your favorite existing frameworks such as Express, Koa, Django, Golang net/http or others.
Stars: ✭ 8,439 (+181.3%)
Mutual labels:  api, microservice, api-gateway
Altair
Lightweight and Robust API Gateway written in Go
Stars: ✭ 34 (-98.87%)
Mutual labels:  api, microservice, api-gateway
Gravitee Gateway
Gravitee.io - API Management - OpenSource API Gateway
Stars: ✭ 1,123 (-62.57%)
Mutual labels:  api, api-gateway, gateway
Fusio
Open source API management platform
Stars: ✭ 946 (-68.47%)
Mutual labels:  api, microservice, api-gateway
Esp V2
A service proxy that provides API management capabilities using Google Service Infrastructure.
Stars: ✭ 120 (-96%)
Mutual labels:  api, api-gateway, proxy
Lndhub
Wrapper for Lightning Network Daemon. It provides separate accounts and trust minimization for end users
Stars: ✭ 203 (-93.23%)
Mutual labels:  api, microservice
Flaresolverr
Proxy server to bypass Cloudflare protection
Stars: ✭ 241 (-91.97%)
Mutual labels:  api, proxy

Gitter Build Status Go Report Card

Manba/简体中文

Manba is a restful API gateway based on HTTP, which can be used as a unified API access layer.

Tutorial

A very detailed tutorial for beginners. Link Below are video tutorials. Basics:

Alternative bilibili.com video link: https://www.bilibili.com/video/av73432556/

Routing Configuration Tutorial:

Alternative bilibili.com video link: https://www.bilibili.com/video/av73432836/

JWT Plugin Configuration Tutorial:

Alternative bilibili.com video link: https://www.bilibili.com/video/av73433002/

Attention

Please make sure your Go version is 1.10 or above. Otherwise, undefined "math/rand".Shuffle error will occur when compiling. StackOverFlow Link

Features

  • Traffic Control (on Server or API)
  • Circuit Breaker (on Server or API)
  • Load Balance
  • Service Discovery
  • Plugin
  • Routing (Divert Traffic, Duplicate Traffic)
  • API Aggregation
  • API Argument Check
  • API Access Control (White and Black List)
  • API Default Return Value
  • API Customized Return Value
  • API Result Cache
  • JWT Authorization
  • API Metric Imports Prometheus
  • API Retry After Failure
  • Backend Server Health Check
  • Open Management of API (GRPC、Restful)
  • Websocket Support
  • Online Data Migration Support

Docker

The following content requires reader some knowledge of Docker. You can refer to this book, or check out the official documentation

Available Docker Images

  • fagongzi/proxy

    proxy component, production ready

  • fagongzi/apiserver

    apiserver component, production ready

Quick start with docker-compose

docker-compose up -d

Use http://127.0.0.1:9093/ui/index.html to access apiserver

Use http://127.0.0.1 to access to your API

Architecture

Web UI

Available Manba Web UI Projects:

Components

Manba consists of proxy and apiserver.

Proxy

Proxy is a component which provides service to clients. Proxy is a stateless node. Multiple proxies can be deployed to handle huge traffic. More.

ApiServer

ApiServer provides GRPC and Restful to manage metadata for users. ApiServer integrates official Web UI. More.

Concepts of Manba

Server

A server is a a real backend service. More.

Cluster

Cluster consists of servers which provide the same service. A server is chosen to handle a specific request based on a load balance strategy. More.

API

API is a key concept of Manba. We can manage external APIs in Manba and their distribution rules, aggregation rules and URL matching rules. More.

Routing

Routing is a route strategy. Cookie, Querystring, Header and Path in HTTP Request dictate traffic distribution and traffic duplication to a specific cluster. Through this feature, AB test and online traffic divertion is achieved. More.

Getting Involved

More

WeChat

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].