B/S、C/S模式介绍
1.B/S模式
B/S(Browser/Server,浏览器/服务器)方式的网络结构。
①、客户端统一采用浏览器如:Netscape和IE,通过Web浏览器向Web服务器提出请求,由Web服务器对数据库进行操作,并将结果传回客户端。
②、B/S结构简化了客户机的工作,但服务器将担负更多的工作,对数据库的访问和应用程序的执行都将在这里完成。即当浏览器发出请求后,其数据请求、加工、返回结果、动态网页生成等工作全部由Web服务器完成。
工作原理:
在B/S模式中,客户端运行浏览器软件。浏览器以超文本形式向Web服务器提出访问数据库的要求,Web服务器接受客户端请求后,将这个请求转化为SQL语法,并交给数据库服务器,数据库服务器得到请求后,验证其合法性,并进行数据处理,然后将处理后的结果返回给Web服务器,Web服务器再一次将得到的所有结果进行转化,变成HTML文档形式,转发给客户端浏览器以友好的Web页面形式显示出来。
特点:
①、系统开发、维护和升级的经济性:对于大型的管理信息系统,软件开发、维护与升级的费用是非常高的,BS模式所具有的框架结构可以大大节省这些费用,同时,BS模式对前台客户机的要求并不高,可以避免盲目进行硬件升级造成的巨大浪费。
②、B/S模式提供了一致的用户界面:B/S模式的应用软件都是基于Web浏览器的,这些浏览器的界面都很相似。对于无用户交互功能的页面,用户接触的界面都是一致的,从而可以降低软件的培训费用。
③、B/S模式具有很强的开放性: 在B/S模式下,外部的用户亦可通过通用的浏览器进行访问。
B/S模式的结构易于扩展: 由于Web的平台无关性,BS模式结构可以任意扩展,可以从一台服务器、几个用户的工作组级扩展成为拥有成千上万用户的大型系统。
④、B/S模式具有更强的信息系统集成性: 在BS模式下,集成了解决企事业单位各种问题的服务,而非零散的单一功能的多系统模式,因而它能提供更高的工作效率。
⑤、B/S模式提供灵活的信息交流和信息发布服务: B/S模式借助Internet强大的信息发布与信息传送能力可以有效地解决企业内部的大量不规则的信息交流。
2.C/S模式
C/S(Client/Server,客户/服务器)方式的网络计算模式。
①、服务器负责管理数据库的访问,并对客户机/服务器网络结构中的数据库安全层加锁,进行保护;
②、客户机负责与用户的交互,收集用户信息,通过网络向服务器发送请求。
③、C/S模式中,资源明显不对等,是一种“胖客户机(fat client)”或“瘦服务器(thin server)”结构。
④、客户程序(前台程序)在客户机上运行,数据库服务程序(后台程序)在应用服务器上运行。
工作原理:
C/S模式主要由客户应用程序、服务器管理程序和中间件三个部分组成。服务器一般分为应用服务器和数据库服务器。两层C/S结构的实现原理是:应用程序(客户端)首先依据用户操作形成对应的SQL语句,然后通过网络协议(如:TCP/IP等)向数据库服务器发送SQL命令;数据库服务器通过其监听端口(如:Oracle的1521等)实时检测有无服务请求。当检测到有SQL请求时,服务器首先对客户端身份进行验证,验证通过后执行请求客户的SQL命令。
特点:
①、交互性强是C/S固有的一个优点。在C/S中,客户端有一套完整应用程序,在出错提示、在线帮助等方面都有强大的功能,并且可以在子程序间自由切换。
②、C/S模式提供了更安全的存取模式。由于CS配备的是点对点的结构模式,采用适用于局域网、安全性可以得到可靠的保证。而B/S采用点对多点、多点对多点这种开放的结构模式,并采用TCP/IP这一类运用于Internet的开放性协议,其安全性只能靠数据服务器上管理密码的数据库来保证。
③、由于C/S在逻辑结构上比BS少一层,对于相同的任务,C/S完成的速度总比BS快,使得C/S更利于处理大量数据。由于客户端实现与服务器的直接相连,没有中间环节,因此响应速度快。同时由于开发是针对性的,因此,操作界面漂亮,形式多样,可以充分满足客户自身的个性化要求。
缺点:
C/S缺少通用性,业务的变更,需要重新设计和开发,增加了维护和管理的难度,进一步的业务拓展困难较多
B/S、C/S模式介绍的更多相关文章
- CDN模式介绍
body{ font: 16px/1.5em 微软雅黑,arial,verdana,helvetica,sans-serif; } CDN(content delivery networ ...
- 企业IT管理员IE11升级指南【4】—— IE企业模式介绍
企业IT管理员IE11升级指南 系列: [1]—— Internet Explorer 11增强保护模式 (EPM) 介绍 [2]—— Internet Explorer 11 对Adobe Flas ...
- Spark on YARN两种运行模式介绍
本文出自:Spark on YARN两种运行模式介绍http://www.aboutyun.com/thread-12294-1-1.html(出处: about云开发) 问题导读 1.Spark ...
- jsp学习---mvc模式介绍和el表达式,jstl标签库的使用入门
一.mvc模式介绍 下图是常用的mvc分层模式: 项目中的包命名规则,一般如下: com.amos.domain 封装JavaBean,一般我喜欢用model命名这个包com.amos.dao 封装d ...
- android MVP模式介绍与实战
android MVP模式介绍与实战 描述 MVP模式是什么?MVP 是从经典的模式MVC演变而来,它们的基本思想有相通的地方:Controller/Presenter负责逻辑的处理,Model提供数 ...
- weblogic开发模式与生产模式介绍
weblogic开发模式与生产模式介绍 开发模式:该模式启用自动部署 生产模式:该模式关闭自动部署 weblogic server 三种部署方法:自动部署.控制台部署.命令部署 自动部署:当其处于启用 ...
- VMware网络模式介绍(下篇)
VMware网络模式介绍 VMWare提供了三种工作模式,它们是bridged(桥接模式).NAT(网络地址转换模式)和host-only(主机模式). Bridged 模式: 在桥接模式下,VMwa ...
- 【RabbitMQ】工作模式介绍
一.前言 之前,笔者写过< CentOS 7.2 安装 RabbitMQ> 这篇文章,今天整理一下 RabbitMQ 相关的笔记便于以后复习. 二.模式介绍 在 RabbitMQ 官网上提 ...
- Java中的单利模式介绍
单利模式:本来是不准备写的,但是最近发现好多公司面试时都会或多或少的提到单利模式,因此今天把单利模式拉出来说说. 定义:只包含一个被称为单例类的特殊类.通过单例模式可以保证系统中一个类只有一个实例而且 ...
- Solr系列二:solr-部署详解(solr两种部署模式介绍、独立服务器模式详解、SolrCloud分布式集群模式详解)
一.solr两种部署模式介绍 Standalone Server 独立服务器模式:适用于数据规模不大的场景 SolrCloud 分布式集群模式:适用于数据规模大,高可靠.高可用.高并发的场景 二.独 ...
随机推荐
- [freemarker篇]01.入门Freemarker示例
这今天“弄”军哥的管理系统,里面由涉及到一部分的FreeMarker的知识,并且我那些学生在亚信实习也涉及到这部分的知识,所以想开始总结一些FreeMarker,正好我可开始使用一下Maven,简单的 ...
- [C#] 小记 new 和 override 关键字
C#要想实现函数的override,要求和C++一样,父类的函数必须用virtual关键字注明,随后在子类中用override关键字表明重写的函数. 子类同名函数定义时,如果什么都不写,或者使用new ...
- Spring注解@Resource和@Autowired的区别
@Resource和@Autowired都是用来做bean的依赖注入的,两者都可以写在字段和setter方法上. java为我们提供了 javax.annotation.Resource这个注解. s ...
- SpringBoot打war包并部署到tomcat下运行
一.修改pom.xml. 1.packaging改为war 2.build节点添加<finalName>你的项目名</finalName> 二.修改项目启动类,继承Spring ...
- hdu 3948 The Number of Palindromes
The Number of Palindromes Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 262144/262144 K (J ...
- 51Nod 1003 阶乘后面0的数量 | 思维
题意:n的阶乘后面0的个数,如果直接算出阶乘再数0的数量一定会超时的. 因为10=2*5,所以求出5贡献的次数就行. #include "bits/stdc++.h" using ...
- UVA129 暴力dfs,有许多值得学习的代码
紫书195 题目大意:给一个困难的串,困难的串的定义就是里面没有重复的串. 思路:不需要重新对之前的串进行判重,只需要对当前的加入的字符进行改变即可. 因为是判断字典序第k个的字符串,所以要多一个全局 ...
- 彻底解决_OBJC_CLASS_$_某文件名", referenced from:问题
最近在使用静态库时,总是出现这个问题.下面总结一下我得解决方法: 1. .m文件没有导入 在Build Phases里的Compile Sources 中添加报错的文件 2. .framewor ...
- 常见网络命令之Ping命令
前言:计算机网络老师要求我们自己总结一下常见的网络命,然后上课可以上去讲一下这些命令使用,像我这么听话的好学生,肯定是照老师要求,认真的总结了一下,总结的过程中,我发现网上已经有的资源讲的都不是很详细 ...
- Linux线程基础函数
1. 线程标识: (1) 比较两个线程ID: #include <pthread.h> int pthread_equal(pthread_t tid1, pthread_t tid2); ...