个人理解,还请给位大侠补充


业务角度:

1. 快速响应市场变化,调整业务逻辑,适配客户需求;

2. 对于新兴业务领域,试错成本低;



IT角度:

1. 加快交付效率:

    1)从逻辑和物理层次上隔离,做到深层次解耦,每个微服务领域边界清晰,高内聚低耦合使得单个微服务的代码量小,逻辑更加易懂,从而提高研发效率;

    2)每个微服务可并行开发和单元测试,前提是约定好交互的api;

    3)每个微服务可独立部署,无需等待其它微服务即可结合环境进行验证;

2. 减少成本:

    1)减少“泥沼”代码的产生,从而降低新增,修改和维护代码的成本;

    2)对于并发量波峰和波谷较大的场景,可以降低基础设施成本(可根据微服务做横向的拓展,而非整个单体应用一起拓展);

    3)体量小,缩小构建,部署时间;


IT规划角度(务虚,但有道理)

1. 演进式架构。个人认为这是对微服务最精辟的总结。微服务的核心价值就是面对变化,如业务的变化,并发量的变化,技术的变化等。正因为整个架构是松散解耦的,每个微服务是缩小的,才更加利于架构的更新和变化。(目前可以做的解耦:业务领域间解耦,应用层和数据层解耦,前端和后端解耦,数据库类型解耦,前端技术解耦)

2. 与敏捷开发管理,DevOps和云平台结合。四者结合提供完整的IT精益方案。




Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐