wegatewego 开发的网关服务器
采用 wego 开发的网关服务器
wego.Router("gateway", &router.GateWayRouter{})
流程
- 解析 http 请求,形成请求参数
- 本地handler中是否有注册,如果本地有则跑本地。本地无服务,也可以进行路由注册,目的是为了进行限速,认证等等的处理。本地无服务的 handler 最后一个为 GateWayEndpoint,它返回GATEWAY消息
- 如若本地没有注册,或者本地 响应 GATEWAY
- 进行网关代理处理
- 从 consul 中查询服务。如果是 http,则进行反向代理。如果是 grpc 则代理请求
- 事后发送 GATEWAY_EVENT_HANDLER 事件。如果本地有注册 GATEWAY_EVENT_HANDLER 事件的处理,则可进行事后记录日志等的处理。
评论