[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-10318":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":17,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":18,"rankGlobal":10,"rankLanguage":10,"license":19,"archived":20,"fork":20,"defaultBranch":21,"hasWiki":22,"hasPages":20,"topics":23,"createdAt":10,"pushedAt":10,"updatedAt":35,"readmeContent":36,"aiSummary":37,"trendingCount":16,"starSnapshotCount":16,"syncStatus":38,"lastSyncTime":39,"discoverSource":40},10318,"manba","fagongzi\u002Fmanba","fagongzi","HTTP API Gateway","",null,"Go",3320,755,181,14,0,1,30.64,"Apache License 2.0",false,"master",true,[24,25,26,27,28,29,30,31,32,33,34],"api","api-gateway","backend-apis","circuit-breaker","etcd","gateway","go","golang","microservice","proxy","traffic-control","2026-06-12 02:02:20","\u003Cimg src=\".\u002Fimages\u002Flogo.png\" height=80>\u003C\u002Fimg>\n\n[![Gitter](https:\u002F\u002Fbadges.gitter.im\u002Ffagongzi\u002Fgateway.svg)](https:\u002F\u002Fgitter.im\u002Ffagongzi\u002Fgateway?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)\n[![Build Status](https:\u002F\u002Fapi.travis-ci.org\u002Ffagongzi\u002Fgateway.svg)](https:\u002F\u002Ftravis-ci.org\u002Ffagongzi\u002Fgateway)\n[![Go Report Card](https:\u002F\u002Fgoreportcard.com\u002Fbadge\u002Fgithub.com\u002Ffagongzi\u002Fgateway)](https:\u002F\u002Fgoreportcard.com\u002Freport\u002Fgithub.com\u002Ffagongzi\u002Fgateway)\n\nManba\u002F[简体中文](README_CN.md)\n-------\nManba is a restful API gateway based on HTTP, which can be used as a unified API access layer.\n\n## Tutorial\nA very detailed tutorial for beginners. [Link](.\u002Fdocs\u002Ftutorial.md)\nBelow are video tutorials.\nBasics:\n[![](https:\u002F\u002Fimg.youtube.com\u002Fvi\u002F2qMWmdcw7o4\u002F0.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=2qMWmdcw7o4)\n\nAlternative bilibili.com video link: https:\u002F\u002Fwww.bilibili.com\u002Fvideo\u002Fav73432556\u002F\n\nRouting Configuration Tutorial:\n[![](https:\u002F\u002Fimg.youtube.com\u002Fvi\u002FD1pI6opB_ks\u002F0.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=D1pI6opB_ks)\n\nAlternative bilibili.com video link: https:\u002F\u002Fwww.bilibili.com\u002Fvideo\u002Fav73432836\u002F\n\nJWT Plugin Configuration Tutorial:\n[![](https:\u002F\u002Fimg.youtube.com\u002Fvi\u002FsLb16YDSlBs\u002F0.jpg)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=sLb16YDSlBs)\n\nAlternative bilibili.com video link: https:\u002F\u002Fwww.bilibili.com\u002Fvideo\u002Fav73433002\u002F\n\n## Attention\nPlease make sure your Go version is 1.10 or above. Otherwise, **undefined \"math\u002Frand\".Shuffle** error will occur when compiling. [StackOverFlow Link](https:\u002F\u002Fstackoverflow.com\u002Fquestions\u002F52172794\u002Fgetting-undefined-rand-shuffle-in-golang)\n\n\n## Features\n* Traffic Control (on Server or API)\n* Circuit Breaker (on Server or API)\n* Load Balance\n* Service Discovery\n* Plugin\n* Routing (Divert Traffic, Duplicate Traffic)\n* API Aggregation\n* API Argument Check\n* API Access Control (White and Black List)\n* API Default Return Value\n* API Customized Return Value\n* API Result Cache\n* JWT Authorization\n* API Metric Imports Prometheus\n* API Retry After Failure\n* Backend Server Health Check\n* Open Management of API (GRPC、Restful)\n* Websocket Support\n* Online Data Migration Support\n\n## Docker\n\nThe following content requires reader some knowledge of Docker. You can refer to [this book][2], or check out [the official documentation][1]。\n\n### Available Docker Images\n* `fagongzi\u002Fproxy`\n\n   proxy component, `production ready`\n\n* `fagongzi\u002Fapiserver`\n\n   apiserver component, `production ready`\n\n### Quick start with docker-compose\n```bash\ndocker-compose up -d\n```\n\nUse `http:\u002F\u002F127.0.0.1:9093\u002Fui\u002Findex.html` to access `apiserver`\n\nUse `http:\u002F\u002F127.0.0.1` to access to your API\n\n## Architecture\n![](.\u002Fimages\u002Farch.png)\n\n## Web UI\nAvailable Manba Web UI Projects：\n* [Official](https:\u002F\u002Fgithub.com\u002Ffagongzi\u002Fgateway-ui-vue)\n* [gateway_ui (v2.x ONLY)](https:\u002F\u002Fgithub.com\u002Farchfish\u002Fgateway_ui)\n* [gateway_admin_ui](https:\u002F\u002Fgithub.com\u002Fwilehos\u002Fgateway_admin_ui)\n\n## Components\nManba consists of `proxy` and `apiserver`.\n\n### Proxy\nProxy is a component which provides service to clients. Proxy is a stateless node. Multiple proxies can be deployed to handle huge traffic.\n[More](.\u002Fdocs\u002Fproxy.md).\n\n### ApiServer\nApiServer provides GRPC and Restful to manage metadata for users. ApiServer integrates  official Web UI.\n[More](.\u002Fdocs\u002Fapiserver.md).\n\n## Concepts of Manba\n### Server\nA server is a a real backend service.\n[More](.\u002Fdocs\u002Fserver.md).\n\n### Cluster\nCluster consists of servers which provide the same service. A server is chosen to handle a specific request based on a load balance strategy.\n[More](.\u002Fdocs\u002Fcluster.md).\n\n### API\nAPI is a key concept of Manba. We can manage external APIs in Manba and their distribution rules, aggregation rules and URL matching rules.\n[More](.\u002Fdocs\u002Fapi.md).\n\n### Routing\nRouting 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.\n[More](.\u002Fdocs\u002Frouting.md).\n\n## Getting Involved\n[More](.\u002Fdocs\u002Fbuild.md)\n\n## WeChat\n![](.\u002Fimages\u002Fqr.jpg)\n\n[1]: https:\u002F\u002Fdocs.docker.com\u002F \"Docker Documentation\"\n[2]: https:\u002F\u002Fgithub.com\u002Fyeasy\u002Fdocker_practice \"docker_practice\"\n","Manba 是一个基于HTTP的RESTful API网关，用作统一的API访问层。它支持流量控制、断路器、负载均衡、服务发现等功能，并提供插件扩展能力。Manba具备API聚合、参数检查、访问控制（黑白名单）、结果缓存等特性，还集成了JWT认证和Prometheus监控指标导入。此外，Manba提供了丰富的路由配置选项，包括流量分流与复制，以及后端服务器健康检查。该网关适用于需要对微服务架构中的API进行集中管理和保护的企业级应用场景。使用Go语言开发，确保了高性能和良好的并发处理能力。",2,"2026-06-11 03:27:47","top_topic"]