网络应用编程模型

互联网与企业内部网

网络的两个含义:

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

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

C/S模式和B/S模式

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

分散式(Decentralized)

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

    已经被淘汰

集中式(Centralized)

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

分布式(Distributed)

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

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

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

C/S模式

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

特点

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

    C/S将网络事务处理分为两个部分

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

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

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

C/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编程模型

采用三层架构设计

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

B/S 和 C/S 的区别

  • 构建方式

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

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

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

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

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

网络编程模型(C/S模型和B/S模型)的更多相关文章

  1. Java网络编程:OSI七层模型和TCP/IP模型介绍

    OSI(Open System Interconnection),开放式系统互联参考模型 .是一个逻辑上的定义,一个规范,它把网络协议从逻辑上分为了7层.每一层都有相关.相对应的物理设备,比如常规的路 ...

  2. Java网络编程和NIO详解3:IO模型与Java网络编程模型

    Java网络编程和NIO详解3:IO模型与Java网络编程模型 基本概念说明 用户空间与内核空间 现在操作系统都是采用虚拟存储器,那么对32位操作系统而言,它的寻址空间(虚拟存储空间)为4G(2的32 ...

  3. 基于JVM原理、JMM模型和CPU缓存模型深入理解Java并发编程

    许多以Java多线程开发为主题的技术书籍,都会把对Java虚拟机和Java内存模型的讲解,作为讲授Java并发编程开发的主要内容,有的还深入到计算机系统的内存.CPU.缓存等予以说明.实际上,在实际的 ...

  4. OSI参考模型和TCP/IP模型基本知识

    OSI七层模型 为了解决网络之间的兼容性问题,实现网络设备间的相互通信,ISO于1984年提出的OSI参考模型(开放系统互连参考模型).但是由于种种原因,并没有一种完全忠实于OSI参考模型的协议族流行 ...

  5. 【计算机网络】两个网络模型——OSI参考模型和TCP/IP模型

    计算机网络 两个网络模型 计算机网络模型 分层机制----规划通讯细节 层与层之间之间是独立的.屏蔽的,下层为上层提供服务. 一些概念 实体: 任何发送/接收信息的软件/硬件进程. 对等层: 两个不同 ...

  6. 标准事件模型和IE事件模型有哪些区别?请具体解释他们的差异。

    通常,事件传送有三个阶段:事件捕获阶段,停留目标阶段,事件冒泡阶段. 1.阶段差异 DOM事件模型包含捕获阶段和冒泡阶段,DOM事件模型可使用e.stopPropagation()来阻止事件流:IE事 ...

  7. IE盒模型和W3C盒子模型的区别

    其实这个问题到现在真的是没有意义了,因为早在IE6的兼容模式开始就已经弃用了IE盒子模型了,但是现在的各种面试题还是会时常出现这样的上世纪的题目,我觉得其实时纯粹的刁难. 好了,吐槽不多说了,直接上图 ...

  8. Css盒模型有哪几部分,标准盒模型和IE盒模型有哪些区别

    首先介绍Css的盒模型也就是标准盒模型(BOX Model) 包含了 内容(content) 内边距(padding) 边框(border) 外边框(margin) 这是大家经常用到的,也是现在的标准 ...

  9. 查漏补缺:OSI七层模型和TCP/IP模型

    应用层协议:Telnet.FTP.e-mail等 传输层协议:TCP.UDP.STCP等 网络层协议:IP.ICMP.IGMP等 链路层协议:设备驱动及接口卡

随机推荐

  1. 2018 ACM-ICPC 宁夏 H.Fight Against Monsters(贪心)

    It is my great honour to introduce myself to you here. My name is Aloysius Benjy Cobweb Dartagnan Eg ...

  2. CNN Mini-Fashion数据集以及Pytorch初体验

    下载Fasion-MNIST数据集 Fashion-MNIST是一个替代原始的MNIST手写数字数据集的另一个图像数据集. 它是由Zalando(一家德国的时尚科技公司)旗下的研究部门提供.其涵盖了来 ...

  3. crm项目-stark组件分析

    ###############    stark组件     ################ """ 这个stark组件是非常神奇的 1,独立的一个组件 2,没有mod ...

  4. Android library 传入本地maven仓库

    在项目根目录gradle.properties 添加 #包信息 GROUP_ID = com.chao.myvideo # Licence信息 PROJ_LICENCE_NAME=The Apache ...

  5. 01-信贷路由项目架构和 rose 框架的搭建

    1.信贷路由项目架构 2.工程搭建及测试 搭建tyrRouter-parent,tyrRouter-log-web,工程采用 maven 构建 配置 pom.xml 文件,父项目管理 jar 包的版本 ...

  6. signal——信号集

    1.信号集  每个进程都有一个信号屏蔽字,它规定了当前要阻塞递送到该进程的信号集.对于每种可能的信号,该屏蔽字中都有一bit位与之对应.信号数可能会超过一个整型数所包含的二进制位数,因此POSIX.1 ...

  7. 管理Exchange Online用户介绍(二)

    一.Exchange Online配置邮件传递限制 1..进入“Exchange 管理中心”,依次点击 收件人->邮箱->选择需要管理的用户->编辑->邮箱功能->邮件传 ...

  8. surprise库使用

    自动交叉使用法 #-*- coding:utf-8 -*- from surprise import SVD from surprise import Dataset from surprise.mo ...

  9. 收集到的技术相关网址——delphi

    1.DLL封装登录框架实现代码复用 https://www.cnblogs.com/wenwencao/articles/1333659.html

  10. Contig|scaffold|N50|L50|NG50|贪心算法|de bruiji graph|

    生物信息学 Contig是reads拼成的连续的DNA片段,连续表达一个gene.通过双端测序的contig可确定contig之间的关系得到scaffold,Scaffold是reads拼成的有gap ...