Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 2acd7cd8d1 | |||
| 6cc9b84324 |
30
Dockerfile
30
Dockerfile
@@ -1,43 +1,23 @@
|
|||||||
# 多阶段构建 - 第一阶段:编译(使用已安装的镜像)
|
# 阶段1: 构建
|
||||||
FROM golang:1.26-alpine3.23 AS builder
|
FROM golang:alpine AS builder
|
||||||
|
|
||||||
RUN apk add --no-cache git ca-certificates tzdata
|
RUN apk add --no-cache git ca-certificates tzdata
|
||||||
|
|
||||||
|
ENV TZ=Asia/Shanghai
|
||||||
|
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
|
||||||
|
|
||||||
ENV GO111MODULE=on
|
ENV GO111MODULE=on
|
||||||
ENV GOPROXY=https://goproxy.cn,direct
|
ENV GOPROXY=https://goproxy.cn,direct
|
||||||
ENV CGO_ENABLED=0
|
ENV CGO_ENABLED=0
|
||||||
ENV GOTOOLCHAIN=auto
|
ENV GOTOOLCHAIN=auto
|
||||||
ENV GOPRIVATE=gitea.com/red-future/common
|
|
||||||
|
|
||||||
# 配置git使用私有Gitea仓库(带Token认证)
|
|
||||||
RUN git config --global url."http://x-token-auth:619679cd366aefea3a50f0622d842a41f2209e08595767bba49c3836ef57d415@116.204.74.41:3000/red-future/common.git".insteadOf "https://gitea.com/red-future/common.git" && \
|
|
||||||
git config --global credential.helper store
|
|
||||||
|
|
||||||
WORKDIR /build
|
WORKDIR /build
|
||||||
|
|
||||||
# 复制父目录的 common 模块(因为 go.mod 中使用了本地 replace)
|
|
||||||
#COPY ../common /build/common
|
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
||||||
RUN go mod download && go mod tidy
|
RUN go mod download && go mod tidy
|
||||||
|
|
||||||
RUN go build -ldflags="-s -w" -o main ./main.go
|
RUN go build -ldflags="-s -w" -o main ./main.go
|
||||||
|
|
||||||
# 第二阶段:运行
|
|
||||||
FROM alpine:3.23
|
|
||||||
|
|
||||||
ENV TIME_ZONE=Asia/Shanghai
|
|
||||||
RUN apk add --no-cache ca-certificates tzdata && \
|
|
||||||
ln -sf /usr/share/zoneinfo/$TIME_ZONE /etc/localtime
|
|
||||||
|
|
||||||
WORKDIR /app
|
|
||||||
|
|
||||||
# 复制编译好的二进制文件
|
|
||||||
COPY --from=builder /build/main .
|
|
||||||
COPY --from=builder /build/config.yml ./
|
|
||||||
|
|
||||||
# 创建日志目录
|
|
||||||
RUN mkdir -p /logs /app/resource/log/run /app/resource/log/server
|
|
||||||
|
|
||||||
EXPOSE 8000
|
EXPOSE 8000
|
||||||
|
|
||||||
|
|||||||
166
config-dev.yml
166
config-dev.yml
@@ -1,166 +0,0 @@
|
|||||||
server:
|
|
||||||
address : ":8000"
|
|
||||||
name: "gateway"
|
|
||||||
rate:
|
|
||||||
limit: 800
|
|
||||||
burst: 2000
|
|
||||||
# IP限流配置
|
|
||||||
ip:
|
|
||||||
limit: 100 # IP限流: 100 req/s
|
|
||||||
burst: 200 # IP突发: 200
|
|
||||||
# 用户限流配置
|
|
||||||
user:
|
|
||||||
limit: 50 # 已登录用户: 50 req/s
|
|
||||||
burst: 100 # 已登录用户突发: 100
|
|
||||||
# 服务维度限流配置
|
|
||||||
services:
|
|
||||||
# 高频业务服务 - 需要更高配置
|
|
||||||
customerService:
|
|
||||||
limit: 500 # 客服服务: 500 req/s (高频对话)
|
|
||||||
burst: 700 # 突发: 700
|
|
||||||
order:
|
|
||||||
limit: 450 # 订单服务: 450 req/s (高频交易)
|
|
||||||
burst: 600 # 突发: 600
|
|
||||||
assets:
|
|
||||||
limit: 400 # 资产服务: 400 req/s (高频访问)
|
|
||||||
burst: 600 # 突发: 600 (有Stream削峰)
|
|
||||||
cid:
|
|
||||||
limit: 350 # 证书服务: 350 req/s (高频证书请求)
|
|
||||||
burst: 500 # 突发: 500
|
|
||||||
|
|
||||||
# 中频基础服务
|
|
||||||
oss:
|
|
||||||
limit: 300 # 文件服务: 300 req/s (通用文件上传,可能被多个服务调用)
|
|
||||||
burst: 450 # 突发: 450
|
|
||||||
|
|
||||||
# 低频业务服务
|
|
||||||
wallet:
|
|
||||||
limit: 120 # 钱包服务: 120 req/s (低频转账)
|
|
||||||
burst: 200 # 突发: 200
|
|
||||||
market:
|
|
||||||
limit: 100 # 市场服务: 100 req/s (低频交易)
|
|
||||||
burst: 180 # 突发: 180
|
|
||||||
knapsack:
|
|
||||||
limit: 80 # 背包服务: 80 req/s (低频功能)
|
|
||||||
burst: 150 # 突发: 150
|
|
||||||
|
|
||||||
# 熔断器配置 - 每个服务独立配置
|
|
||||||
circuitBreaker:
|
|
||||||
# 高频业务服务 - 更严格的熔断策略
|
|
||||||
customerService:
|
|
||||||
enabled: true # 是否启用熔断器
|
|
||||||
maxFailures: 5 # 连续失败5次触发熔断
|
|
||||||
timeout: 30s # 30秒后尝试恢复
|
|
||||||
successStatusCodes: 200,201,204 # 视为成功的HTTP状态码
|
|
||||||
slowRequestThreshold: 3s # 慢请求阈值(超过此时间视为失败)
|
|
||||||
enableSlidingWindow: true # 是否启用滑动窗口
|
|
||||||
failureRateThreshold: 0.5 # 失败率阈值(0.0-1.0)
|
|
||||||
enableFallback: false # 是否启用降级
|
|
||||||
fallbackMessage: "" # 降级提示消息
|
|
||||||
requestTimeout: 30000 # 请求超时时间(毫秒),0表示不设置
|
|
||||||
distributedTTL: 300 # 分布式熔断状态TTL(秒),0表示不启用分布式熔断
|
|
||||||
statIntervalMs: 1000 # 统计窗口时长(毫秒),默认1000ms
|
|
||||||
minRequestAmount: 5 # 最小请求数量,默认与maxFailures相同
|
|
||||||
order:
|
|
||||||
enabled: true
|
|
||||||
maxFailures: 3 # 订单服务更敏感
|
|
||||||
timeout: 60s # 60秒后尝试恢复
|
|
||||||
successStatusCodes: 200,201,204
|
|
||||||
slowRequestThreshold: 2s # 订单服务要求更快的响应
|
|
||||||
enableSlidingWindow: true
|
|
||||||
failureRateThreshold: 0.6 # 订单服务对失败率更敏感
|
|
||||||
enableFallback: false
|
|
||||||
fallbackMessage: ""
|
|
||||||
requestTimeout: 30000
|
|
||||||
distributedTTL: 300
|
|
||||||
assets:
|
|
||||||
enabled: true
|
|
||||||
maxFailures: 10 # 资产服务更宽松
|
|
||||||
timeout: 60s
|
|
||||||
successStatusCodes: 200,201,204
|
|
||||||
slowRequestThreshold: 5s # 资产服务可能较慢,给更多时间
|
|
||||||
enableSlidingWindow: false
|
|
||||||
enableFallback: false
|
|
||||||
fallbackMessage: ""
|
|
||||||
requestTimeout: 30000
|
|
||||||
distributedTTL: 0
|
|
||||||
cid:
|
|
||||||
enabled: true
|
|
||||||
maxFailures: 8
|
|
||||||
timeout: 45s
|
|
||||||
successStatusCodes: 200,201,204
|
|
||||||
slowRequestThreshold: 3s
|
|
||||||
enableSlidingWindow: false
|
|
||||||
enableFallback: false
|
|
||||||
fallbackMessage: ""
|
|
||||||
requestTimeout: 30000
|
|
||||||
distributedTTL: 0
|
|
||||||
|
|
||||||
# 中频基础服务
|
|
||||||
oss:
|
|
||||||
enabled: true
|
|
||||||
maxFailures: 15
|
|
||||||
timeout: 120s
|
|
||||||
successStatusCodes: 200,201,204
|
|
||||||
slowRequestThreshold: 10s # 文件上传可能较慢
|
|
||||||
enableSlidingWindow: false
|
|
||||||
enableFallback: false
|
|
||||||
fallbackMessage: ""
|
|
||||||
requestTimeout: 60000 # 文件服务可能需要更长时间
|
|
||||||
distributedTTL: 0
|
|
||||||
|
|
||||||
# 低频业务服务 - 最宽松的熔断策略
|
|
||||||
wallet:
|
|
||||||
enabled: true
|
|
||||||
maxFailures: 5
|
|
||||||
timeout: 120s # 2分钟
|
|
||||||
successStatusCodes: 200,201,204
|
|
||||||
slowRequestThreshold: 5s
|
|
||||||
enableSlidingWindow: false
|
|
||||||
enableFallback: true # 启用降级
|
|
||||||
fallbackMessage: "钱包服务暂时繁忙,请稍后再试" # 降级提示消息
|
|
||||||
requestTimeout: 30000
|
|
||||||
distributedTTL: 300 # 钱包服务启用分布式熔断
|
|
||||||
adminIPs: "127.0.0.1,116.204.74.41" # 允许重置熔断器的管理员IP列表(逗号分隔)
|
|
||||||
market:
|
|
||||||
enabled: true
|
|
||||||
maxFailures: 5
|
|
||||||
timeout: 90s
|
|
||||||
successStatusCodes: 200,201,204
|
|
||||||
slowRequestThreshold: 3s
|
|
||||||
enableSlidingWindow: false
|
|
||||||
enableFallback: false
|
|
||||||
fallbackMessage: ""
|
|
||||||
requestTimeout: 30000
|
|
||||||
distributedTTL: 0
|
|
||||||
knapsack:
|
|
||||||
enabled: false # 背包服务暂时不启用熔断
|
|
||||||
maxFailures: 5
|
|
||||||
timeout: 90s
|
|
||||||
successStatusCodes: 200,201,204
|
|
||||||
slowRequestThreshold: 3s
|
|
||||||
enableSlidingWindow: false
|
|
||||||
enableFallback: false
|
|
||||||
fallbackMessage: ""
|
|
||||||
requestTimeout: 30000
|
|
||||||
distributedTTL: 0
|
|
||||||
|
|
||||||
redis:
|
|
||||||
# 集群模式配置方法
|
|
||||||
default:
|
|
||||||
address: 116.204.74.41:6379
|
|
||||||
db: 0
|
|
||||||
idleTimeout: "60s" #连接最大空闲时间,使用时间字符串例如30s/1m/1d
|
|
||||||
maxConnLifetime: "90s" #连接最长存活时间,使用时间字符串例如30s/1m/1d
|
|
||||||
waitTimeout: "60s" #等待连接池连接的超时时间,使用时间字符串例如30s/1m/1d
|
|
||||||
dialTimeout: "30s" #TCP连接的超时时间,使用时间字符串例如30s/1m/1d
|
|
||||||
readTimeout: "30s" #TCP的Read操作超时时间,使用时间字符串例如30s/1m/1d
|
|
||||||
writeTimeout: "30s" #TCP的Write操作超时时间,使用时间字符串例如30s/1m/1d
|
|
||||||
maxActive: 100
|
|
||||||
consul:
|
|
||||||
address: 116.204.74.41:8500
|
|
||||||
services:
|
|
||||||
- name: customerService
|
|
||||||
- name: test111
|
|
||||||
jaeger: #链路追踪
|
|
||||||
addr: 116.204.74.41:4318
|
|
||||||
@@ -1,166 +0,0 @@
|
|||||||
server:
|
|
||||||
address : ":8000"
|
|
||||||
name: "gateway"
|
|
||||||
rate:
|
|
||||||
limit: 800
|
|
||||||
burst: 2000
|
|
||||||
# IP限流配置
|
|
||||||
ip:
|
|
||||||
limit: 100 # IP限流: 100 req/s
|
|
||||||
burst: 200 # IP突发: 200
|
|
||||||
# 用户限流配置
|
|
||||||
user:
|
|
||||||
limit: 50 # 已登录用户: 50 req/s
|
|
||||||
burst: 100 # 已登录用户突发: 100
|
|
||||||
# 服务维度限流配置
|
|
||||||
services:
|
|
||||||
# 高频业务服务 - 需要更高配置
|
|
||||||
customerService:
|
|
||||||
limit: 500 # 客服服务: 500 req/s (高频对话)
|
|
||||||
burst: 700 # 突发: 700
|
|
||||||
order:
|
|
||||||
limit: 450 # 订单服务: 450 req/s (高频交易)
|
|
||||||
burst: 600 # 突发: 600
|
|
||||||
assets:
|
|
||||||
limit: 400 # 资产服务: 400 req/s (高频访问)
|
|
||||||
burst: 600 # 突发: 600 (有Stream削峰)
|
|
||||||
cid:
|
|
||||||
limit: 350 # 证书服务: 350 req/s (高频证书请求)
|
|
||||||
burst: 500 # 突发: 500
|
|
||||||
|
|
||||||
# 中频基础服务
|
|
||||||
oss:
|
|
||||||
limit: 300 # 文件服务: 300 req/s (通用文件上传,可能被多个服务调用)
|
|
||||||
burst: 450 # 突发: 450
|
|
||||||
|
|
||||||
# 低频业务服务
|
|
||||||
wallet:
|
|
||||||
limit: 120 # 钱包服务: 120 req/s (低频转账)
|
|
||||||
burst: 200 # 突发: 200
|
|
||||||
market:
|
|
||||||
limit: 100 # 市场服务: 100 req/s (低频交易)
|
|
||||||
burst: 180 # 突发: 180
|
|
||||||
knapsack:
|
|
||||||
limit: 80 # 背包服务: 80 req/s (低频功能)
|
|
||||||
burst: 150 # 突发: 150
|
|
||||||
|
|
||||||
# 熔断器配置 - 每个服务独立配置
|
|
||||||
circuitBreaker:
|
|
||||||
# 高频业务服务 - 更严格的熔断策略
|
|
||||||
customerService:
|
|
||||||
enabled: true # 是否启用熔断器
|
|
||||||
maxFailures: 5 # 连续失败5次触发熔断
|
|
||||||
timeout: 30s # 30秒后尝试恢复
|
|
||||||
successStatusCodes: 200,201,204 # 视为成功的HTTP状态码
|
|
||||||
slowRequestThreshold: 3s # 慢请求阈值(超过此时间视为失败)
|
|
||||||
enableSlidingWindow: true # 是否启用滑动窗口
|
|
||||||
failureRateThreshold: 0.5 # 失败率阈值(0.0-1.0)
|
|
||||||
enableFallback: false # 是否启用降级
|
|
||||||
fallbackMessage: "" # 降级提示消息
|
|
||||||
requestTimeout: 30000 # 请求超时时间(毫秒),0表示不设置
|
|
||||||
distributedTTL: 300 # 分布式熔断状态TTL(秒),0表示不启用分布式熔断
|
|
||||||
statIntervalMs: 1000 # 统计窗口时长(毫秒),默认1000ms
|
|
||||||
minRequestAmount: 5 # 最小请求数量,默认与maxFailures相同
|
|
||||||
order:
|
|
||||||
enabled: true
|
|
||||||
maxFailures: 3 # 订单服务更敏感
|
|
||||||
timeout: 60s # 60秒后尝试恢复
|
|
||||||
successStatusCodes: 200,201,204
|
|
||||||
slowRequestThreshold: 2s # 订单服务要求更快的响应
|
|
||||||
enableSlidingWindow: true
|
|
||||||
failureRateThreshold: 0.6 # 订单服务对失败率更敏感
|
|
||||||
enableFallback: false
|
|
||||||
fallbackMessage: ""
|
|
||||||
requestTimeout: 30000
|
|
||||||
distributedTTL: 300
|
|
||||||
assets:
|
|
||||||
enabled: true
|
|
||||||
maxFailures: 10 # 资产服务更宽松
|
|
||||||
timeout: 60s
|
|
||||||
successStatusCodes: 200,201,204
|
|
||||||
slowRequestThreshold: 5s # 资产服务可能较慢,给更多时间
|
|
||||||
enableSlidingWindow: false
|
|
||||||
enableFallback: false
|
|
||||||
fallbackMessage: ""
|
|
||||||
requestTimeout: 30000
|
|
||||||
distributedTTL: 0
|
|
||||||
cid:
|
|
||||||
enabled: true
|
|
||||||
maxFailures: 8
|
|
||||||
timeout: 45s
|
|
||||||
successStatusCodes: 200,201,204
|
|
||||||
slowRequestThreshold: 3s
|
|
||||||
enableSlidingWindow: false
|
|
||||||
enableFallback: false
|
|
||||||
fallbackMessage: ""
|
|
||||||
requestTimeout: 30000
|
|
||||||
distributedTTL: 0
|
|
||||||
|
|
||||||
# 中频基础服务
|
|
||||||
oss:
|
|
||||||
enabled: true
|
|
||||||
maxFailures: 15
|
|
||||||
timeout: 120s
|
|
||||||
successStatusCodes: 200,201,204
|
|
||||||
slowRequestThreshold: 10s # 文件上传可能较慢
|
|
||||||
enableSlidingWindow: false
|
|
||||||
enableFallback: false
|
|
||||||
fallbackMessage: ""
|
|
||||||
requestTimeout: 60000 # 文件服务可能需要更长时间
|
|
||||||
distributedTTL: 0
|
|
||||||
|
|
||||||
# 低频业务服务 - 最宽松的熔断策略
|
|
||||||
wallet:
|
|
||||||
enabled: true
|
|
||||||
maxFailures: 5
|
|
||||||
timeout: 120s # 2分钟
|
|
||||||
successStatusCodes: 200,201,204
|
|
||||||
slowRequestThreshold: 5s
|
|
||||||
enableSlidingWindow: false
|
|
||||||
enableFallback: true # 启用降级
|
|
||||||
fallbackMessage: "钱包服务暂时繁忙,请稍后再试" # 降级提示消息
|
|
||||||
requestTimeout: 30000
|
|
||||||
distributedTTL: 300 # 钱包服务启用分布式熔断
|
|
||||||
adminIPs: "127.0.0.1,192.168.0.169" # 允许重置熔断器的管理员IP列表(逗号分隔)
|
|
||||||
market:
|
|
||||||
enabled: true
|
|
||||||
maxFailures: 5
|
|
||||||
timeout: 90s
|
|
||||||
successStatusCodes: 200,201,204
|
|
||||||
slowRequestThreshold: 3s
|
|
||||||
enableSlidingWindow: false
|
|
||||||
enableFallback: false
|
|
||||||
fallbackMessage: ""
|
|
||||||
requestTimeout: 30000
|
|
||||||
distributedTTL: 0
|
|
||||||
knapsack:
|
|
||||||
enabled: false # 背包服务暂时不启用熔断
|
|
||||||
maxFailures: 5
|
|
||||||
timeout: 90s
|
|
||||||
successStatusCodes: 200,201,204
|
|
||||||
slowRequestThreshold: 3s
|
|
||||||
enableSlidingWindow: false
|
|
||||||
enableFallback: false
|
|
||||||
fallbackMessage: ""
|
|
||||||
requestTimeout: 30000
|
|
||||||
distributedTTL: 0
|
|
||||||
|
|
||||||
redis:
|
|
||||||
# 集群模式配置方法
|
|
||||||
default:
|
|
||||||
address: 192.168.0.169:6379
|
|
||||||
db: 0
|
|
||||||
idleTimeout: "60s" #连接最大空闲时间,使用时间字符串例如30s/1m/1d
|
|
||||||
maxConnLifetime: "90s" #连接最长存活时间,使用时间字符串例如30s/1m/1d
|
|
||||||
waitTimeout: "60s" #等待连接池连接的超时时间,使用时间字符串例如30s/1m/1d
|
|
||||||
dialTimeout: "30s" #TCP连接的超时时间,使用时间字符串例如30s/1m/1d
|
|
||||||
readTimeout: "30s" #TCP的Read操作超时时间,使用时间字符串例如30s/1m/1d
|
|
||||||
writeTimeout: "30s" #TCP的Write操作超时时间,使用时间字符串例如30s/1m/1d
|
|
||||||
maxActive: 100
|
|
||||||
consul:
|
|
||||||
address: 192.168.0.169:8500
|
|
||||||
services:
|
|
||||||
- name: customerService
|
|
||||||
- name: test111
|
|
||||||
jaeger: #链路追踪
|
|
||||||
addr: 192.168.0.169:4318
|
|
||||||
8
go.mod
8
go.mod
@@ -1,14 +1,12 @@
|
|||||||
module gateway
|
module gateway
|
||||||
|
|
||||||
go 1.26.0
|
go 1.26.1
|
||||||
|
|
||||||
require (
|
require (
|
||||||
gitea.com/red-future/common v0.0.19
|
gitea.redpowerfuture.com/red-future/common v0.0.23
|
||||||
github.com/gogf/gf/v2 v2.10.0
|
github.com/gogf/gf/v2 v2.10.2
|
||||||
)
|
)
|
||||||
|
|
||||||
//replace gitea.com/red-future/common v0.0.19 => ../common
|
|
||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/BurntSushi/toml v1.5.0 // indirect
|
github.com/BurntSushi/toml v1.5.0 // indirect
|
||||||
github.com/StackExchange/wmi v0.0.0-20190523213315-cbe66965904d // indirect
|
github.com/StackExchange/wmi v0.0.0-20190523213315-cbe66965904d // indirect
|
||||||
|
|||||||
8
go.sum
8
go.sum
@@ -1,7 +1,7 @@
|
|||||||
cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
|
cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
|
||||||
cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
|
cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
|
||||||
gitea.com/red-future/common v0.0.19 h1:9/WrfCFUCeFUYwuhBYF+JOQi5F5xuOy+gVnf2ZvHZu4=
|
gitea.redpowerfuture.com/red-future/common v0.0.23 h1:xieoA00iKOCDm5SO9iXn+cSyMKBAlZwI0fuEVPWrHLg=
|
||||||
gitea.com/red-future/common v0.0.19/go.mod h1:6/nqIucVzmjOyqDTIq71feYBXXFNBy0rFwzaQ0/Ueoo=
|
gitea.redpowerfuture.com/red-future/common v0.0.23/go.mod h1:50U1Xi+Ie56z09S5LQbZvaken0Mxv3OeS9LgR7U/ZRY=
|
||||||
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
|
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
|
||||||
github.com/BurntSushi/toml v1.5.0 h1:W5quZX/G/csjUnuI8SUYlsHs9M38FC7znL0lIO+DvMg=
|
github.com/BurntSushi/toml v1.5.0 h1:W5quZX/G/csjUnuI8SUYlsHs9M38FC7znL0lIO+DvMg=
|
||||||
github.com/BurntSushi/toml v1.5.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho=
|
github.com/BurntSushi/toml v1.5.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho=
|
||||||
@@ -125,8 +125,8 @@ github.com/gogf/gf/contrib/registry/consul/v2 v2.9.5 h1:eUqwJ/qNH8lJ6yssiqskazgp
|
|||||||
github.com/gogf/gf/contrib/registry/consul/v2 v2.9.5/go.mod h1:sjQyMry9+0POYZCA6lHXBxO77WoNKkruJpRB4xKqk5k=
|
github.com/gogf/gf/contrib/registry/consul/v2 v2.9.5/go.mod h1:sjQyMry9+0POYZCA6lHXBxO77WoNKkruJpRB4xKqk5k=
|
||||||
github.com/gogf/gf/contrib/trace/otlphttp/v2 v2.9.5 h1:tHUEZYB5GTqEYYVDYnlGobf1xISARKDE4KHVlgjwTec=
|
github.com/gogf/gf/contrib/trace/otlphttp/v2 v2.9.5 h1:tHUEZYB5GTqEYYVDYnlGobf1xISARKDE4KHVlgjwTec=
|
||||||
github.com/gogf/gf/contrib/trace/otlphttp/v2 v2.9.5/go.mod h1:cfzTn2HS9RDX8f5pUVkbGxUWcSosouqfNQ1G6cY0V88=
|
github.com/gogf/gf/contrib/trace/otlphttp/v2 v2.9.5/go.mod h1:cfzTn2HS9RDX8f5pUVkbGxUWcSosouqfNQ1G6cY0V88=
|
||||||
github.com/gogf/gf/v2 v2.10.0 h1:rzDROlyqGMe/eM6dCalSR8dZOuMIdLhmxKSH1DGhbFs=
|
github.com/gogf/gf/v2 v2.10.2 h1:46IO0Uc8e85/FqdftJFskfDejJLBL0JBnGS5qOftUu8=
|
||||||
github.com/gogf/gf/v2 v2.10.0/go.mod h1:Svl1N+E8G/QshU2DUbh/3J/AJauqCgUnxHurXWR4Qx0=
|
github.com/gogf/gf/v2 v2.10.2/go.mod h1:Svl1N+E8G/QshU2DUbh/3J/AJauqCgUnxHurXWR4Qx0=
|
||||||
github.com/gogo/googleapis v1.1.0/go.mod h1:gf4bu3Q80BeJ6H1S1vYPm8/ELATdvryBaNFGgqEef3s=
|
github.com/gogo/googleapis v1.1.0/go.mod h1:gf4bu3Q80BeJ6H1S1vYPm8/ELATdvryBaNFGgqEef3s=
|
||||||
github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
|
github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
|
||||||
github.com/gogo/protobuf v1.2.0/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
|
github.com/gogo/protobuf v1.2.0/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
|
||||||
|
|||||||
10
main.go
10
main.go
@@ -8,11 +8,11 @@ import (
|
|||||||
"net/url"
|
"net/url"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"gitea.com/red-future/common/consul"
|
"gitea.redpowerfuture.com/red-future/common/consul"
|
||||||
"gitea.com/red-future/common/http"
|
"gitea.redpowerfuture.com/red-future/common/http"
|
||||||
"gitea.com/red-future/common/middleware"
|
"gitea.redpowerfuture.com/red-future/common/middleware"
|
||||||
_ "gitea.com/red-future/common/swagger"
|
_ "gitea.redpowerfuture.com/red-future/common/swagger"
|
||||||
"gitea.com/red-future/common/utils"
|
"gitea.redpowerfuture.com/red-future/common/utils"
|
||||||
"github.com/gogf/gf/v2/frame/g"
|
"github.com/gogf/gf/v2/frame/g"
|
||||||
"github.com/gogf/gf/v2/net/ghttp"
|
"github.com/gogf/gf/v2/net/ghttp"
|
||||||
"github.com/gogf/gf/v2/util/gconv"
|
"github.com/gogf/gf/v2/util/gconv"
|
||||||
|
|||||||
Reference in New Issue
Block a user