zoukankan      html  css  js  c++  java
  • 关于JBoss基本说明文档及基本使用安装

    关于JBoss


      JBoss是全世界开发者共同努力的成果,一个基于J2EE的开放源代码的应用服务器。在不
      到12个月的时间里有一百万以上的拷贝被下载。JBoss是第一位的J2EE应用服务器。
     
      JBoss完全实现了J2EE的服务栈:
        * EJB (Enterprise JavaBeans)
        * JMS (Java Message Service)
        * JTS/JTA (Java Transaction Service / Java Transaction API)
        * Servlet and JSP (JavaServer Pages)
        * JNDI (Java Naming and Directory Interface)
     
      它还提供一些高级特性,比如集群、JMX、Web Service。
      它还整合了IIOP(Internet Inter-ORB Protocol)。
     
      因为JBoss代码遵循LGPL许可,你可以在任何商业应用中免费使用它,而不用支付费用。
      LGPL - GNU Lesser General Public License,
      参考http://www.gnu.org/copyleft/lesser.txt。
     

    安装JBoss应用服务器


      首先,确定你已经安装了J2SE JDK 1.3或者更高的版本,并且进行了正确的配置。
      这很基础,你需要正确配置以下环境变量:
        * JAVA_HOME
        * CLASSPATH
        * PATH
     
      然后到JBoss的web站点(http://www.jboss.org)下载JBoss的二进制版本。
      你会发现所有当前的二进制版本分为zip和tar.gz格式的文件。
      zip适合Windows系统,而tar.gz适合Unix类的系统,选择你最适合你的版本。
     
      解压缩你下载的文件到一个目录(你自己选择),在windows下,你可以是使用winzip等
      工具,在Unix下,你可以用下面的命令:
      $ gunzip jboss-3.2.0.tar.gz
      $ tar xf jboos-3.2.0.tar
     
      设置JBOSS_HOME环境变量,为你的JBoss的安装目录。
     
      然后到$JBOSS_HOME/bin目录中,运行“启动脚本”:
      Unix:
        $ ./run.sh
      Windows:
        c:jboss-3.2.0in>run.bat
        
      实例,JBoss二进制版本为3.2.2,J2SDK版本为1.4.1:
        
        windows 2k系统下:
          J2SDK安装在c:j2sdk,JBoss安装在c:jboss,环境变量的设置如下:
          JAVA_HOME=C:j2sdk
          CLASSPATH=%CLASSPATH%;%JAVA_HOME%lib*.jar;%JAVA_HOME%jrelib*.jar
          JBOSS_HOME=C:jboss
          PATH=%PATH%;%JAVA_HOME%in;%JBOSS_HOME%in
        
        unix类系统下:
          J2SDK安装在/opt/j2sdk,JBoss安装在/opt/jboss,环境变量的设置如下:
          JAVA_HOME=/opt/j2sdk
          CLASSPATH=$CLASSPATH:$JAVA_HOMElib*.jar:$JAVA_HOMEjrelib*.jar
          JBOSS_HOME=/opt/jboss
          PATH=$PATH:$JAVA_HOMEin:$JBOSS_HOMEin


     探索JBoss的目录结构


      安装JBoss会创建下列目录结构:
     
      表1.1 JBoss的目录
    [pre]  ------------------------------------------------------------------------------
      目录                  描述
      ------------------------------------------------------------------------------
      bin                   启动和关闭JBoss的脚本
      client                客户端与JBoss通信所需的的Java库(JARs)
      docs                  配置的样本文件(数据库配置等)
      doc/dtd               在JBoss中使用的各种XML文件的DTD。
      lib                   一些JAR,JBoss启动时加载,且被所有JBoss配置共享。
                            (不要把你的库放在这里)
      server                各种JBoss配置。每个配置必须放在不同的子目录。子目录的
                            名字表示配置的名字。
                            JBoss包含3个默认的配置:minimial,default和all。
      server/all            JBoss的完全配置,启动所有服务,包括集群和IIOP。
      server/default        JBoss的默认配置。
                            在没有在JBoss命令航中指定配置名称时使用。
      server/default/conf   JBoss的配置文件。下一节你会学习到更多关于其内容的知识。
      server/default/data   JBoss的数据库文件。比如,嵌入的数据库,或者JBossMQ。
      server/default/deploy JBoss的热部署目录。放到这里的任何文件或目录会被JBoss自动
                            部署。EJB、WAR、EAR,甚至服务。
      server/default/lib    一些JAR,JBoss在启动特定配置时加载他们。
                            (all和minimial配置也包含这个和下面两个目录。)
      server/default/log    JBoss的日志文件。
      server/default/tmp    JBoss的临时文件。
      ------------------------------------------------------------------------------[/pre]  
      如果你想要定义自己的配置,要先在server目录下创建一个新的包含适当文件的子目录。
      启动时可用-c参数指定要启动的配置:
      Windows:
        C:jboss-3.2.0in>run.bat -c config-name
      Unix
        $ ./run.sh -c config-name
        

     JBoss配置文件


      就像上一节说的,JBoss的server目录可以包含任意数目的目录,每个表示一个不同的
      JBoss配置。
     
      server/config-name/conf目录包含JBoss的配置文件。
      表1.2给出了这些不同的文件的用途:
     
      表1.2、JBoss的配置文件
    [pre]  ------------------------------------------------------------------------------
      文件                      描述
      ------------------------------------------------------------------------------
      jacorb.properties         JBoss IIOP 配置
      jbossmq-state.xml         JBossMQ(JMS的实现)用户配置
      jboss-service.xml         启动时运行的JBoss的服务的定义(class loader,JNDI,
                                deployer等)
      log4j.xml                 Log4J的配置
      login-config.xml          JBoss安全配置(JBossSX)
      standardjaws.xml          JBoss的遗留CMP 1.1引擎的默认配置。包含对各种数据库的
                                JDBC-to-SQL的映射信息,默认CMP设置,日志配置等。
      standardjbosscmp-jdbc.xml 除了被用于JBoss的CMP 2.0引擎之外,
                                与standardjaws.xml相同,
      ------------------------------------------------------------------------------[/pre]  

     JBoss中的部署


      JBoss中的部署过程非常的简单、直接。在每一个配置中,JBoss不断的扫描一个特殊的目
      录的变化:$JBOSS_HOME/server/config-name/deploy
     
      此目录一般被称为“部署目录”。
     
      你可以把下列文件拷贝到此目录下:
        * 任何jar库(其中的类将被自动添加到JBoss的classpath中)
        * EJB JAR
        * WAR (Web Appliction aRrchive)
        * EAR (Enterprise Application aRchive)
        * 包含JBoss MBean定义的XML文件
        * 一个包含EJB JAR、WAR或者EAR的解压缩内容,并以.jar、.war或者.ear结尾的目录。
     
      要重新部署任何上述文件(JAR、WAR、EAR、XML等),用新版本的文件覆盖以前的就可以
      了。JBoss会根据比较文件的时间发现改变,写在以前的文件,然后部署新的文件。
      要重新部署一个目录,更新他的修改时间即可,比如touch。
     

     迅速浏览JBoss的内部结构


      从3.0版本开始,JBoss已经被围绕一些非常强大的概念来构建,允许用户自定义和调整他
      们的服务器,而不局限于J2EE。
      灵活性允许JBoss可以用于不同的环境,范围从嵌入式系统到非常大的服务器集群。
     
      下面几节将简要的介绍这些概念中的一部分。


    微内核架构


      JBoss基于一个微内核设计,即组件可以在运行时插入以扩展它的行为。
      这个设计非常适合J2EE平台,一个本质上基于服务的平台。这个平台包含持久化,事务,
      安全,名称,消息,日志等服务。
     
      其他应用服务器一般象单片集成电路一样,它们总是包含所有J2EE平台的服务。JBoss采
      用完全不同的方法:每个服务像组件一样被热部署于一个非常简洁的内核之上,称为
      JBoss Server Spine。此外,用户被鼓励去实现他们自己的运行于JBoss上的服务。
     
      因此,JBoss应用服务器不限于J2EE应用,他被频繁的用于构建任何需要强大且可靠基础
      的应用。因此,JBoss的核心也被认为是WebOS。
     
      图1.1 JBoss Server spine和一些热部署的服务
     
    [pre]     JMS         User Service A    EJB Container
      (JBossMQ)         |                  |
          |               |                  |
      +-------------------------------------------------+
      |                                                 |
      |              JBoss Server Spine                 |
      |                                                 |
      +-------------------------------------------------+
         |                |                  |
        JNDI             JNDI                |
      (JBossNS)        (JBossNS)         Servlet/JSP
      [/pre]
      JBoss Server Spine 基于Sun的JMX(Java Managerment eXtensions)规范,
      以标准的方式使任何已部署的组件可以被管理。
      按照JMX习惯中,JBoss中一个已部署的服务被称为一个MBean(a managed bean)。
     
        更多关于JMX规范的信息可以在Sun的web站点找到:
        http://java.sun.com/products/JavaManagement
        

     热部署


      自从2.0发布版本,JBoss已经因是第一个支持热部署和重部署的基于J2EE的应用服务器而
      著称,而那时很多应用服务器还需要重新启动以更新一个应用程序。
      感谢微内核架构和革命性的Java类加载器,JBoss 3.0和以后的发布版本进一步推动这种
      逻辑。不但可以热部署和重新部署应用程序,而且他们可以热部署任何服务,并且跟踪服
      务间的依赖。
      这些特性使JBoss可被用于非常苛刻的环境,比如电信系统。


     网络引导


      JBoss可以在网络的任何位置引导自己和你的应用程序,只要为JBoss Server Spine指定
      一个简单的URL。这允许你从一个中央web服务器管理一个JBoss节点集群的全部配置。这
      给人深刻印象的机动性使新服务器的部署非常的简单。
      JBoss的bootstrap代码只有大约50k,它适合很多嵌入式系统。
     

     分开的调用者


      JBoss完全的分离了协议的处理器,从目标服务接收的调用最终为请求提供服务。因此,
      当一个给定协议的新的处理器(称为一个JBoss的调用者)被部署到JBoss,可以自动的通
      过这个新的调用传送器到达所有已存在的服务和应用程序。
      JBoss 3.2目前支持下列类型的调用者:
      * RMI
      * RMI over HTTP
      * IIOP
      * JMS
      * SOAP
      * HA-RMI(Clustering over RMI)

  • 相关阅读:
    POJ-1189 钉子和小球(动态规划)
    POJ-1191-棋盘分割(动态规划)
    Java实现 LeetCode 730 统计不同回文子字符串(动态规划)
    Java实现 LeetCode 730 统计不同回文子字符串(动态规划)
    Java实现 LeetCode 729 我的日程安排表 I(二叉树)
    Java实现 LeetCode 729 我的日程安排表 I(二叉树)
    Java实现 LeetCode 729 我的日程安排表 I(二叉树)
    Java实现 LeetCode 728 自除数(暴力)
    Java实现 LeetCode 728 自除数(暴力)
    Java实现 LeetCode 728 自除数(暴力)
  • 原文地址:https://www.cnblogs.com/520future/p/8040679.html
Copyright © 2011-2022 走看看