精华内容
下载资源
问答
  • 我们经常使用apache,tomcat,nginx,jetty等服务器,但并不清楚它们间的区别,它们中,哪些是Web服务器,哪些是应用服务器?今天就来告诉你Web服务器理解WEB服务器,首先你要理解什么WEB? WEB表现为三种形式,即超文本...

    a5e29fa9c1a9f0809ac3fe6e2dee4c67.png

    我们经常使用apache,tomcat,nginx,jetty等服务器,但并不清楚它们间的区别,它们中,哪些是Web服务器,哪些是应用服务器?今天就来告诉你

    Web服务器

    理解WEB服务器,首先你要理解什么是WEB? WEB表现为三种形式,即超文本(hypertext)、超媒体(hypermedia)和超文本传输协议(HTTP)。

    你可以简单理解为你所看到的HTML页面就是WEB的数据元素,处理这些数据元素的应用软件就叫WEB服务器,如IIS、apache,nginx等。

    WEB服务器与客户端打交道,它要处理的主要信息有:session、request、response、HTML、JS、CS等。

    应用服务器

    提供处理逻辑的应用容器,这里的应用很多,如果java应用、C#应用、ruby应用等。应用服务器提供访问商业逻辑的途径以供客户端应用程序使用。

    Web服务器和应用服务器的关系

    WEB服务器一般是通用的,而应用服务器一般是专用的,如Tomcat只处理JAVA应用程序而不能处理ASPX或PHP。而Apache是一个WEB服务器(HTTP服务器),他的信息源可以是配置在tomcat中的JAVA应用,也可以是ASPX应用。

    Web服务器只负责处理HTTP协议,只能发送静态页面的内容。而JSP,ASP,PHP等动态内容需要通过CGI、FastCGI、ISAPI等接口交给其他程序去处理。这个其他程序就是应用服务器。

    常用的web服务器: Apache、IIS、Nginx、Tomcat等

    常用的应用服务器: Tomcat、Jetty、Weblogic等

    有的应用服务器也提供http服务,如Tomcat,所以可以说,Tomcat是web服务器也是应用服务器

    如果觉得不错,请给个「好看」

    分享给你的朋友!

    f3713845977bdf776cc9ac57433ea18f.png

    54cb60fc25c4a54a196af0c780553364.gif

    THANDKS

    • End -

    一个立志成大腿而每天努力奋斗的年轻人

    伴学习伴成长,成长之路你并不孤单!

    b0c9de7ad09079ce650c16f7765dbf53.png
    展开全文
  • 可是总感觉还是不清楚他们之间有什么关系,在用tomcat的时候总出现apache,总感到迷惑,到底谁是主谁是次,因此特意在网上查询了一些这方面的资料,总结了一下:ApacheTomcat都是web网络服务器,两者既有联系又有...

    经常在用apache和tomcat等这些服务器,可是总感觉还是不清楚他们之间有什么关系,在用tomcat的时候总出现apache,总感到迷惑,到底谁是主谁是次,因此特意在网上查询了一些这方面的资料,总结了一下:

    Apache 和 Tomcat 都是web网络服务器,两者既有联系又有区别,在进行HTML、PHP、JSP、Perl等开发过程中,需要准确掌握其各自特点,选择最佳的服务器配置。

    Apache是web服务器(静态解析,如HTML),tomcat是java应用服务器(动态解析,如JSP)

    Tomcat只是一个servlet(jsp也翻译成servlet)容器,可以认为是apache的扩展,但是可以独立于apache运行

    904710255755086ef2a791fa0ef48ff9.png904710255755086ef2a791fa0ef48ff9.png

    相同点:

      1、两者都是apache组织开发的

      2、两者都有HTTP服务的功能

      3、两者都是开源免费的

     区别:

      1)Apache是普通服务器,本身只支持html即普通网页,可以通过插件支持php,还可以与Tomcat连通(Apache单向连接Tomcat,就是说通过Apache可以访问Tomcat资源,反之不然)。  

      2)Apache只支持静态网页,但像Jsp动态网页就需要Tomcat来处理。

      3)Apache和Tomcat整合使用:

      如果客户端请求的是静态页面,则只需要Apache服务器响应请求;

      如果客户端请求动态页面,则是Tomcat服务器响应请求,将解析的JSP等网页代码解析后回传给Apache服务器,再经Apache返回给浏览器端。

      这是因为jsp是服务器端解释代码的,Tomcat只做动态代码解析,Apache回传解析好的静态代码,Apache+Tomcat这样整合就可以减少Tomcat的服务开销。

      4)Apache和Tomcat是独立的,在同一台服务器上可以集成。

    不同点:

      Apache是有C语言实现的,支持各种特性和模块从而来扩展核心功能;Tomcat是Java编写的,更好的支持Servlet和JSP。

      1、Apache是Web服务器,Web服务器传送(serves)页面使浏览器可以浏览,Web服务器专门处理HTTP请求(request),但是应用程序服务器是通过很多协议来为应用程序提供 (serves)商业逻辑(business logic)。

      Tomcat是运行在Apache上的应用服务器,应用程序服务器提供的是客户端应用程序可以调用(call)的方法 (methods)。它只是一个servlet(jsp也翻译成servlet)容器,可以认为是Apache的扩展,但是可以独立于apache运行。

      2、Apache是普通服务器,本身只支持html静态普通网页。不过可以通过插件支持PHP,还可以与Tomcat连通(单向Apache连接Tomcat,就是说通过Apache可以访问Tomcat资源,反之不然),Tomcat是jsp/servlet容器,同时也支持HTML、JSP、ASP、PHP、CGI等,其中CGI需要一些手动调试,不过很容易的。

      3、Apache侧重于http server,Tomcat侧重于servlet引擎,如果以standalone方式运行,功能上Tomcat与apache等效支持JSP,但对静态网页不太理想。

      4、Apache可以运行一年不重启,稳定性非常好,而Tomcat则不见得。

      5、首选web服务器是Apache,但Apache解析不了的jsp、servlet才用tomcat。

      6、Apache是很最开始的页面解析服务,tomcat是后研发出来的,从本质上来说tomcat的功能完全可以替代Apache,但Apache毕竟是tomcat的前辈级人物,并且市场上也有不少人还在用Apache,所以Apache还会继续存在,不会被取代,apache不能解析java的东西,但解析html速度快。

    两者例子:

      Apache是一辆车,上面可以装一些东西如html等,但是不能装水,要装水必须要有容器(桶),而这个桶也可以不放在卡车上,那这个桶就是TOMCAT。

    两者整合:

      Apache是一个web服务器环境程序,启用他可以作为web服务器使用不过只支持静态网页,不支持动态网页,如asp、jsp、php、cgi

      如果要在Apache环境下运行jsp就需要一个解释器来执行jsp网页,而这个jsp解释器就是Tomcat

      那为什么还要JDK呢?因为jsp需要连接数据库的话就要jdk来提供连接数据库的驱程,所以要运行jsp的web服务器平台就需要APACHE+TOMCAT+JDK

    整合的好处:

      如果客户端请求的是静态页面,则只需要Apache服务器响应请求

      如果客户端请求动态页面,则是Tomcat服务器响应请求

      因为jsp是服务器端解释代码的,这样整合就可以减少Tomcat的服务开销

    往期经典回顾

    手机失窃而揭露的窃取个人信息实现资金盗取的黑色产业链Linux与windows相比有何优势,看完就明白了杂集:centos7中设置服务开机自启的两种方法,欢迎补充美国如果把根域名服务器封了,中国会从网络上消失?

    【心语】

          我们遇到的许多看似“无法完成”的难题,其实往往是被自己的预判所吓倒。真正阻碍我们前进的不是事物本身,而是我们自己那颗尚未开始就已经退缩的心。把大目标分解为小任务,一点点去完成,只要你用心浇灌,梦想自会开花结果。

    【互动学习】

         请有兴趣请加入微信【微信号:gj825666】,我们一起学习、成长。感谢诸位的支持

    展开全文
  • 其实现的原理并没有本质的区别,在应用开发层面上以下区别:1、Remoting可以灵活的定义其所基于的协议,如果定义为HTTP,则与Web Service就没有什么区别了,一般都喜欢定义为TCP,这样比Web Service稍为高效一些2...

    其实现的原理并没有本质的区别,在应用开发层面上有以下区别:
    1、Remoting可以灵活的定义其所基于的协议,如果定义为HTTP,则与Web Service就没有什么区别了,一般都喜欢定义为TCP,这样比Web Service稍为高效一些
    2、Remoting不是标准,而Web Service是标准;
    3、Remoting一般需要通过一个WinForm或是Windows服务进行启动,而Web Service则需要IIS进行启动。
    4、在VS.net开发环境中,专门对Web Service的调用进行了封装,用起来比Remoting方便

    我建议还是采用Web Service好些,对于开发来说更容易控制
    Remoting一般用在C/S的系统中,Web Service是用在B/S系统中
    后者还是各语言的通用接口
    相同之处就是都基于XML

    为了能清楚地描述Web Service 和Remoting之间得区别,我打算从他们的体系结构上来说起:
    Web Service大体上分为5个层次:
    1. Http传输信道
    2. XML的数据格式
    3. SOAP封装格式
    4. WSDL的描述方式
    5. UDDI

    总体上来讲,.NET 下的 Web Service结构比较简单,也比较容易理解和应用:
    一般来讲在.NET结构下的WebService应用都是基于.net framework以及IIS的架构之下,所以部署(Dispose)起来相对比较容易点.
    从实现的角度来讲,

    首先WebService必须把暴露给客户端的方法所在的类继承于:System.Web.Services.WebService这个基类
    其次所暴露的方法前面必须有[WebMethod]或者[WebMethodAttribute]

    WebService的运行机理
    首先客户端从服务器的到WebService的WSDL,同时在客户端声称一个代理类(Proxy Class)
    这个代理类负责与WebService服务器进行Request 和Response
    当一个数据(XML格式的)被封装成SOAP格式的数据流发送到服务器端的时候,就会生成一个进程对象并且把接收到这个Request的SOAP包进行解析,然后对事物进行处理,处理结束以后再对这个计算结果进行SOAP包装,然后把这个包作为一个Response发送给客户端的代理类(Proxy Class),同样地,这个代理类也对这个SOAP包进行解析处理,继而进行后续操作。

    这就是WebService的一个运行过程。

    下面对.net Remoting进行概括的阐述:
    .net Remoting 是在DCOM等基础上发展起来的一种技术,它的主要目的是实现跨平台、跨语言、穿透企业防火墙,这也是他的基本特点,与WebService有所不同的是,它支持HTTP以及TCP信道,而且它不仅能传输XML格式的SOAP包,也可以传输传统意义上的二进制流,这使得它变得效率更高也更加灵活。而且它不依赖于IIS,用户可以自己开发(Development)并部署(Dispose)自己喜欢的宿主服务器,所以从这些方面上来讲WebService其实上是.net Remoting的一种特例。

     

    转载于:https://www.cnblogs.com/leonardleonard/archive/2007/03/19/1928421.html

    展开全文
  • nginx常用做静态内容服务代理服务器(不是你FQ那个代理),直面外来请求转发给后面的应用服务(tomcat,django什么的),tomcat更多用来做做一个应用容器,让java web app跑在里面的东西,对应同级别的jboss,jetty等...
    4efb00e2ed7a929047d77253916ebcdb.png

    nginx与tomcat区别有哪些?

    nginx与tomcat区别

    web上的server都叫web server,但是大家分工也有不同的。

    nginx常用做静态内容服务和代理服务器(不是你FQ那个代理),直面外来请求转发给后面的应用服务(tomcat,django什么的),tomcat更多用来做做一个应用容器,让java web app跑在里面的东西,对应同级别的有jboss,jetty等东西。

    但是事无绝对,nginx也可以通过模块开发来提供应用功能,tomcat也可以直接提供http服务,通常用在内网和不需要流控等小型服务的场景。

    apache用的越来越少了,大体上和nginx功能重合的更多。

    严格的来说,Apache/Nginx 应该叫做「HTTP Server」;而 Tomcat 则是一个「Application Server」,或者更准确的来说,是一个「Servlet/JSP」应用的容器(Ruby/Python 等其他语言开发的应用也无法直接运行在 Tomcat 上)。

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

    而应用服务器,则是一个应用执行的容器。它首先需要支持开发语言的 Runtime(对于 Tomcat 来说,就是 Java),保证应用能够在应用服务器上正常运行。其次,需要支持应用相关的规范,例如类库、安全方面的特性。

    对于 Tomcat 来说,就是需要提供 JSP/Sevlet 运行需要的标准类库、Interface 等。为了方便,应用服务器往往也会集成 HTTP Server 的功能,但是不如专业的 HTTP Server 那么强大,所以应用服务器往往是运行在 HTTP Server 的背后,执行应用,将动态的内容转化为静态的内容之后,通过 HTTP Server 分发到客户端。

    更多Nginx相关知识,请访问Nginx使用教程栏目!

    展开全文
  • 其实现的原理并没有本质的区别,在应用开发层面上以下区别:1、Remoting可以灵活的定义其所基于的协议,如果定义为HTTP,则与Web Service就没有什么区别了,一般都喜欢定义为TCP,这样比Web Service稍为高效一些2...
  • Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,它早期的名称为catalina,后来由Apache、Sun 其他一些公司及个人...
  • Tomcat 服务器Apache软件基金会项目中的一个核心项目,是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统并发访问用户不是很多的场合下被普遍使用,是开发调试JSP 程序的首选。...
  • 其实现的原理并没有本质的区别,在应用开发层面上以下区别: 1、Remoting可以灵活的定义其所基于的协议,如果定义为HTTP,则与Web Service就没有什么区别了,一般都喜欢定义为TCP,这样比Web Service稍为高效一些...
  • 其实现的原理并没有本质的区别,在应用开发层面上以下区别:1、Remoting可以灵活的定义其所基于的协议,如果定义为HTTP,则与Web Service就没有什么区别了,一般都喜欢定义为TCP,这样比Web Service稍为高效一些2...
  • 其实现的原理并没有本质的区别,在应用开发层面上以下区别:1、Remoting可以灵活的定义其所基于的协议,如果定义为HTTP,则与Web Service就没有什么区别了,一般都喜欢定义为TCP,这样比Web Service稍为高效一些2...

空空如也

空空如也

1 2 3 4 5 ... 13
收藏数 252
精华内容 100
关键字:

web和windows有什么区别