SOA

50 阅读1分钟

关键词:服务拆分原则、服务注册,发现,管理、

背景

单体架构可维护性、稳定性、扩展性差。

企业系统集成,组织遗留系统。

设计模式:服务注册表模式、企业服务总线模式

设计标准:文档标准化、通信协议标准、应用程序统一登记与集成、服务质量

设计原则:无状态、明确定义的接口、自包含、粗粒度。

服务契约

接口规范:接口名称,接口入参,出参,错误格式OpenAPI/Swagger, WSDL, gRPC ProtoBuf

通信协议:

数据模型:枚举统一、数据约束

服务请求者

服务注册中心

注册方案:spring cloud Consul,Nocos,Eureka

注册维护:心跳保活,健康检查,自动注销

配置管理**:**动态化、中心化得提供服务运行时需要的配置。

服务提供者

服务拆分原则

服务拆分粒度和原则,领域设计模型

暴露给整个系统外部的服务使用粗粒度的接口,保证了服务调用者以一种一致的和稳定的方式使用系统中暴露的服务;而系统内部服务通常采用细粒度的接口,细粒度的接口有更高的灵活性,同时也意味着难以控制的交互性。这样将稳定的调用模式暴露给外部,将易于变化的部分封装在内部实现,使得外部不必关注实现细节。

ESB设计原则

ESB避免单点故障,实现ESB集群部署

ESB功能

相关协议
**SOAP (Simple Object Access Protocol):**基于XML的传输协议

WSDL: 一个基于 XML 的语言,用于描述 Web 服务

UDDI:一个基于 XML 的注册中心标准