小豹API网关

统一解决:认证、鉴权、安全、流量管控、缓存、服务路由,协议转换、服务编排、熔断、灰度发布、监控报警等

为什么选择小豹API网关?

相比其他API网关,小豹API网关是更加适合作为企业的OpenAPI网关、微服务网关、API管理服务平台。小豹API网关 拥有丰富的功能,稳定、高效、以私有云的部署方式、同时支持基于java的插件方式,这些都是客户选择我们的原因。


作为OpenAPI的网关,小豹API网关有什么优势?

实现OpenAPI通用的鉴权、授权、调用次数控制等,后端API服务专注于API的业务实现,减少了API的开发工作量;小豹API网关提供接口供实现合作伙伴门户。


小豹API网关性能怎么样?

小豹API网关相比无网关时只会增加请求调用10ms以下,基础做到不损耗性能。同时API网关基于横向扩展的架构,可以在面临压力的时候通过横向扩展来支持高并发访问。
举例一个我们的压力测试场景:后端API 响应时间平均100ms,直接访问后端时TPS为1400。 API网关在2CPU、8G内存配置的普通PC服务器下,加上网关后TPS为1320,各API的访问时间较直连访问增加10ms左右。
关于压力测试,我们API网关核心评估的不是最大的TPS是多少,而是加上了API网关后会不会让原来后端API的TPS下降,以及API网关自身增加的API调用的消耗时间多不多。我们的产品的TPS下降在5%左右,增加时间消耗在10ms以下。
我们有大量的企业架构的实践,我们创始团队以前就是平安科技的公共平台架构师、产品经理哈,对效率有保障。


如何做到的横向扩展?

系统中所有的配置数据都存储在mysql数据为中,所有的网关核心节点的运行期数据都在内存和分布式redis缓存中,监控系统独立运行,因此在这样的架构下网关核心节点是可以任意多台进行部署的。具体可参考架构


是否可以开发插件以增加功能?

系统支持开发新的插件上传到平台,并配置到API或API分组上。 插件基于java开发,在开发好后将程序打包为jar包后上传。 具体开发插件的方式将查询产品文档。


对后端的微服务架构有没有限制?比如dubbo ,spring cloud ,eureka是不是都可以用?

目前产品通过http rest进行接口暴露,后端服务提供http rest的形式进行注册。如果要支持dubbo、spring cloud需要进行二次开发,我们的产品基于组件式架构的,二次开发只需要增加路由组件,不需要更改系统核心逻辑。
目前产品不支持eureka服务注册。我们的产品更多的是直接提供给企业使用,而eureka不太适合企业的管理需求,不推荐使用自动注册和自动服务发现。如果企业一定要实现需要进行二次开发。


开源版本问题

开源社区版暂未发布,可能18年底才会出来。开源版本也不会适合企业的很多使用场景使用,开源是对系统的核心网关框架开源,但是开源版本不提供图形化管理界面、高可用性、服务器水平扩展、监控中心、分布式缓存、自定义组件开发等。
所以如果是企业使用还是推荐使用企业版。


为什么要用企业版而不用开源的zuul或者kong?

1、为什么不用Zuul
zuul是spring cloud中的开源API网关组件
• zuul只有核心网关部分,没有管理、监控上可以直接使用,企业如果要二次开发工作量大,且不易成熟。
• 相比成熟的企业级产品,zuul总体功能上是缺少的,zuul只是核心架构,api网关基本上很多功能都需要二次开发才能使用。如: 认证、授权、安全、流量管控、缓存、熔断、灰度。
• 小豹网关作为企业产品还提供了作为OpenAPI网关需求的功能。 如:支持合伙伙伴门户搭建的API、合伙伙伴账户功能。
• zuul性能不够高。由于运行于web容器之上,没有直接运行于netty这样的非阻塞底层技术的性能高;以及内部部分代码问题引起的性能问题。大家可以看到zuul官方也会在新一代的zuul中使用非阻塞架构。

2、为什么不用Kong
kong是商业性的API网关,是相对成熟的。
• kong基于ngnix+open resty+lua 的架构,但是一个企业要基本这个架构去维护代码比基于java的小豹API网关更困难。
• 小豹API网关在中国市场拥有更接近客户的优秀,可以更好地服务于客户。
• kong也不具有OpenAPI网关的合作伙伴相关的功能。如:如:支持合伙伙伴门户搭建的API、合伙伙伴账户功能。


小豹API网关和ESB有什么区别?

1、重点关注方向不同
◦ API网注重认证、鉴权、安全、流量管控、缓存、服务路由,协议转换、服务编排、熔断、灰度发布、监控报警等 ◦ ESB注重协议转换、数据转换、服务编排、服务路由、消息机制等

2、小豹API网关有而ESB一般没有的功能。
◦ 作为企业对外的OpenAPI网关的功能,如:支持合伙伙伴门户搭建的API、合伙伙伴账户功能。
◦ 基于token认证的JWT规范、协议mock等,对移动端开发的支持。
◦ 支持企业实施微服务架构,通过自动API纪录功能支持历史业务系统的平滑迁移到API网关。
◦ 灰度发布。

3、各种使用场景下的差别
• 对于企业开放API,OpenAPI网关也是必要组件。ESB不适合。
• 对于微服务架构,微服务网关是大多数架构必要组件。ESB不适合。
• 对于API服务治理。我们认为如果一个企业没有彻底实施微服务,那么就是在做API服务治理。因应微服务架构的技术发展潮流, 一个企业的API的管理也应该使用API网关,而不是ESB。


如何获取技术支持?

加官方QQ群可以获取技术支持,QQ群号:244054462。