zoukankan      html  css  js  c++  java
  • 由架构图重点分析易混淆web服务器 天高地厚

    学过Asp.net,利用Asp.net做项目,在IIS发布网站。

      学过JSP,得知JSP最终转化成Servlet,并且使用Tomcat部署过java web项目。
      在学JSP,Servlet时,web服务器,web应用服务器,Servlet容器,Tomcat,Jboss等等,这些在视频中经常被提到,但是却不知道他们之间的关系,难道是所属关系或等价关系?
      
      不知道你是否能清晰说出这几个专业名词之间的联系?
      若是你对web服务器了解,可以略过此文章,或者提出宝贵的意见。若是对web服务器概念模糊,建议,可以停下来看看此文章,互相探讨。
       一个事物的认识,首先应该是表面概念理解,知道是怎么回事。尤其对于J2EE的常用规范,虽然现在不使用,但是必须知道每个规范的全称以及大概的用途。下次遇到话,知道从何地寻找。类似于索引Index
        
       在说所谓的Jboss,Tomcat ,WebLogic等服务器之前,首先给大家说一下经常提到的Web服务器以及应用程序服务器两者之间的概念。
       Web服务器:是指驻留于因特网上某种类型计算机的程序。其实就是向客户端发送响应的程序。
       由此可以看出:web服务器是一个被动的程序,只有当客户端发送请求时,服务器才能发送响应。
          
       应用程序服务器:通过很多协议来为应用程序提供(serves)商业逻辑(business logic)。
       两者区别:web服务器主要是发送给客户端html浏览。而应用程序服务器主要是为客户端提供商业逻辑(其实对于我们三层来说,就是业务逻辑层)。
       应用程序服务器一般是通过组件比如EJB把应用程序的接口把商业逻辑提供给客户端程序,这样,客户端程序通过api,调用存放在服务器端的业务逻辑。并且应用程序服务器一般还是可以管理自己的资源,安全,集成配置等功能。
       有很多应用程序服务器,其中可以包括web服务器。从这个概念来说,web服务器是程序服务器一个子集。比如WebLogic既可支持jsp,同样也可以支持EJB(下文继续)
        
        虽然是可以用子集的形式描述,但是后来WebService的出现,WebService传递的是基于xml形式,web服务器与应用程序传递的效果是一样的,所以呢。web服务器与应用服务器基本上不太区分了。

        常见的Web服务器
        目前最流行的两大web服务器是:IIS(Internet information services)和Apache
         很多著名的网站都是建立在ⅡS的平台上。ⅡS提供了一个图形界面的管理工具,称为Internet服务管理器,可用于监视配置和控制Internet服务。
         学过.net的,大家都知道,发布网站都是在IIS上。至于具体的步骤在此不演示,电脑中基本上都自带,直接安装IIS组件即可。
         另一个就是Apache(Apche http server):是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用。正是因为它的开源以及移植性,才会一直很流行。它只能运行静态的html,至于动态的jsp,他是无法运行的。

        常见的J2EE的Web服务器以及应用程序服务器
         在介绍基于J2EE服务器时,给大家看一下J2EE的架构图,其中架构图是从我学习J2EE规范总结博客中截取的。
         
         同样,我们再看一下J2EE服务器的架构图:
            
        大家心中的J2EE服务器与这两幅图结合,不知道是否对J2EE服务器有了新的认识,不知道是否对常见的J2EE服务器区别有了新的认识。
         那我们根据这幅图说一下常见的J2EE中的服务器。

         最熟悉以及最常用的就是Tomcat
         最基本的特点:Tomcat是Web容器而不是应用程序服务器。Tomcat只支持JSP,Servlet,不支持EJB。
         背景:Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,它是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,Servlet和JSP 规范总是能在Tomcat 中得到体现。
          因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 服务器。
        Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能。
          那我们项目中通常只用tomcat,而tomcat只是一个web容器,只支持JSP,Servlet。我们再次看J2EE的服务器架构体发现,tomcat只是上面一部分。而什么还是可以作为J2EE的服务器呢?
          主要是因为我们项目中没有使用的EJB,而是简单的业务逻辑。
          那我们再看一下JSP的执行图,进一步领会为啥只用Tomcat,可以不用Apache?
          
           那Apache和Tomcat的关系?
          Apache仅仅支持静态网页,对于支持动态网页就会显得无能为力;Tomcat则既能为动态网页服务,同时也能为静态网页提供支持。但是Apache和Tomcat可以联合使用。Apache负责接受所有来自客户端的HTTP请求,然后将Servlets和JSP的请求转发给Tomcat来处理。Tomcat完成处理后,将响应传回给Apache,最后Apache将响应返回给客户端。
         
         其他常用的应用服务器   
         JBOSS
         背景:一个基于J2EE的开放源代码的应用服务器。 因为JBoss代码遵循LGPL许可,你可以在任何商业应用中免费使用它,而不用支付费用。JBoss支持EJB 1.1和EJB 2.0 EJB3.0的规范,它是一个管理EJB的容器和服务器。
         特点:免费的,需要的内存和硬盘小,核心的服务是提供EJB,但不支持JSP和Servlet。
         因此:Jboss和tomcat可以配合使用。tomcat支持JSP和Servlet,JBoss支持EJB。请看J2EE服务器图,两者结合,很好的选择。
         但是,经过考证,Jboss的版本不同,支持web容器的程度不同。
         早起的Jboss版本,不支持JSP和Servlet。所以需要和web容器配合使用。
         Jboss4.0版本,支持J2EE中几个常用的规范,像JMail,JDBC,JTA等。并且也很好支持web容器。在Jboss中,嵌套了web容器。所以根据J2EE服务器图而言,这就是为啥能够作为J2EE服务器的原因了。
         WebLogic
         背景:WebLogic是美国bea公司出品的一个application server确切的说是一个基于J2EE架构的中间件,webserver是用来构建网站的必要软件用来解析发布网页等功能,它是用纯java开发的。
          特点:它可以支持J2EE中很多规范,比如JDBC,EJB,XML,JMS,JSP等。BEA WebLogic Server是专门为企业电子商务应用系统开发的。企业电子商务应用系统需要快速开发,并要求服务器端组件具有良好的灵活性和安全性,同时还要支持关键任 务所必需的扩展、性能、和高可用性。BEA WebLogic Server简化了可移植及可扩展的应用系统的开发,并为其它应用 系统和系统提供了丰富的互操作性。(不是免费的哦)
        Web Sphere
        背景:WebSphere是 IBM 的集成软件平台。它包含了编写、运行和监视全天候的工业强度的随需应变 Web 应用程序和跨平台、跨产品解决方案所需要的整个中间件基础设施,如服务器、服务和工具。WebSphere 提供了可靠、灵活和健壮的集成软件。
        旗下的产品:web sphere application server是我们经常说的另一个应用程序服务器。
        特点:支持网络服务和SOAP。 非常详细的和全方位的管理以及运行的监控。(不是免费的哦)
     
         这篇博客的目的主要是梳理概念知识网构建。至于内部具体的实现的总结,在以后学习中会不断完成。
        当你对知识点模糊时,请停下来,是该总结总结,重新梳理一下,及时清理大脑。所谓学而不思则罔就是这个道理,并且在学习的过程中,要时常回顾以往的知识。 对于当今学习而言,回顾以往,是因为当时把问题暂挂脑海,再次遇到,则继续学习,正如现在J2EE中常用的13个规范以及架构图,每次看有每次的认识。有 新的认识,这就是进步。

     
     
     

    不登高山,怎知天高;不临深溪,焉知地厚!站在坚实的土地上,做着生命中最真实的事情;像一棵挺拔的大树,认可自己的命运并敢于迎接属于这一方天空的风风雨雨。

  • 相关阅读:
    POJ 1401 Factorial
    POJ 2407 Relatives(欧拉函数)
    POJ 1730 Perfect Pth Powers(唯一分解定理)
    POJ 2262 Goldbach's Conjecture(Eratosthenes筛法)
    POJ 2551 Ones
    POJ 1163 The Triangle
    POJ 3356 AGTC
    POJ 2192 Zipper
    POJ 1080 Human Gene Functions
    POJ 1159 Palindrome(最长公共子序列)
  • 原文地址:https://www.cnblogs.com/net2012/p/2856323.html
Copyright © 2011-2022 走看看