在传统 Web 应用的多层架构中

系统一般会包括有负载均衡器

Web 服务器、应用服务器等多个后端服务

其中,Web 服务器和应用服务器

常常被人视为一个整体

但其实从工作原理上来说

两者还是有一定区分的

Web Server

Web 服务器的基本功能就是提供 Web 信息浏览服务。它支持 HTTP 协议、HTML 文档格式及 URL,专门处理 HTTP 请求(request),可与客户侧的网络浏览器配合。它所提供的是一个可以执行服务器端(server-side)程序和返回(程序所产生的)响应(response)的环境。

Web 服务器在 web 页面处理上的步骤如下:

1. Web 浏览器向一个特定的服务器发出 Web 页面请求;

2. Web 服务器接收到 web 页面请求后,会把请求发至应用服务器处,传递给处理请求的程序,以寻找所请求的 web 页面;

3. Web 服务器从应用服务器处接收到所请求的 web 页面内容,并将结果返回给客户侧的 Web 浏览器,由其显示出来。

The Application Server

应用程序服务器(简称应用服务器)的职能则是让多个用户可以同时使用应用程序。它提供的是客户端应用程序可以调用(call)的方法(methods),并通过很多协议来为应用程序提供(serves)商业逻辑(business logic)。

如果说 Web 服务器主要是处理向浏览器发送 HTML 以供浏览,那应用服务器就是提供访问商业逻辑的途径以供客户端应用程序使用。应用程序使用此商业逻辑就象调用对象的一个方法 (或过程语言中的一个函数)。比如在用户中心、结算中心、支付中心中所涉及到的导航、存储数据、安全认证、控制流程,都需要靠应用服务器来响应。

在过去,两者之间的功能区别较为明显

而如今在大多数情况下

人们习惯于把 Web 服务器归类为

应用服务器的子集

因为随着各自功能项的不断添加

它们之间的界线早已变得模糊

我们知道,web 页面内容有静态的,也有动态的。静态的内容,Web 服务器可以直接将结果发回给浏览器,对于动态内容,则通常需要交给应用服务器先处理,由应用服务器返回结果。早期由于受 HTTP 1.0 协议的局限,web 服务所提供的页面内容和图片服务大多是静态的。后来随着CGI功能的添加,意味着可以为每个 web 请求启动一个进程来产生动态内容。例如.NET中最常用的 Web 服务器是IIS,因为IIS 就可以自已解释处理 ASP、ASP.NET 这两种微软的动态网页脚本语言。

虽然 Web 服务器不支持事务处理或数据库连接池,但现在由于 HTTP 协议愈发成熟,使得 Web 服务器也变得更加复杂,拥有了像缓存、安全和 session 管理这些附加功能,它可以处理更高的负载、更多的并发,并通过传送 XML 有效载荷(payload)给服务器,让自己具备处理数据和响应(response)的能力(前提是不需要应用服务器来处理相关逻辑)。

就象 Web 服务器一样,应用服务器配置了多种容错(fault tolerance)和可扩展(scalability)技术,并且传统的应用服务器也开始逐渐嵌入 HTTP 通信等原本属于 Web 服务器的功能。现在大多数应用程序服务器内其实已经包含了 Web 服务器,这就意味着可以把 Web 服务器当作是应用程序服务器的一个子集(subset)。不过在一些复杂网站的架构中,我们还是会建议将两者进行独立配置。毕竟,部分功能的必要分离有助于提高系统的整体性能,并给维护和升级留下余地。

景安服务器怎么上传网站程序,Web服务器是如何被应用服务器“收编”的?相关推荐

  1. web服务器可以上传信息吗,Web服务器的架设上传.doc

    Web服务器的架设上传.doc 简单Web服务器的架设 什么是web服务器 Web服务器其实就是一台提供网页解析服务的计算机上的一个软件程序.WEB服务器也称为WWW(WORLD WIDE WEB)服 ...

  2. 《宝塔面板教程5》:如何上传网站程序安装自己的网站

    除了上一篇教程讲的,用"一键部署网站"的方式建站,我们还可以自己上传网站程序进行安装. 不知道如何安装宝塔面板的朋友,可以先查看下面的几篇教程: 点击查看:<宝塔面板教程1& ...

  3. 一步一步搭建一个图片上传网站(后台服务器用nodejs)

    前几天看了腾讯云社区的一个文件上传的文章 <文件上传那些事儿> ,大体上讲了以下h5中图片上传的几个核心原理,但是没有后端接受的服务器代码,没法做测试.也没有具体的一个实例都是一些基本的原 ...

  4. 万网云服务器怎么上传网站吗,万网云服务器如何配置网站

    想要用万网云服务器配置网站,但又不知道如何操作,那么万网云服务器如何配置网站呢?下面是学习啦小编收集整理的万网云服务器如何配置网站,希望对大家有帮助~~ 万网云服务器配置网站的方法 进入主机管理控制台 ...

  5. 一步一步搭建一个图片上传网站(后台服务器用nodejs) 1

    前几天看了腾讯云社区的一个文件上传的文章文件上传那些事儿,大体上讲了以下h5中图片上传的几个核心原理,但是没有后端接受的服务器代码,没法做测试.也没有具体的一个实例都是一些基本的原理片段,并且ui界面 ...

  6. 简单php web ftp服务器,php 上传文件到ftp服务器的简单示例(单文件)

    搜索热词 PHP上传单个文件到ftp服务器的演示范例,感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编来看看吧. 经测试代码如下: /** * 上传文件到ftp服务器 * * @param ...

  7. 文件怎么上传远程服务器,怎么上传文件到远程服务器

    怎么上传文件到远程服务器 内容精选 换一换 将文件上传至Windows云服务器一般会采用MSTSC远程桌面连接的方式.本节为您介绍本地Windows计算机通过远程桌面连接,上传文件至Windows云服 ...

  8. 移动端上传大文件到服务器,android上传大文件到服务器地址

    android上传大文件到服务器地址 内容精选 换一换 安装传输工具在本地主机和Windows云服务器上分别安装数据传输工具,将文件上传到云服务器.例如QQ.exe.在本地主机和Windows云服务器 ...

  9. Git上传本地文件到服务器,git上传文件到远程服务器

    git上传文件到远程服务器 内容精选 换一换 将文件上传至Windows云服务器一般会采用MSTSC远程桌面连接的方式.本节为您介绍本地Windows计算机通过远程桌面连接,上传文件至Windows云 ...

最新文章

  1. “Matlab R2016a中运行‘mex -setup’,错误使用 mex 未找到支持的编译器或 SDK”的解决办法
  2. Altium Designer圆形、椭圆形铺铜
  3. 【C++】运算符重载 Operator Overload
  4. 光动能表怎么维护_西铁城手表推荐,西铁城光动能表推荐选购指南
  5. 交换机是如何对数据包打标签去标签的_条形码软件如何在标签纸上套打可变条码...
  6. 【Python】Python中的引用和赋值
  7. Leetcode每日一题:381.insert-delete-getrandom-o1-duplicates-allowed(时间插入、删除和获取随机元素-允许重复)
  8. SOLARIS UFS文件系统解析
  9. cwntos使用不了php,centos系统不能使用yum命令怎么解决
  10. poj 2406 Power Strings(KMP)
  11. LoRa网关与服务器通信——PROTOCOL
  12. 指数函数的计算机语言,怎么使用C语言求幂函数和指数函数
  13. LeetCode1419-数青蛙
  14. SNMP协议以及著名的MIB详解
  15. git可视化工具gitg和SmartGit
  16. gitlab下载地址
  17. 计算机组成原理 | 第三章《运算方法和运算部件》学习笔记
  18. 企业培养人才的捷径【内部导师制】
  19. 图形学-(视图变换,投影变换)
  20. 华为荣耀5a是android几,系统:MIUI对决EMUI 体验不分伯仲_荣耀 畅玩5A_手机评测-中关村在线...

热门文章

  1. 把握关键词推广技巧 有效提升网站推广质量
  2. GitHub上最火的Android开源项目
  3. 第四章 STM32+LD3320+SYN6288+DHT11实现语音获取温湿度数值(上)
  4. 如何按要求比较两个数的大小(不使用大于、小于以及if语句)
  5. 1104 Path In Zigzag Labelled Binary Tree
  6. #P07754. 加数
  7. 当php懈垢windows通用上传缺陷
  8. 《程序员修炼之道》读书笔记(二)--第三周
  9. JAVACV实现视频帧添加中文水印
  10. 京东 探索星球瓜分 1000 亿京豆 脚本