2.客户机/服务器(Client/Server)模式-信息系统架构模型

客户机 / 服务器(Client/Server)模式,简称 C/S 模式.

工作原理

  • 服务器端2:首先启动服务器,打开一个通信通道并告知本地主机它愿意在某一地址和端口上接收客户机请求。然后等待客户端请求到达该端口,接收到请求后进行处理并发送应答信号。处理完请求后,关闭与客户机的通信链路,再返回等待状态,继续等待另一客户请求。
  • 客户端2:客户端主动打开一个通信通道,连接到服务器所在主机的特定端口,向服务器发送服务请求报文,等待并接收应答,可继续发送请求,请求结束之后关闭通信通道并终止。

功能分布

  • 客户端:通常负责执行前台功能,包括实现用户界面和业务逻辑处理。例如,用户通过客户端软件进行数据输入、查询、分析等操作,客户端将这些请求发送给服务器。
  • 服务器端:运行数据库管理系统(DBMS),负责有效地管理系统的资源,如数据库安全性的管理、数据库访问并发性的控制、全局数据完整性规则的维护以及数据库的备份与恢复等。

特点

  • 优点3:系统的客户应用程序和服务器构建分别运行在不同的计算机上,具有较强的适应性和灵活性,易于对系统进行扩充和缩小;具有强大的数据操作和事务处理能力,模型思想简单,易于理解和接受;C/S 模式下,信息存贮与管理比较集中规范,安全性较好。
  • 缺点1:客户端需要安装专用的客户端软件,安装和维护工作量大;系统软件升级时,每一台客户机需要重新安装,维护和升级成本非常高;对客户端的操作系统有一定限制;C/S 模式投资大且维护成本高昂,服务器及带宽决定了网络的性能,服务器容错性不高,一旦出现问题,整个系统将会瘫痪。

适用场景

C/S 模式适用于企业内部网络环境,例如企业的财务管理系统、办公自动化系统等,这些系统对安全性要求较高,且用户群体相对固定,在企业内部局域网中使用,可以充分发挥其优势,保证系统的性能和安全性。


常见的 C/S 架构包括两层 C/S、三层 C/S 和多层 C/S 结构,此外还有与之相关的 B/S 结构和 MVC 架构.

两层 C/S 结构

  • 组成:由客户端和服务器端两层组成。客户端负责用户界面的展示和用户交互,收集用户输入并向服务器端发送请求;服务器端主要负责数据的存储和处理,执行客户端发送的请求,如数据库查询、数据计算等,并将结果返回给客户端。
  • 特点:优点是结构简单,易于实现和理解,客户端和服务器端的职责明确。缺点是客户端承担了较多的业务逻辑处理,当业务逻辑发生变化时,需要对客户端进行大量的修改和更新,维护成本较高;而且服务器端直接暴露给客户端,数据安全性相对较低。

三层 C/S 结构

  • 组成:在两层 C/S 结构的基础上,增加了中间层,即应用服务器层。客户端只负责用户界面的显示和交互,将用户请求发送给应用服务器;应用服务器层负责处理业务逻辑,根据客户端的请求调用相应的业务逻辑组件进行处理,并与数据库服务器进行交互;数据库服务器则专门负责数据的存储和管理。
  • 特点:优点是将业务逻辑从客户端和数据库服务器中分离出来,使得系统的可维护性和可扩展性得到了很大提高。当业务逻辑发生变化时,只需要在应用服务器层进行修改,而不需要更新客户端。同时,中间层可以对客户端的请求进行验证和过滤,提高了系统的数据安全性。缺点是增加了系统的复杂性,需要更多的硬件资源来支持中间层的运行,而且开发和调试的难度也相对较大。

多层 C/S 结构

  • 组成:是在三层 C/S 结构的基础上进一步扩展而来,将应用服务器层根据不同的功能和职责进行细分,形成多个层次。例如,可以将业务逻辑层进一步分为表示逻辑层、业务规则层和数据访问层等。表示逻辑层负责处理与用户界面相关的逻辑,业务规则层负责实现具体的业务规则和算法,数据访问层则负责与数据库进行交互。
  • 特点:优点是进一步提高了系统的可维护性、可扩展性和可复用性。不同层次之间的耦合度更低,每个层次可以独立地进行开发、测试和维护。同时,多层结构可以更好地适应复杂的业务需求,提高系统的性能和可靠性。缺点是系统的复杂度更高,对开发人员的技术要求也更高,部署和管理也更加困难。

B/S 结构(Browser/Server,浏览器 / 服务器结构)

  • 组成:由浏览器、Web 服务器和数据库服务器组成。用户通过浏览器访问 Web 服务器上的网页,Web 服务器根据用户的请求调用相应的应用程序或脚本进行处理,并与数据库服务器进行交互获取数据,最后将处理结果以网页的形式返回给浏览器。
  • 特点:优点是客户端只需安装浏览器,无需安装专门的客户端软件,方便用户使用和维护。系统的升级和更新只需要在 Web 服务器上进行,用户无需手动更新客户端。此外,B/S 结构具有良好的跨平台性,用户可以在不同的操作系统和设备上通过浏览器访问系统。缺点是由于所有的操作都通过浏览器进行,用户界面的交互性和响应速度相对较差。而且浏览器的功能有限,对于一些复杂的业务逻辑处理可能存在一定的局限性。

MVC(Model-View-Controller,模型 - 视图 - 控制器)架构

  • 组成:将软件系统分为三个部分,模型(Model)负责处理业务逻辑和数据存储,它封装了应用程序的核心数据和操作;视图(View)主要用于展示数据和用户界面,它将模型中的数据以可视化的方式呈现给用户;控制器(Controller)则充当中间桥梁,负责接收用户的输入和操作,调用相应的模型方法进行处理,并根据处理结果更新视图。
  • 特点:优点是实现了业务逻辑、数据显示和用户交互的分离,使得各个部分可以独立地进行开发、维护和扩展。提高了代码的可维护性和可复用性,同时也方便了不同开发人员之间的分工协作。缺点是对于小型应用程序,使用 MVC 架构可能会增加系统的复杂性和开发成本。而且由于模型、视图和控制器之间的交互较为复杂,可能会导致系统的性能受到一定的影响。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值