【java】架构演变学习

【前言】

      之前项目上用的是dubbo的框架,不知道为什么。 最近学习宜立方商城这个项目,视频的老师有讲。 在此总结记录一下。

【正文】

1.传统架构

 适用于并发量小的情况下。

2.1000并发的时候


一台tocat服务器默认支持并发量为150,理论上能达到最大并发量250,所以此时我们要设置tomcat集群,但是tomcat集群会随着节点数量的增加,服务能力先增加后下降。所以增加集群中节点数量不能成为解决并发问题的不二法门。 一般节点为5个左右

3.10000并发时

        出现了分布时架构,把系统按照功能点拆分,单独为某一个节点添加服务器。需要系统之间配合才能完成整个业务逻辑。

         分布式架构:多个子系统相互协作才能完成业务流程。系统之间需要进行通信。

        集群:同一个工程部署到多台服务器上。

         分布式架构:

        把系统按照模块拆分成多个子系统。

      优点:

      1、把模块拆分,使用接口通信,降低模块之间的耦合度。

      2、把项目拆分成若干个子项目,不同的团队负责不同的子项目。

      3、增加功能时只需要再增加一个子项目,调用其他系统的接口就可以。

     4、可以灵活的进行分布式部署。

 

      缺点:

      1、系统之间交互需要使用远程通信,接口开发增加工作量。

      2、各个模块有一些通用的业务逻辑无法共用。




4.基于soa的架构


     SOAService Oriented Architecture面向服务的架构。也就是把工程拆分成服务层、表现层两个工程。服务层中包含业务逻辑,只需要对外提供服务即可。表现层只需要处理和页面的交互,业务逻辑都是调用服务层的服务来实现。



因为表现层和服务层成为了不同的工程,所以要实现一个功能就需要两个系统间进行通信。那么远程通信有哪几种方式呢?

             1Webservice:效率不高基于soap协议。项目中不推荐使用。

             2、使用restful形式的服务:http+json。很多项目中应用。如果服务太多,服务之间调用关系混乱,需要治理服务。

            3使用dubbo。使用rpc协议进行远程调用,直接使用socket通信。传输效率高,并且可以统计出系统之间的调用关系、调用次数



实例:宜立方商城的架构图:


【总结】

           事物之间是存在普遍联系的,发展是个长期的过程。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码农胖虎-java

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值