【中间件】(一):中间件原来和分布式有关系……

来源:互联网 发布:网络高清数字矩阵 编辑:程序博客网 时间:2024/06/07 20:06

整体概览

这里写图片描述

概念

分布式软件可理解为运行在网络环境中的软件。(好宏观啊,haha~~)

开发模型

C/S概念

即Client/Server。
如果一个系统两个组成部分存在如下关系:
  1.其中一方提出对信息或服务的请求(客户机);
  2.另一方提供这种信息或服务(服务器);
这种结构,可看作是客户机/服务器计算模型。

两层

服务器层:数据层。数据库服务器,上面安装DBMS。
客户机层:业务功能,访问DB中存放的数据。
多个客户端程序共享一个数据库。

这里写图片描述

【特点】:

1.客户程序直接访问数据库
2.代码集中在客户端,并且,用户界面代码和业务逻辑代码交织在一起

【缺陷】:

1.客户端负担重:对数据的处理主要集中在客户端。
2.设计不合理 :同时,因为客户机直接面向用户,可能数量很多,但是不可能为每个用户的客户机进行高的配置,很可能会出现处理能力不够,这样设计也不合理。
3.移植性不好 :客户机上代码处理复杂,会有移植问题,而且需要再次安装数据库驱动。
4.可维护性不好:客户机上的界面显示代码和业务逻辑代码混在一起,不好修改。
5.安全性不好:数据库必须为每个客户端开发数据库访问权限。很难防止个别用户恶意攻击。

三层/多层

这里写图片描述

【特点】:

1.多了中间层:放业务逻辑代码,屏蔽了客户机与数据库的直接连接。开发的主要工作量也集中在此。
2.中间层无严格定义,可以将其再分为业务逻辑层和持久层(用来实现数据持久化操作)

【小编感受】:在学习这块内容时,又去查C/S和B/S的区别了,如果按照这篇博文中的定义,B/S就是C/S的特例了,它仍是C/S模型,只是Client由Browser来充当。

基本单位—构件

  构件就是分布式系统中的对象,是分布式系统的基本组成单位。它有很多区别于传统对象的特性。在开发分布式系统的时候,我们要对系统进行明确分工,划分构件来完成不同的功能。

开发支撑—中间件

  解决开发分布式软件系统中的共性问题。为分布式应用的开发,部署,运行于管理提供支持。可理解为一种工具。

总结

  在没学习中间件相关理论之前,只是简单认为它是为开发人员开发系统提供了支持。通过学习,知道了它的产生背景,中间件主要是解决开发分布式系统中的一些问题,屏蔽一些底层实现细节,如:跨平台,跨语言,网络通信,从使开发变得容易。

0 0