C/S、B/S应用程序介绍
Ø C/S应用程序介绍
C/S (Client/Server)结构,即客户机和服务器结构。它是常说的胖客户端软件体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构。比如网络游戏就是用C/S模式开发的,想玩网络游戏必须在电脑机client上装上一个客户端软件,而且很多的业务处理都是在客户端上实现的。通常情况下C/S模式对网络的依赖性不强。
Ø C/S模式优劣
(1)、应用服务器运行数据负荷较轻。
最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序。二者可分别称为前台程序与后台程序。运行数据库服务器程序的机器,也称为应用服务器。一旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户应用程序运行在用户自己的电脑上,对应于数据库服务器,可称为客户电脑,当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则作出应答,送回结果,应用服务器运行数据负荷较轻。
(2)、C/S架构的劣势是高昂的维护成本且投资大。
首先,采用C/S架构,要选择适当的数据库平台来实现数据库数据的真正“统一”,使分布于两地的数据同步完全交由数据库系统去管理,但逻辑上两地的操作者要直接访问同一个数据库才能有效实现,有这样一些问题,如果需要建立“实时”的数据同步,就必须在两地间建立实时的通讯连接,保持两地的数据库服务器在线运行,网络管理工作人员既要对服务器维护管理,又要对客户端维护和管理,这需要高昂的投资和复杂的技术支持,维护成本很高,维护任务量大。
其次,传统的C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,由于产品的更新换代十分快,代价高和低效率已经不适应工作需要。在JAVA这样的跨平台语言出现之后,B/S架构更是猛烈冲击C/S,并对其形成威胁和挑战。
Ø B/S应用程序介绍
B/S即Browser/Server。B/S基本就是 Browse-WebService-DB这样的架构。也就是通常说的瘦客户端。这个结构中几乎所有的服务就在服务应用端来处理。好处就是对客户端要求不高,就一个浏览器一般就可以,而且便于进行权限验证。
Ø B/S模式优劣
(1)、维护和升级方式简单。
目前,软件系统的改进和升级越来越频繁,B/S架构的产品明显体现着更为方便的特性。对一个稍微大一点单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行;所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。因此,维护和升级革命的方式是“瘦”客户机,“胖”服务器。
(2)、成本降低,选择更多。
大家都知道windows在桌面电脑上几乎一统天下,浏览器成为了标准配置,但在服务器操作系统上windows并不是处于绝对的统治地位。现在的趋势是凡使用B/S架构的应用管理软件,只需安装在Linux服务器上即可,而且安全性高。所以服务器操作系统的选择是很多的,不管选用那种操作系统都可以让大部分人使用windows作为桌面操作系统电脑不受影响,这就使的最流行免费的Linux操作系统快速发展起来。
(3)、应用服务器运行数据负荷较重。
由于B/S架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器端(Server)完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。但是,应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。因此,许多单位都备有数据库存储服务器,以防万一。
应用程序服务器与WEB服务器介绍
我们通常说的服务器实际上一台有特殊配置和功效的计算机,是一台机器。
而我们这里提到的应用程序服务器或web服务器是指配属在服务器机器上的一个软件组织使其能够完成一些特殊的功能。在学习本课题之前同学们需要对服务器与普通pc(个人电脑)机的区别有一个了解。
Ø PC机与服务器有哪些区别:
1. PC机和专业服务器是完全是两种东西,硬件不同,当然驱动也不可能相同。比如说对服务器主板而言,最重要的是高可靠性和稳定性,其次才是高性能。因为大多数的服务器都要满足每天24小时、每周7天的满负荷工作要求。价格方面自然要贵很多,当然PC也有20000元以上的配置,这样的PC也可以做服务器,但是不是真正的服务器。
2. 由于服务器数据处理量很大,需要采用多CPU并行处理结构,即一台服务器中安装2、4、8等多个CPU(必需是偶数个);对于服务器而言,多处理器可用于数据库处理等高负荷高速度应用;而对于工作站,多处理器系统则可以用于三维图形制作和动画文件编码等单处理器无法实现的高处理速度应用。为适应长时间,大流量的高速数据处理任务,在内存方面,服务器主板能支持高达十几GB甚至几十GB的内存容量,并且需要有很高的可靠性。
Ø WEB服务器
Web服务器是专门针对http协议而实现的一种软件机制,我们可以将一个web服务器安装在一个服务器上,再将我们的站点部署在这个web服务器中,这样我们在客户端通过浏览器想此站点发出一些请求,web服务器就可以收到我们的请求,并进过一定的处理给客户端发出一些响应。Web服务器在处理一些静态的http请求时效率非常之高也就是说更加专业。常用的web服务器软件有Apache等。
Ø 应用程序服务器
根据我们的定义,作为应用程序服务器,它通过各种协议,可以包括http,把商业逻辑暴露给客户端应用程序。web服务器主要是处理向浏览器发送html以供浏览,而应用程序服务器提供访问商业逻辑的途径以供客户端应用程序使用。应用程序服务器使用此商业逻辑就象你调用对象的一个方法 (或过程语言中的一个函数)一样。也就是说我们的站点中还部署了用c# 或java语言开发而成的可执行文件这些文件可能是为了完成特殊的功能或许是对数据库的一些操作,这时候web服务器就会使用应用程序服务器,而后者就会调用用高级语言编写的可执行文件,之后将处理的结果转换为能够web服务器可识别的http协议下的语言返回给客户端。常见的应用程序服务器有大家熟悉的tomcat 、jboss等等。
这并不是说应用程序服务器就不能够解析http协议,他们当然有这个功能,想tomcat完全可以解析html文件,只是其在响应静态页面的时候显得不是很专业而已。
虽然应用程序服务器是个综合性人才,但我们通常组建服务器的时候还是使用web服务器与应用程序服务器的综合配置,这样无论是在效率上还是安全上都是很好的选择。
Apache、tomcat及IIS的联系
Ø Apache
Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。Apache取自“a patchy server”的读音,意思是充满补丁的服务器,因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。Apache对Linux的支持相当完美。它的成功之处主要在于它的源代码开放、有一支开放的开发队伍、支持跨平台的应用(可以运行在几乎所有的Unix、 Windows、Linux系统平台上)以及它的可移植性等方面。Apache是一个web服务器环境程序,可以作为web服务器使用。不过只支持静态网页,如(asp,php,cgi,jsp)等动态网页的就显得无能为力。
Ø Tomcat
Tomcat是一个开放源代码、运行servlet和JSP Web应用软件的基于Java的Web应用软件容器。TomcatServer是根据servlet和JSP规范进行执行的,因此我们就可以说Tomcat Server也实行了Apache-Jakarta规范且比绝大多数商业应用软件服务器要好。Tomcat是一个应用程序服务器,是一个能够很好解析java语言的应用程序服务器,当然他也可以解析一些静态网页。
Ø IIS
IIS是Internet InformationServices的缩写, 是由微软公司提供的基于运行MicrosoftWindows的互联网基本服务。最初是Windows NT版本的可选包,随后内置在Windows 2000、Windows XP Professional和Windows Server 2003一起发行,但在普遍使用的Windows XPHome版本上并没有IIS。
小结
本章主要介绍web应用程序方面的基本知识,旨在要求同学们在一些基础知识上有一个明确的认识。另外注明本书将以tomcat作为服务器软件经行讲解
本章我们要懂得:
1、C/S 、B/S分别表示的含义
2、应用程序服务器与web服务器的联系
3、Tomcat的历史及拥有的功能。