网络编程模型(C/S模型和B/S模型)

时间:2023-03-08 16:20:42

网络应用编程模型

互联网与企业内部网

网络的两个含义:

  • 互联网 :互联网(Internet)是一种覆盖全世界的全球性互联的网络。

  • 企业内部网:企业内部网(Intranet)将企业内部的网络和企业外部的网络通过防火墙有效隔离,每个Intranet都变成了一个相对独立的网络环境。

C/S模式和B/S模式

早期计算机网络的通信模型

分散式(Decentralized)

分散式系统
用户只负责管理自己的计算机系统,各自独立的系统之间没有资源或信息的交换或共享。
优点
可靠性高
缺点
  • 存在大量共享数据的重复存储
  • 容易导致一个企业的各个部门数据的不一致性
  • 造成成本,硬件,支持,运营成本的大量增加

    已经被淘汰

集中式(Centralized)

网络编程模型(C/S模型和B/S模型)

集中式系统
一台计算机(主机),保存一个企业组织的全部数据,用户则通过终端来访问这台主机。
终端不具有处理信息的能力。
优点
  • 硬件成本低,所有的运作和管理都由一台主机来完成;
  • 资源集中、数据共享,减小或消除了数据的冗余和不一致性。
缺点
  • 可靠性问题,主机一旦出现故障,系统就全部出现故障。
  • 多个用户访问,系统响应慢,不能充分满足不同部门或用户的需要;不能满足某些特殊部门或用户的需要。

分布式(Distributed)

网络编程模型(C/S模型和B/S模型)

分布式系统
分散式系统和集中式系统的混合体
将分散在网络环境中的各种资源以一个整体的形式呈现给用户,以全局的方式管理资源;
根据用户需要动态分配任务,为用户任意调度网络资源;用户的体验和使用单机几乎工作一样。
调度对用户来说是透明的。
分布式系统与计算机网络的区别

软件区别,硬件并没有区别。

分布式环境中,资源以透明的方式供用户使用。

C/S模式

网络编程模型(C/S模型和B/S模型)

C/S(Client/Server)也叫C/S模式,C/S架构或C/S模型。

特点

  • 胖客户端编程架构
  • 主要工作在客户端进行

    C/S将网络事务处理分为两个部分
    • 客户端:客户端(Client,也叫客户机)用于为用户提供操作,同时向网络提供请求服务的接口;
    • 服务端: 服务端(Server)负责接收并处理客户端发出的服务请求,并将服务处理结果返回给客户端。

      C/S即适用于实际的应用程序,又适用于真正的计算机部署。
    • 从程序实现的角度来说,客户端和服务端实际是计算机上的两个进程的交互。服务端进程逐一等待并处理客户端请求。
    • 运行服务端进程的计算机系统一般通过所提供的服务来命名。

      例如,提供邮件服务的主机称为邮件服务器,提供远程文件访问的计算机称为文件服务器等。

C/S应用程序编程模型

网络编程模型(C/S模型和B/S模型)

B/S模式

B/S (Browse/Server),也叫B/S模式,B/S模型。

Browse是指Web浏览器,仅使用HTTP进行通信。

极少数事务在前端实现,但主要事务逻辑在服务器端实现。

优点

  • B/S架构客户端无需安装,有Web浏览器即可。
  • B/S架构可以直接放在广域网上,交互性较强。
  • B/S架构无需升级多个客户端,升级服务器即可。

缺点

  • 在跨浏览器上,BS架构不尽如人意。
  • 表现要达到C/S程序的程度需要花费不少精力。
  • 在速度和安全性上需要花费巨大的设计成本。

B/S编程模型

采用三层架构设计

  • 用户界面
  • 逻辑设计
  • 数据支持

网络编程模型(C/S模型和B/S模型)

B/S 和 C/S 的区别

  • 构建方式

    一个是浏览器/服务器端架构,另一个是客户端/服务器架构

    B为浏览器,浏览器即客户端,C/S需单独设计客户端
  • 更新维护方式

    B/S结构维护升级比较简单,而C/S结构维护升级相对困难;
  • 安全控制能力

    C/S结构比B/S结构更安全,因为用户群相对固定,对信息的保护更强;
  • 用户受众

    C/S用户群相对固定,而B/S相对来说很广,B/S是建立在广域网上的,适应范围强。