C/S,B/S的应用和区别
·C/S——客户/服务器模式
特点:非对等相互作用——即客户与服务器出于不平等的地位
表现在:服务器用有客户所不具备的硬件和软件资源以及运算能力,服务器提供服务,客户请求服务。
A.客户端与服务器的数量关系:
·多个客户进程同时访问一个服务器进程(N~>1)
·一个客户进程可以同时访问多个服务器提供的服务(1~>N)
B.客户端与服务器的位置关系:
·a.客户端和服务器放在同一个计算机上面——应用于网络应用程序开发测试。
·b.客户端和服务器在同一个局域网上(通过LAN相连接)——局域网文件共享、局域网打印机
·c.客户端通过先连接LAN再经过路由器的转接进入WAN以此和服务器相连(其实就是通过广域网)——最常见的网络应用程序
C.客户端与服务器的角色关系:
·应用程序作为纯粹的客户运行。——例如web浏览器
·应用程序作为纯粹的服务器运行。——如具备基本功能的ftp服务器
·应用程序同时具备客户和服务器两种角色。
Ps: 1.通过判断服务器或者客户本地端是否保存状态信息来确定服务器状态的有无
·无状态的服务器例子:禁用cookie功能的web服务器
·有状态的服务器例子:网络游戏服务器
2.服务器的区别(循环服务器和并发服务器)
·循环:通过单线程内设置循环控制实现对多个客户请求的逐一响应
·并发:通过使请求处理(多线程)和I/O部分重叠达到高性能
·B/S——浏览器/服务器模式
·简述:用户通过www浏览器实现,一部分事务逻辑在前端(浏览器)实现,主要事务逻辑在服务端实现。通过三层架构(表现层、事务逻辑层、数据处理层)部署实现。
·PS:B/S模型是特殊的C/S模型,特殊之处在于,客户端软件特质浏览器。使用HTTP协议通信。用通用浏览器实现原来需要复杂专用软件才能实现的客户功能,节约了开发成本。
·三层架构:A.表示层、B.逻辑层、C.数据层
·A.表示层:客户端表示层——由web浏览器组成,不存放任何应用程序。
·B.逻辑层:应用服务器层(事务逻辑层)——由一台或者多台服务器组成,具有良好的可扩展性。
·C.数据层:数据中心层(数据处理层)——有数据库系统组成,用于存放业务数据。
联系
·浏览器/服务器(B/S)模型是一种特殊的、具体化的客户/服务器模型(C/S)模型,其特殊之处是
B/S模型的客户端软件特指路浏览器,服务器一般是web服务器,使用HTTP协议通信。其工作过程是C/S模型的具体化、实例化。
·二者本质思想均是给予计算机网络执行中,不同主机之间的软硬件资源、运算能力和信息不均等,为实现资源信息共享,必然形成不对等的通信地位和交互方式。
·两种结构对应的软件系统均为分布式网络应用程序系统。
优缺点
C/S模型:
优点:
结构简单。
支持分布式、并发环境。有效提高资源的利用率和共享程度。
服务器集中管理资源,有利于权限控制和系统安全。
可扩展性较好。客户和服务器均可单独地升级
传统C/S相比较B/S的局限:
1.不易部署(客户端逐一安装、挑平台)
2.维护困难(客户端需注意更新)
B/S
优点:分布式、易扩展、共享性强
相比较传统的C/S的优势:
1.易部署(各平台自带通用浏览器)
2.容易维护(服务器端改变网页内容可实现所有用户同步更新)
3.页面动态刷新,响应速度明显降低。
C/S,B/S的应用和区别的更多相关文章
- c#与java的区别
经常有人问这种问题,用了些时间java之后,发现这俩玩意除了一小部分壳子长的还有能稍微凑合上,基本上没什么相似之处,可以说也就是马甲层面上的相似吧,还是比较短的马甲... 一般C#多用于业务系统的开发 ...
- jquery和Js的区别和基础操作
jqery的语法和js的语法一样,算是把js升级了一下,这两种语法可以一起使用,只不过是用jqery更加方便 一个页面想要使用jqery的话,先要引入一下jqery包,jqery包从网上下一个就可以, ...
- 【原】nodejs全局安装和本地安装的区别
来微信支付有2年多了,从2年前的互联网模式转变为O2O模式,主要的场景是跟线下的商户去打交道,不像以往的互联网模式,有产品经理提需求,我们帮忙去解决问题. 转型后是这样的,团队成员更多需要去寻找业务的 ...
- 探究@property申明对象属性时copy与strong的区别
一.问题来源 一直没有搞清楚NSString.NSArray.NSDictionary--属性描述关键字copy和strong的区别,看别人的项目中属性定义有的用copy,有的用strong.自己在开 ...
- X86和X86_64和X64有什么区别?
x86是指intel的开发的一种32位指令集,从386开始时代开始的,一直沿用至今,是一种cisc指令集,所有intel早期的cpu,amd早期的cpu都支持这种指令集,ntel官方文档里面称为&qu ...
- Java中Comparable与Comparator的区别
相同 Comparable和Comparator都是用来实现对象的比较.排序 要想对象比较.排序,都需要实现Comparable或Comparator接口 Comparable和Comparator都 ...
- MySQL中interactive_timeout和wait_timeout的区别
在用mysql客户端对数据库进行操作时,打开终端窗口,如果一段时间没有操作,再次操作时,常常会报如下错误: ERROR (HY000): Lost connection to MySQL server ...
- 设置line-height:1.5和line-height:150%或者line-height:150px的区别
直接正题: 看一下line-height可能的值: 其实可以分为两类: (1)不带单位的(如line-height:1.5),这种是推荐使用的: (2)带单位的(如line-heigth:30px/1 ...
- C#中Length和Count的区别(个人观点)
这篇文章将会很短...短到比你的JJ还短,当然开玩笑了.网上有说过Length和count的区别,都是很含糊的,我没有发现有 文章说得比较透彻的,所以,虽然这篇文章很短,我还是希望能留在首页,听听大家 ...
- select、poll、epoll之间的区别总结
select.poll.epoll之间的区别总结 05/05. 2014 select,poll,epoll都是IO多路复用的机制.I/O多路复用就通过一种机制,可以监视多个描述符,一旦某个描述符就绪 ...
随机推荐
- 【Web】前端裁剪图片,并上传到服务器(Jcrop+canvas)
web网站中常常有的功能:上传头像.上传封面等:一般图片都有一定的比例限制,所以需要前端在上传图片时,进行裁剪,并把裁剪后的图片进行上传. 本例采用Jcrop插件实现裁剪效果,canvas裁剪图片,并 ...
- 前端之javascript的数据类型1和BOM对象
一 js对象 BOM对象:browser object model浏览器模型对象 window对象:定时器 DOM对象:文档对象模型 js对象:字符串对象,数组对象,日期对象,math对象 new关键 ...
- 840. Magic Squares In Grid
class Solution { public: int numMagicSquaresInside(vector<vector<int>>& grid) { ; in ...
- 将excel的数据导入到数据库后都乱码了是怎么回事
将excel内容首先保存成csv格式,然后在MySQL数据库中导入,结果汉字出现了乱码. 解决过程: 1.csv文件以txt形式打开,另存为,选择utf-8编码. 2.数据库,设置,collation ...
- PHP中两个冒号是什么意思
类中 静态方法和静态属性的引用方法 对类的静态属性和方法的直接引用,这种情况可以不需要实例化类而直接使用“::”调用
- myeclipse安装svn方法汇总
myeclipse安装svn方法汇总 博客分类: eclipse MyEclipse6.5安装SVN插件,掌握了几种方法,本节就像大家介绍一下MyEclipse6.5安装SVN插件的三种方法,看完 ...
- Promise.all函数的使用
Promise.all([this.getCity('guess'),this.getCity('hot'),this.getCity('group')]).then(res=>{ // con ...
- java学习路线图(2018年最新版)
最近有些网友问我如何自学 Java 后端,还有些是想从别的方向想转过来,但都不太了解 Java 后端究竟需要学什么,究竟要从哪里学起,哪些是主流的 Java 后端技术等等,导致想学,但又很迷茫,不知从 ...
- SGU 271 Book Pile (双端队列)
题意:n,m,k,表示有一个长度为 n 的序列,有 m 个操作,操作有 2 种,第一种是 ADD 在前面添加一个串,第二种是把前 k 个进行翻转,问你最后的序列是什么样的. 析:很明显,如果直接模拟, ...
- 如何使用vs进行代码比较
当我们在进行团队合作开始项目时,有时候不仅自己要写代码还需要修改bug,当我们修改代码以后,为了保持代码库中代码的整洁美观和一直性,有些误操作,比如多一个或多个空格,多一行,少一行,格式对齐等,这样的 ...