# hyperway **Repository Path**: yangzhen94/hyperway ## Basic Information - **Project Name**: hyperway - **Description**: go网关 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-09-16 - **Last Updated**: 2024-08-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 必读!!! ## 模块划分 | package | 模块描述 | 描述 | |------------------------------|------------------|----------------------------------------------------- | logger | 日志 | 集成Zap、lumberjack日志组件 | config | 配置中心 | 集成viper、apollo组件 | constant | 常量及枚举 | | helper | 工具类 | | component | 核心组件 | 组件生命周期、抽象上下文、web组件路由前过滤器、web组件路由后处理前过滤器、服务注册发现、服务适配器、服务启动 | impl | 核心组件实现 | web框架适配、服务注册和发现、过滤器 | serialize | 序列化实现 | 序列化实现,如json序列化 | transporter | 请求转发 | 如:http请求转发、dubbo请求转发 | server | 服务配置 | 服务配置,适配器、过滤器、注册发现等组的装配 | cmd | 服务启动 | cmd启动入口,配置环境变量的获取,同时也是服务启动的入口 # 组件 ## cmd组件 ## 日志组件 zap、lumberjack ## 配置组件 viper、apollo ## 链路追踪组件 go2sky ## Web框架组件 echo ## 限流组件 hystrix # 环境配置 GoLand -> Perferences -> Go -> Go Modules -> Environment
配置:GOPROXY=https://goproxy.io,direct GoLand -> Perferences -> Go -> GoRoot
配置:17 # 编译 在main.go所在目录的终端下,执行如下命令 ```shell go mod tidy go clean go build ``` # 运行 ## 日志 ### 日志输出目录 程序启动时会在main文件夹下新建logs目录,如果没有新建目录的权限会报错 1. 日志输出目录为logs,项目运行时会创建此文件夹,如果项目没有debug调试的权限会报错,如在mac系统下运行,需要有权限 2. dubbo-go在服务启动时会加载日志配置文件,当配置的日志输出路径不存在时会报错,如:dubbo-log.yml,当logs文件夹不存在时会启动报错 ## 启动命令 ### 必须 environment中添加如下环境配置: ```shell DUBBO_GO_CONFIG_PATH=./conf.d/dubbo/dubbogo.yaml ``` 注意: 1. Working directory,需要设置为main.go所在的目录 2. 环境变量注意不要有空格 ### 可选 environment中添加如下环境配置(已配置默认值),配置文件必须在conf.d目录下 ```shell CONFIG_NAMES=application,go2sky,logger,consumer ``` ## 端口 ### 6883 网关端口 ### 7883 网关管理端口