网关微服务

物联网微服务集群的内部流量治理中心

概述

网关微服务(Gateway Service)是物联网平台内部微服务调用的统一入口,区别于面向外部(设备、应用)的API网关或云平台网关。在微服务架构下,设备服务、数据服务、告警服务、认证服务等数十个服务相互调用,若采用点对点直连,将面临服务发现、负载均衡、熔断限流、链路追踪等治理难题。网关微服务作为"内部流量治理中心",统一处理这些横切关注点,保障服务间通信的稳定、可观测、可管控。

网关微服务与API网关的分工:API网关面向外部请求(设备上报、应用调用),负责协议转换、认证鉴权、路由到内部服务;网关微服务面向内部服务间调用,负责服务发现、负载均衡、熔断、链路追踪。部分架构中两者可合并,但大规模平台通常分离,便于职责清晰与独立扩缩容。

核心能力

服务发现

基于Nacos、Consul、Eureka等的动态服务注册与发现。服务实例启动时自动注册,下线时自动剔除。调用方通过服务名而非IP:Port访问,支持实例扩缩容、故障迁移。物联网平台服务多、实例多,服务发现是微服务运行的基础。

负载均衡

轮询、随机、加权、一致性哈希等策略。一致性哈希可保证同一设备/租户的请求落同一实例,利于缓存与会话保持。支持金丝雀、蓝绿发布时的流量分配。

熔断限流

熔断:下游服务故障时快速失败,避免雪崩。限流:保护下游不被突发流量压垮。Sentinel、Hystrix等实现。物联网场景下,设备批量上线、规则引擎突发触发可能造成流量尖刺,熔断限流不可或缺。

链路追踪

分布式调用链追踪,记录请求经过的各服务、耗时、异常。Jaeger、Zipkin、SkyWalking等。便于定位性能瓶颈、排查跨服务问题。物联网请求链路长(接入→规则→数据→告警),链路追踪价值高。

物联网典型调用链

设备上报→接入网关→规则引擎(调用数据服务查询、调用告警服务推送)→数据服务(写入时序库)。API请求→API网关→设备服务(调用认证服务校验)→数据服务(查询)。网关微服务在这些调用中承担路由、负载均衡、熔断、追踪职责。

技术选型

Spring Cloud Gateway、Kong、APISIX、Traefik等。Spring Cloud Gateway与Java生态集成好;Kong、APISIX插件丰富、性能高。选型需考虑与现有技术栈、服务网格(如Istio)的兼容性。


相关链接