• 分布式架构和垂直架构


    垂直架构

    特点

    • 不管项目多复杂,有多少个模块,全在一个项目中编写
    • 项目部署在一个web容器上,适合于 访问量小,用户数不多的业务

    优点

    • 耦合度比较高
      • 所有功能模板代码都放到了一起,
    • 不利于扩展
      • 写好了, 测试完了,想要加一个模块非常的困难
      • 如果果某个功能出错有问题,所有的功能都需要再重新打包编译,部署效率极低。
      • 上线时, 把项目停掉
    • 不利于团队协作维护
      • 团队协作难度高,如多人使用SVN/git很可能在同一个功能上,多人同时进行了修改,作为一个大而全的项目,可能个人只是需要开发其中一个小的模块的需求,却需要导入整个项目全量的代码。

    缺点

    • 结构简单

    分布式架构(SOA架构)

    SOA(Service-Oriented Architecture)它是一种支持面向服务的架构。(分布式架构)

    特点

    • 将传统项目中的一个模块,拆分成一个一个项目

    优点

    • 降低模块之间的耦合度
    • 利于扩展
    • 利于维护

    缺点

    • 结构复杂
    • 对于小型项目 ,成本比较高

    特点

    • 模块的拆分
      • 如果某一个系统访问量比较大时, 可以多部署几台tomcat,
      • 当出现高并发的时候 , 通过nigix负载均衡,进行分配访问
      • 如果今后, 想要再添加 一个模块, 可以直接在写一个项目,弄台新机器,直接上线
    • 业务功能的拆分
      • 除了把对应模块拆成一个系统外, 还可以把我们的三层架构拆成对应的服务,把Controller做为一个系统,Dao和Service做为一个系统
      • 如果调用多了,一台不够用户了, 可以多部署几台
    • 存在的问题
      • 在以前Controller调用Service,通过注入进行调用,注入属于是Spring的
      • 当Controller在一个服务器中, Service在另一台服务器,是没有办法注入的
      • 此时, 可以采用一个技术叫Dubbox,可以实现跨tomcat 注入 远程调用
      • Dubbo是的跨服务器,注入的技术,这么多服务,到底是认认证调用谁,怎么知道的呢
      • 通过zookeeper注册中心,所有的服务都到zookeeper当中注册一下, 注册后.
      • 今后服务之间的调用,就可以通过zookeeper找到对应的服务,通过Dubbo进入注入
  • 相关阅读:
    计算机图形方面职业计划体会
    Shader Wave
    Cook-Torrance光照模型
    Unity3D 固定功能函数
    Hermite (埃尔米特)曲线
    技能CD 效果 shader
    圆角计算 Shader
    抽象工厂模式
    单例模式
    unity 菜单栏添加新菜单
  • 原文地址:https://www.cnblogs.com/Campsis-tk/p/13395045.html
Copyright © 2020-2023  润新知