fizz-gateway-community

fizz gateway community

License

License

Categories

Categories

Unity Business Logic Libraries Game Development
GroupId

GroupId

com.github.wehotel
ArtifactId

ArtifactId

fizz-gateway-community
Last Version

Last Version

1.5.0.2
Release Date

Release Date

Type

Type

pom
Description

Description

fizz-gateway-community
fizz gateway community
Project URL

Project URL

https://github.com/wehotel/fizz-gateway-community
Source Code Management

Source Code Management

https://github.com/wehotel/fizz-gateway-community

Download fizz-gateway-community

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.wehotel/fizz-gateway-community/ -->
<dependency>
    <groupId>com.github.wehotel</groupId>
    <artifactId>fizz-gateway-community</artifactId>
    <version>1.5.0.2</version>
    <type>pom</type>
</dependency>
// https://jarcasting.com/artifacts/com.github.wehotel/fizz-gateway-community/
implementation 'com.github.wehotel:fizz-gateway-community:1.5.0.2'
// https://jarcasting.com/artifacts/com.github.wehotel/fizz-gateway-community/
implementation ("com.github.wehotel:fizz-gateway-community:1.5.0.2")
'com.github.wehotel:fizz-gateway-community:pom:1.5.0.2'
<dependency org="com.github.wehotel" name="fizz-gateway-community" rev="1.5.0.2">
  <artifact name="fizz-gateway-community" type="pom" />
</dependency>
@Grapes(
@Grab(group='com.github.wehotel', module='fizz-gateway-community', version='1.5.0.2')
)
libraryDependencies += "com.github.wehotel" % "fizz-gateway-community" % "1.5.0.2"
[com.github.wehotel/fizz-gateway-community "1.5.0.2"]

Dependencies

There are no dependencies for this project. It is a standalone project that does not depend on any other jars.

Project Modules

  • fizz-common
  • fizz-core
  • fizz-plugin
  • fizz-spring-boot-starter

English | 简体中文

Welcome to Fizz Gateway

Version Documentation License: GPL--3.0 Java CI with Maven

  • 最新QQ交流群: 512164278

Fizz Gateway是什么?

An Aggregation API Gateway in Java . Fizz Gateway 是一个基于 Java开发的微服务聚合网关,能够实现热服务编排聚合、自动授权选择、线上服务脚本编码、在线测试、高性能路由、API审核管理、回调管理等目的,拥有强大的自定义插件系统可以自行扩展,并且提供友好的图形化配置界面,能够快速帮助企业进行API服务治理、减少中间层胶水代码以及降低编码投入、提高 API 服务的稳定性和安全性。

演示环境(Demo)

http://demo.fizzgate.com/

账号/密码:admin/Aa123!

健康检查地址:http://demo.fizzgate.com/admin/health (线上版本请限制admin路径的外网访问)

API地址:http://demo.fizzgate.com/proxy/[服务名]/[API_Path]

Fizz的设计

产品特性

  • 集群管理:Fizz网关节点是无状态的,配置信息自动同步,支持节点水平拓展和多集群部署。
  • 安全授权:支持内置的key-auth, JWT, basic-auth授权方式,并且可以方便控制。
  • 服务编排:支持HTTP、Dubbo、gRPC协议热服务编排聚合能力,支持前后端编码,随时随地更新API。
  • 负载均衡:支持round-robin负载均衡。
  • 服务发现:支持从Eureka或Nacos注册中心发现后端服务器。
  • 配置中心:支持接入apollo配置中心。
  • HTTP反向代理:隐藏真实后端服务,支持 Rest API反向代理。
  • 访问策略:支持不同策略访问不同的API、配置不同的鉴权等。
  • IP黑白名单:支持配置IP黑白名单。
  • 自定义插件:强大的插件机制支持自由扩展。
  • 可扩展:简单易用的插件机制方便扩展功能。
  • 高性能:性能在众多网关之中表现优异。
  • 版本控制:支持操作的发布和多次回滚。
  • 管理后台:通过管理后台界面对网关集群进行各项配置。
  • 回调管理:支持回调的管理、订阅、重放、以及日志

基准测试

我们将Fizz与Spring官方spring-cloud-gateway进行比较,使用相同的环境和条件,测试对象均为单个节点。

  • Intel(R) Xeon(R) CPU X5675 @ 3.07GHz * 4
  • Linux version 3.10.0-327.el7.x86_64
  • 8G RAM
产品 QPS 90% Latency(ms)
直接访问后端服务 9087.46 10.76
fizz-gateway 5927.13 19.86
spring-cloud-gateway 5044.04 22.91

版本对照

  • Fizz-gateway-community: 社区版

  • Fizz-manager-professional:管理后台专业版(服务端)

  • Fizz-admin-professional:管理后台专业版(前端)

Fizz-gateway-community Fizz-manager-professional Fizz-admin-professional
v1.0.0 v1.0.0 v1.0.0
v1.1.0 v1.1.0 v1.1.0
v1.1.1 v1.1.1 v1.1.1
v1.2.0 v1.2.0 v1.2.0

从v1.3.0开始管理后台的前端和服务端合并成一个包

  • Fizz-gateway-community: 社区版

  • Fizz-manager-professional:管理后台

Fizz-gateway-community Fizz-manager-professional
v1.3.0 v1.3.0
v1.4.0 v1.4.0
v1.4.1 v1.4.1
v1.5.0 v1.5.0
v1.5.1 v1.5.1

请根据社区版的版本下载对应的管理后台版本

部署说明

详细部署教程>>>

安装依赖

安装以下依赖软件:

  • Redis 2.8或以上版本
  • MySQL 5.7或以上版本
  • Apollo配置中心 (可选)
  • Eureka或Nacos服务注册中心(可选)

依赖的安装可参考详细部署教程

安装Fizz

一、安装管理后台

从github的releases(https://github.com/wehotel/fizz-gateway-community/releases) 下载 fizz-manager-professional 安装包

管理后台(fizz-manager-professional)

说明:

  1. 以下安装步骤出现的{version}表示所使用管理后台的版本号,例如1.3.0

安装:

  1. 解压fizz-manager-professional-{version}.zip安装包
  2. 首次安装执行fizz-manager-professional-{version}-mysql.sql数据库脚本,从低版本升级至高版本选择执行update目录下对应升级脚本
  3. 修改application-prod.yml文件,将相关配置修改成部署环境的配置
  4. Linux启动 执行 chmod +x boot.sh 命令给boot.sh增加执行权限;执行 ./boot.sh start 命令启动服务,支持 start/stop/restart/status命令
  5. Windows启动 执行.\boot.cmd start 命令启动服务,支持 start/stop/restart/status命令
  6. 服务启动后访问 http://{部署机器IP地址}:8000/#/login,使用超级管理员账户admin密码Aa123!登录

二、安装fizz-gateway-community社区版

说明:

  1. 支持配置中心:apollo、nacos,支持注册中心:eureka、nacos,详细配置方法查看application.yml文件。
  2. 如果使用apollo配置中心,可把application.yml文件内容迁到配置中心(apollo上应用名为:fizz-gateway);如果不使用apollo可去掉下面启动命令里的apollo参数。
  3. 以下安装步骤出现的{version}表示所使用网关的版本号,例如1.3.0

安装方式一:脚本启动:

  1. 下载fizz-gateway-community的最新代码,修改application.yml配置文件里配置中心、注册中心、redis(redis配置需与管理后台一致)的配置,使用maven命令mvn clean package -DskipTests=true构建并把构建好的fizz-gateway-community-{version}.jar和boot.sh放同一目录
  2. 修改boot.sh脚本的apollo连接,JVM内存配置
  3. 执行 ./boot.sh start 命令启动服务,支持 start/stop/restart/status命令

安装方式二:IDE启动:

  1. 本地clone仓库上的最新代码
  2. 将项目fizz-gateway导入IDE
  3. 导入完成后设置项目启动配置及修改application.yml配置文件里配置中心、注册中心、redis(redis配置需与管理后台一致)的配置,在VM选项中加入-Denv=dev -Dapollo.meta=http://localhost:66(Apollo配置中心地址)

安装方式三:jar启动:

  1. 本地clone仓库上的最新代码,修改application.yml配置文件里配置中心、注册中心、redis(redis配置需与管理后台一致)的配置
  2. 在项目根目录fizz-gateway-community下执行Maven命令mvn clean package -DskipTests=true打包
  3. 进入target目录,使用命令java -jar -Denv=DEV -Dapollo.meta=http://localhost:66 fizz-gateway-community-{version}.jar启动服务

最后访问网关,地址形式为:http://127.0.0.1:8600/proxy/[服务名]/[API_Path]

官方技术交流群

Fizz官方技术交流①群(已满)

Fizz官方技术交流②群(已满)

Fizz官方技术交流③群:512164278

相关文章

服务器减少50%,研发效率提高86%,我们的管理型网关Fizz自研之路

简单易用的微服务聚合网关首选:Fizz Gateway安装教程

大厂推荐使用的网关解密:Fizz Gateway管理后台使用教程

架构师效率快的终极原因:Fizz Gateway网关之服务编排

高阶架构师支招:Fizz Gateway的插件开发

高阶程序员必备技能:Fizz Gateway网关的二次开发

授权说明

  1. 网关核心项目fizz-gateway-community社区版本以GNU v3的方式进行的开放,可以免费使用。

  2. 管理后台项目(fizz-manager-professional)作为商业版本仅开放二进制包 免费下载,而商业项目请联系我们([email protected])进行授权。

系统截图

com.github.wehotel

FizzGate

Versions

Version
1.5.0.2
1.5.0.1
1.5.0