# HttpPostman
**Repository Path**: davidmr/autorouter
## Basic Information
- **Project Name**: HttpPostman
- **Description**: HttpPostman自动路由
- **Primary Language**: Java
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 5
- **Created**: 2018-01-21
- **Last Updated**: 2020-12-18
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# autorouter自动路由组件
## 说明
自动路由组件,根据访问域名自动路由到真实服务上,无需事先配置,启动即可发现服务。当某一真实路径不可用时,自动移除不可用。支持轮询,直到请求成功或者全部不成功(比较耗时)。支持配置超时时间。
主要特性如下:
* 路由模块使用node.js,基于事件驱动,最大支持每秒24000次请求,相比tomcat、nginx拥有更高的性能
* 使用zookeeper作为服务注册中心,启动将注册信息加载到内存,并通过watcher机制进行同步,最大化减少路由模块响应耗时
* 支持权重策略,解决硬件差异下公平路由
* 支持GET、POST、PUT、DELETE
* 支持表单提交和rest
* 支持返回json、xml
## 模块
主要分两个部分,路由模块和sdk模块。
路由模块负责处理转发所有请求。
sdk负责注册服务信息。
中间依赖redis做注册中心。
## 声明:
* sdk目前仅支持java,其他语言请自行拓展
* 现已测试各类接口程序,但未测试返回页面的门户、管理系统等(不建议此类场景使用)
## 最佳实践
* 适合http接口类应用
* 适合k8s或任何自动伸缩导致接口应用IP经常变化的环境下使用
* 目标不是替代任何软件,而是支持动态链接到可用的接口程序
安装及更多文档见[WIKI](https://my.oschina.net/shyloveliyi/blog/1606161)