项目架构演变

  1. springboot为什么要jdk1.8?
  2. 学习网站:https://springcloud.cc/spring-cloud
  3. 项目:包含业务逻辑层和视图层,包含前台项目(给用户)和后台项目(维护管理)
  4. 服务:只包含业务逻辑层,没有视图层,将共同的业务逻辑进行拆分,拆分成独立的一个项目进行部署
  5. 传统架构ssh、ssm:只适合一个人或小团队开发,代码耦合度高,一个模块出错整个项目不能运行
  6. 分布式架构:将项目拆分成多个子项目,会员项目、订单项目、支付项目、优惠项目,每个项目有自己独立的数据库、redis等,用RPC远程通讯相互调用
  7. RPC远程调用技术框架:http client、springcloud、dubbo、grpc,核心底层socket或者netty实现
    项目粒度分的更细,开始慢慢适合互联网公司开发,耦合度降低
  8. maven聚合项目不完全是分布式项目,表现在打一个war包和多个war包,多个JVM相互通讯
  9. SOA架构:代表面向服务架构,俗称服务化,表现为面向业务逻辑层编程,将共同的业务逻辑层代码抽取出来,提供给其他接口调用,服务于服务之间采用RPC远程调用技术。
    SOA架构特点: 底层基于SOAP或者ESP(消息总线)实现,底层使用http或https+重量级XML进行通讯。微服务以json替代xml
  10. xml为什么重量级?
  11. soap:简单对象协议,是http+xml的混合物?
  12. SOA架构缺点:1. 依赖于中心化服务发现机制,2. SOA架构采用SOAP协议(http+xml报文),xml报文中有非常大的冗余数据占用宽带,3. 服务管理混乱,服务管理和治理设施不完善
  13. 微服务架构:微服务架构从SOA架构演变过来,比SOA架构的粒度更精细,让专业的人做专业的事,目的是为了提高效率,每个服务之间互不影响,必须独立部署,微服务架构更加轻量级,使用restful风格提供API,也就是http协议+JSON格式,更加轻巧,也更加适合互联网公司进行敏捷开发,快速迭代产品。
  14. 驱动编程?springwebflow
  15. restful风格:http+json?
  16. fegin客户端?调用接口,控制层页面跳转

猜你喜欢

转载自blog.csdn.net/qq_36440298/article/details/88784805
今日推荐