2.2 技术架构
广西船舶污染物监管系统的软件研发主要包括应用生态层和业务服务层,应用生态层主要利用基于HTML5、VUE等核心技术的微前端架构,而业务服务层则主要利用基于Nacos、Spring Boot 和Spring Cloud等核心技术的微服务架构,图3显示了整个系统的技术架构。
微服务架构主要包括网关、服务注册中心、用户认证服务中心、微服务模块、数据库和搜索引擎等部分。网关包括基于Nginx的流量网关以及基于Spring Cloud Gateway实现的微服务业务网关,Gateway是整个微服务API请求的入口,实现用户的验证登录和权限控制,并与Nginx和Sentinel配合实现限流、熔断和负载均衡等功能。各微服务模块包括用户统一登录服务、船舶信息服务、污染物信息服务、电子航道图服务、电子联单服务等基于Spring Boot实现,它们在服务注册中心注册服务实例并获取动态配置与服务列表。服务注册中心基于Nacos实现,负责服务注册、发现、配置和管理,其整合Spring Boot Admin实现各个微服务运行状态的监控。用户认证服务中心基于OAuth 2.0实现,当从网关接收到用户登录请求后,其从用户统一登录微服务获取用户信息进行验证,生成JWT(Json Web Token)令牌返回给用户,令牌携带用户信息和有效时间;当用户再次发送请求时携带JWT令牌,Gateway网关直接从JWT获取用户信息进行鉴权,实现高效的安全认证。