zoukankan      html  css  js  c++  java
  • 架构初识(一 ) 单体应用架构

    单体应用架构

          架构总感觉理我很远,有时候感觉很迷茫。今天起我把我认识到的三种架构写出来,一是希望沉淀一下自己所学的东西,二是希望有人能指出我的不足指出,向大家学习。

          第一篇 单体应用架构我会总结出单体架构的优缺点,和一般我在经历过的项目中单体架构所用到的技术,以及我需掌握的知识。

          第二篇 垂直应用架构 

          第三篇 微服务

          单体应用概念

               在项目中只需要通过引用把所有的功能集中在同一系统中实现

         应用项目类型:

            单体应用常用在 SCMERPCRM 等办公系统中。

          下面一张图介绍单体应用架构: (三层架构)

           

            

          描述一下各个层之间用到的框架技术 这里以我工作中所见所闻总结出。

          UI WebFromMVCWPFHTM...

                概念:UI常用来和用户交互,美观体验性都会在这里有直接体现。

          BLL:常用来处理业务,一个框架中的最重要部分我认为是业务逻辑层,因为基本上所有的操作都是在业务逻辑层中实现,一个架构的设计也都在业务逻辑层中体现,比如,(缓存)Cache、记录日志、以及我们在项目中用到的各个组件都是在业务逻辑层中,业务逻辑层在数据交互上起到承上启下的作用,因为处于表示层和数据访问层的中间.

          DAL:数据访问层,用到的技术有Ado.NET,FE、微软企业库、等. 数据层也称为持久层、也有人叫数据固化层,可以访问数据库(对数据库的增添、删除、修改、查找)、各种文件,文档,

          DB :数据库,SQL ServerMySql等,(以前有次面试的时候面试人员问我、你数据固化在哪里,我回答的数据库,很不赞成这样去问(容易懵逼)(~o~))

          单体架构的优点:

            (1)易于开发:开发人员使用当前开发工具在短时间内就可以开发出单体应用.IDE友好)

            (2)易于测试:因为不需要依赖其他接口,测试可以节约相当多时间了。

            (3)易于部署:你只需要将目录部署在运行环境中即可

          单体架构的缺点

            (1)灵活度不够:如果对程序做出任何的修改,修改的不只是一个点了,而是自上而下的去修改,测试时必须等到整个程序部署完后才能看出效果。在开发过程可能需要等待其他的开发人员开发完成才能完成部署,降低团队的灵活。

            (2)降低系统的性能:原本可以直接访问数据库但是现在多了一层。一个功能点都需要在各个层写上代码

            (3)系统启动慢:一个进程包含了所有的业务逻辑,涉及到的启动模块过多,导致系统的启动时间延长。

            (4)系统扩展性比较差:增加新东西的时候不能针对单个点增加,全局性的增加.牵一发而动全身。

            希望不足之处大家可以指出 谢谢!

  • 相关阅读:
    SQL 增删字段
    html5.js 让所有IE支持HTML5
    Tomcat Xms Xmx PermSize MaxPermSize 区别 及 java.lang.OutOfMemoryError: PermGen space 解决
    Easyui 判断某个Div 里的表单项是否验证通过.
    基于restful注解(spring4.0.2整合flex+blazeds+spring-mvc)<一>
    swfupload js中 file 对象的属性
    JAVA , TOMCAT , AXIS2 环境变量配置
    Java synchronized详解
    Jackson 练习(一)
    【树莓派】树莓派网络配置:静态IP、无线网络、服务等
  • 原文地址:https://www.cnblogs.com/szlblog/p/8992376.html
Copyright © 2011-2022 走看看