An overview of the Web(Web概述)

An overview of the Web(Web概述)

1.1 程序开发架构

1.1.1C/S体系结构介绍

  • C/S是Client/Server的缩写,即客户端/服务器结构。
  • 在这种结构中,服务器 通常采用高性能的机或工作站,并采用大型数据库系统(如Oracle或SQLServer)
  • 客户端 则需要安装专用的客户端软件,如图下所示。
  • 这种结构可以充分利用两端硬件环境的优势,将任务合理分配到客户端和服务器,从而降低了系统的通信开销。在2000年以前,C/S结构占据网络程序开发领域的主流。

    img_264af1b8c05670653598f62d3cca0348.png

    image.png

1.1.2 B/S体系结构介绍

  • B/S是Brower/Server的缩写。即浏览器/服务器结构。
  • 在这种结构中,客户端不需要开发任何用户界面,而统一采用如IE和Firefox等浏览器,向服务器发送请求,由Web服务器进行处理。并将处理结果逐级传回客户端.如下图所示。
  • 这种结构利用不断成熟和普及的浏览器技术实现原来需要复杂专用软件才能实现的强大功能,从而节约了开发成本,是一种全新的软件体系结构。
  • 这种体系结构已经成为当今应用软件的首选体系结构。
img_23d8610443dc7c76be114970868b32f7.png

image.png

1.1.3 两种体系结构的比较

C/S结构和B/S结构是当今世界网绍程序开发体系结构的两大主流.目前,这两种结构都有自己的市
场份和客户群。但是,这两种体系结构又各有各的优点和缺点,下面将从以下3个方面进仃比较说明。

1.分发和堆护成本方面
  • C/S构的开发和维护成本都比B/S高。
  • 采用C/S结构时,对于不同客户端要开发不同的程序,而且软件的安装、调试和升均需要在所有的客户机上进行。例如,如果一个企业共有10个客户站点使用一套C/S结构的软件,则这10个客户站点都需要安装客户端程序·当这套软件进行了哪怕很微小的改动后,系统维护员都必须将客户端原有的软件卸载,再安装新的版本并进行配置,最可怕的是客户端的维护工作必须不折不扣地进行10次。若某个客户端忘记进行这样的更新,则该客户端将会因软件版本不一致而无法工作。
  • 而B/S结构软件,则不必在客户端进行安装及维护。如果将前面企业的C/S结构的软件换成B/S结构。这样在软件升级后。系统维护员 只需要将服务器的软件升级到最新版本,对于其他客户端,只要重新登录系统即可使用最新版本的软件。
2.客户负载
  • C/S结构的客户端不仅负责与用户的交互,收集用户信息,而且还需要完成通过网络向服务器请求
    对数据库、电子表格或文档等信息的处理工作。由此可见。应用程序的功能越复杂,客户斕程序也就
    庞大,这也给软件的维护工作带来了很大的困难
  • 而B/S结构的客户端把事务处理逻辑部分交给了服务器,由服务器进仃处理,客户端只需要进行显示,这样,将使应用程帛服务器的运行数据负荷较重一旦发生服务器“崩溃”等问题,后果不堪设想。因此,许多单位都备有数据库存储服务器,以防万一。
3.安全性
  • C/S结构适用于专人使用的系统,可以通过严格的管理派发软件.达到保证系统安全的目的,这样的软件相对来说安全性比较高
  • 而对于B/S结构的软件,由于使用的人数较多,且不固定。相对来说安全性就会低些

    由此可见,B/S相对于C/S来说具有更多的优势,今大量的应用程序开始转移到应用B/S结构,
    许多软件公司也争相开发B/S版的件,也就是Web应用程序。随着Internet的发展,基于HTTP协
    议和HTML标准的Web应用呈几何数量级的增长
    ,而这些Web应用又是由各种Web技术所开发的。

1.2 Web应用程序的工作原理

Web应用程序大体上可以分为两种,即静态网站和动态网站。早期的web应用主要是静态页面的
浏览,即静态网站。这些网站使用HTML语言来编写,放在Web服务器上,用户使用浏览器通过HTTP协议请求服务器上的Web页面,服务器上的Web服务器将接收到的用户请求处理后,再发送给客户端浏览器,显示给用户。整个过程如图1.3所示

img_76679dad5a8a1e4aabf0d4278c283277.png

随着网络的发展,很多线下业务开始向网上发展,基于Internet的web应用也变得越来越复杂,用户所访问的资源已不能只是局限于
服务器上保存的静态网页,更多的内容需要
根据用户的请求动态生成页面信息,即动态网站。这些网站通常使用
HTML语言和动态脚本语言(如JSP、ASP或是PHP等)编写,并将编写后的程序部署到Web服务器上,由Web服务器对动态脚本代码进行处理,并
转化
浏览器可解析的HTML代码,返回给
客户端浏览器,显示给用户。整个过程如图1.4所示。

img_eeaac226d94e6518076e2119077cb371.png

image.png

1.3 Web应用技术

在开发Web应用程序时通常需要应用 客户端服务区 两方面的技术。 客户端 应用的技术主要用于 展现信息内容 ,而 服务器 应用的技术则主要用于进行 业务逻辑的处理数据库的交互 等。

1.3.1 客户端应用的技术
  • HTML语言
  • CSS
  • Flash
  • 客户端脚本技术

    HTML语言不区分大小写,这一点与Java不同,例如HTML标记<body></body>也可以写为<BODY></BODY>。

    在网中用CSS样式不仅可以 美化页面,而且可以 优化网页速度 。因为CSS样式表文件只是简单的文本格式,不需要安装额外的第三方软件。另外,由于CSS提供了很多还效果从而 避免使用大量的图片 ,这样将 大大缩小文件的体积,提高下载速度。

1.3.2 服务器端应用的技术
  • CGI
  • ASP
  • PHP
  • ASP.NET
  • JSP

1.4 常用网上下载资源

参考文献《JavaWeb 从入门到精通》

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/101556.html原文链接:https://javaforall.net

(0)
上一篇 2021年6月8日 下午4:00
下一篇 2021年6月8日 下午5:00


相关推荐

  • Lambda plus: 云上大数据解决方案

    Lambda plus: 云上大数据解决方案本文会简述大数据分析场景需要解决的技术挑战,讨论目前主流大数据架构模式及其发展。最后我们将介绍如何结合云上存储、计算组件,实现更优的通用大数据架构模式,以及该模式可以涵盖的典型数据处理场景。大数据处理的挑战现在已经有越来越多的行业和技术领域需求大数据分析系统,例如金融行业需要使用大数据系统结合VaR(valueatrisk)或者机器学习方案进行信贷风控,零售、餐饮行业需要大数据系统…

    2022年6月2日
    33
  • 那个霸榜的Pony Alpha现身了:智谱GLM-5硬刚Claude Opus

    那个霸榜的Pony Alpha现身了:智谱GLM-5硬刚Claude Opus

    2026年3月12日
    2
  • DSL简介

    DSL简介什么是 DSL 为什么使用 DSL 何时使用 DSL

    2026年3月20日
    2
  • C++学习——类和对象

    C++学习——类和对象一、类和对象基本知识:1、类的访问控制有哪些?公有成员:以关键字public指明。私有成员:以关键字private指明。保护成员:以关键字protected指明。2、拷贝构造函数的作用是什么?用一个已经存在的对象初始化本类的新对象。3、友元函数和友元类的作用是什么?友元提供了不同类或对象的成员函数之间、类的成员函数与一般函数之间进行 数据共享的机制。对于一个类,可以利用关键字fri…

    2022年8月18日
    9
  • oracle insert 将一张表数据插入另外表中[通俗易懂]

    oracle insert 将一张表数据插入另外表中[通俗易懂]将一张表的数据插入两外张表以表B的数据插入表A,表B有多少符合条件的数据,表A就插入多少条数据如表B符合条件有10条数据,表A也会添加10条数据case1两张表的结构完全一样insertintotableAselect*fromtableBcase2,两张表的结构不一样,只获取表B中符合条件的一些列的数据insertintot

    2022年7月17日
    15
  • java 去重字符串_Java之字符串去重的简述

    java 去重字符串_Java之字符串去重的简述在编写 JS 代码时 我们发现可以通过 JSON 的特性消除重复数据 并快速的消除数据 下文是 Java 之字符串去重的简述 让爱站技术频道小编带你一起进入下文了解一下吧 字符串在任何应用中都占用了大量的内存 尤其数包含独立 UTF 16 字符的 char 数组对 JVM 内存的消耗贡献最多 因为每个字符占用 2 位 内存的 30 被字符串消耗其实是很常见的 不仅是因为字符串是与我们互动的最好的格式 而且是由于流行的 HT

    2026年3月19日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号