加入收藏 | 设为首页 | 会员中心 | 我要投稿 鞍山站长网 (https://www.0412zz.cn/)- 智能营销、数据计算、数据可视化、负载均衡、研发安全!
当前位置: 首页 > 站长资讯 > 传媒 > 正文

企业受害者在五年内翻了一番

发布时间:2021-02-19 11:27:18 所属栏目:传媒 来源:互联网
导读:Model-View-Controller(MVC)分层结构是大多数流行的Web框架提供的标准软件开发方法,显然是分层体系结构。数据持久层上方是服务层,它通常包含业务逻辑和有关数据库中数据类型的信息。视图层位于顶层,通常是CSS,JavaScript和带有动态嵌入式代码的HTML。

Model-View-Controller(MVC)分层结构是大多数流行的Web框架提供的标准软件开发方法,显然是分层体系结构。数据持久层上方是服务层,它通常包含业务逻辑和有关数据库中数据类型的信息。视图层位于顶层,通常是CSS,JavaScript和带有动态嵌入式代码的HTML。在中间有一个控制层,该控制层具有用于转换在视图和模型之间移动的数据的各种规则和方法。

分层架构的优点:每个层可以只集中于自己的功能实现。这使得应用程序:

  • 容易维护
  • 容易单元测试
  • 易于分配单独的“角色”
  • 易于更新和扩展

适当的分层体系结构将开发层面进行隔离,这些层不受其他层的更改的影响,从而使重构更加容易。划分任务并定义单独的层是架构师面临的挑战。当需求很好地适应了模式时,这些层将易于解耦或分层开发。

适合:

  • 需要快速构建的新应用程序
  • 传统IT部门和流程的企业或业务应用程序
  • 具有尚不了解其他架构的经验不足的开发人员的团队
  • 需要严格的可维护性和可测试性标准的应用

二、事件驱动架构

事件驱动的体系架构根据数据生成一个“事件”,事件由“消息中间件”或“事件分发管理的中央单元”统一接收,并将事件分配特定类型的代码处理。

使用JavaScript编程网页涉及编写对诸如鼠标单击或击键之类的事件做出反应的小模块。浏览器本身会协调所有输入,并确保只有正确的代码才能得到正确的事件。浏览器中常见许多不同类型的事件,但是模块仅与相关的事件进行交互。这与分层体系结构非常不同,在分层体系结构中,所有数据通常都将穿过所有层。总体而言,事件驱动的体系结构:

  • 容易适应复杂,混乱的业务环境
  • 当出现新的事件类型时,很容易扩展

注意事项:

  • 如果模块之间可以相互影响,则[测试可能会很复杂
  • 当模块发生故障时,中央单元(或消息中间件)必须有一个事件备份计划。
  • 消息传递开销可能会降低处理速度,消息中间件必须缓冲以突发形式到达的消息时。
  • 当事件有非常不同的需求时,为事件开发数据结构可能会很复杂。
  • 维护基于事务的一致性机制很困难,因为接收事件的模块是解耦和独立的。

适合:

  • 具有异步数据流的异步系统
  • 各个数据块仅与多模块中的少数模块交互的应用程序
  • 用户界面

三、微内核-多插件架构

许多的应用程序都具有一组核心代码,这些代码在不同的模块下反复使用。例如,开发工具Eclipse将打开文件,批注,编辑文件并启动后台处理器。用于显示文件和对其进行编辑的代码是微内核的一部分。其他的插件扩展了Eclipse,从而扩展了其功能。

具体到解决方案就是将一些基本的核心的任务代码推入微内核。然后,不同的业务部门可以根据不同类型的声明编写插件。

注意事项:

  • 确定哪些代码是微内核中的内容通常是一门艺术。它应该保留经常被使用的代码。
  • 一旦许多插件依赖微内核,修改微内核可能非常困难,甚至不可能。唯一的解决方案就是修改插件。
  • 为内核函数选择正确的粒度很难事先完成,也几乎不可能在后期进行更改。

适合:

  • 工具类软件
  • 在核心代码与边缘代码之间有清晰区分的应用程序
  • 具有一组固定的核心函数和一组动态规则的应用程序


 

(编辑:鞍山站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读