Web Server与App Server

Web Server与App ServerWebServer 常见的 WebServer 有 ApacheServer 与 Nginx ApacheHttpSe 是 Apache 软件基金会下的一个项目 是一款开源的 HTTP 服务器软件 它也可以作为邮件代理服务器 通用的 TCP 代理服务器 Nginx 之前有配置它的博文 大多数用它来做负载均衡 这两者基本相同 HTTP 服务器本质上也是一种应用程序 通常运行在

Web Server
  常见的Web Server有Apache Server与Nginx。

  Apache Http Server是Apache软件基金会下的一个项目,是一款开源的HTTP服务器软件(它也可以作为邮件代理服务器、通用的TCP代理服务器)。

  Nginx之前有配置它的博文,大多数用它来做负载均衡。

  这两者基本相同,HTTP服务器本质上也是一种应用程序——通常运行在服务器之上,绑定服务器的IP地址并监听某一个tcp端口来接收并处理HTTP请求,这样客户端(各种浏览器)就能够通过HTTP协议来获取服务器上的网页(HTML格式)、文档(PDF格式)、音频(MP4格式)、视频(MOV格式)包括CSS、JS等等资源。下图描述的就是这一过程:

这里写图片描述

  一个HTTP Server关心的是HTTP协议层面的传输和访问控制,所以在Apache/Nginx上你可以看到代理、负载均衡等功能。客户端通过HTTP Server访问服务器上存储的资源(HTML文件、图片文件等等)。通过CGI技术,也可以将处理过的内容通过HTTP Server分发,但是一个HTTP Server始终只是把服务器上的文件如实的通过HTTP协议传输给客户端。

App Server
  其至于企业防火墙之内,它和Web Server之间的连接必须且一定为内部IP连接。外部IP:即Internet IP地址,我们的Web服务器一般会有一个内部IP和一个外部IP,因此在这里,我们的App Server没有任何外部IP,只有内部IP,所以我们在这里说App Server与Web Server只能以内部IP形式连接。比如说我们用的App Server是Tomcat,它的端口为8080,那么这个IP地址上的8080端口只能由任何内部IP才能访问,外部的Internet是访问不了的,这样做就是为了安全!

  App Server用于解析我们的任何需要Java编译器才能解析的“动态”网页,其实App Server本身也能解析任何静态网页的。

  Tomcat是Apache软件基金会下的另一个项目,与Apache HTTP Server相比,Tomcat能够动态的生成资源并返回到客户端。Apache HTTP Server和Nginx都能够将某一个文本文件的内容通过HTTP协议返回到客户端,但是这个文本文件的内容是固定的——也就是说不能和网页进行一些交互,只能做简单的页面跳转,比如:包含显示当前时间的页面;显示当前IP地址的页面;

  Tomcat运行在JVM之上,它和HTTP服务器一样,绑定IP地址并监听TCP端口,同时还包含以下职责:管理Servlet程序的生命周期;将URL映射到指定的Servlet进行处理;与Servlet程序合作处理HTTP请求——根据HTTP请求生成HttpServletResponse对象并传递给Servlet进行处理,将Servlet中的HttpServletResponse对象生成的内容返回给浏览器。

转载自: https://www.cnblogs.com/zhengbin/p/5907242.html

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

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

(0)
上一篇 2025年12月13日 上午11:01
下一篇 2025年12月13日 上午11:22


相关推荐

  • pycharm安装2021_idea环境配置

    pycharm安装2021_idea环境配置环境配置这一篇是给新手朋友准备的,如果你本地已经安装配置,请自行跳过Python代码运行,需要解释器,Python解释器下载地址:https://www.python.org/鼠标悬停在Downloads上,然后选择对应的操作系统,点击版本号即可。我这里以Python3.9.2为例官网下载较慢,可以在公众号:Python极客专栏,后台回复【python392】获取安装包。下载完毕,双击打开(建议以管理员身份运行)。不建议按照默认的方式安装,参考下图点击之后出现如下界面Docu

    2022年8月29日
    7
  • LoadRunner使用教程

    LoadRunner使用教程1.了解Loadrunner1.1 LoadRunner 组件有哪些?LoadRunner 包含下列组件:➤ 虚拟用户生成器用于捕获最终用户业务流程和创建自动性能测试脚本(也称为虚拟用户脚本)。➤ Controller 用于组织、驱动、管理和监控负载测试。➤ 负载生成器用于通过运行虚拟用户生成负载。➤ Analysis 有助于您查看、分析和比较性能结果。➤ Launch

    2022年5月24日
    39
  • 使用国内代理源进行下载安装第三方库

    使用国内代理源进行下载安装第三方库

    2021年11月10日
    51
  • charles进行弱网测试(app弱网测试怎么做)

    最近尝试用Charles模拟弱网做了下测试,初步记录一下,适用PC端和移动端(IOS/Android)1.以charles4.2版本为例,打开Proxy->ThrottleSettings2.出现下面的界面3.预设那里有Charles常用的网络设置模拟的数据,根据需要自己选择即可,从上到下网速依次提升4.习惯自己设置数据来模拟弱网的可以参考下面的数据来设置哦【弱网】上行:10   …

    2022年4月15日
    171
  • 豆包发布大模型 1.5 Pro ,实测后我发现这个国产 AI 用最「笨」的方法干翻了 GPT-4o

    豆包发布大模型 1.5 Pro ,实测后我发现这个国产 AI 用最「笨」的方法干翻了 GPT-4o

    2026年3月12日
    2
  • struts2拦截器和过滤器的区别_ExecuteNonQuery

    struts2拦截器和过滤器的区别_ExecuteNonQuery转自:http://blog.csdn.net/lifuxiangcaohui/article/details/8172956在Struts2开发中,很多人问到,声明过滤器的时候,为什么有的时候用"FilterDispatcher",而有的时候用"StrutsPrepareAndExecuteFilter"?两者都可以正常工作,那区别是什么呢?1.FilterDispatcher例子 …&…

    2022年8月16日
    9

发表回复

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

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