《jboss安装调优PPT课件》由会员分享,可在线阅读,更多相关《jboss安装调优PPT课件(24页珍藏版)》请在金锄头文库上搜索。
1、JBOSS 安装配置安装配置 & 调优调优浦华众城浦华众城 闫昊闫昊 2008-12-82021/3/91第一部分第一部分 JBOSS 安装配置安装配置2021/3/92常见用语什么是API什么是J2SDK什么是JDK什么是JVM什么是JRE2021/3/93常见用语APIApplicationProgrammeInterfaceJ2SDKJ2SDK=JDK+JRE,J2SDK(Java2SoftwareDevelopmentKit)JDKJavaDevelopmentKitJVMJavaVirtualMachineJREJavaRuntimeenvironment2021/3/94JBoss
2、是什么是什么JBoss是一个管理EJB的容器和服务器JBoss主要模块主要的主要的JBoss模块是在模块是在MeanServer上的可管理上的可管理MBean。1.JBossEJB容器是JBoss服务器的核心实现。它有两个特性,第一是在运行期产生EJB对象的Stub和Skeleton类,第二是支持热部署。2.JBossNS是JBoss命名服务用来定位对象和资源。它实现了JNDIJ2EE规范.3.JBossTX是由JTA/JTS支持的交易管理控制.4.部署服务支持EJB(jar)、Web应用文档(war)和企业级应用文档(ears)的部署。它会时刻关心J2EE应用的URL情况,一旦它们被改变或出
3、现的时候将自动部署。5.JBossMQ使Java消息规范(JMS)的实现。2021/3/95JBoss的目录结构bin启动和关闭JBoss的脚本client客户端与JBoss通信所需的Java库(JARs)docs配置的样本文件(数据库配置等docs/dtd在JBoss中使用的各种XML文件的DTDlib一些JAR,JBoss启动时加载,且被所有JBoss配置共享。(不要把你的库放在这里)server各种JBoss配置。每个配置必须放在不同的子目录。子目录的名字表示配置的名字。JBoss包含3个默认的配置:minimial,default,production和all,在你安装时可以进行选择。
4、server/allJBoss的完全配置,启动所有服务,包括集群和IIOP。server/defaultJBoss的默认配置。(RedhatJboss-GA的默认配置为production)server/all/confJBoss的配置文件。server/all/dataJBoss的数据库文件。比如,嵌入的数据库,或者JBossMQ。server/all/deployJBoss的热部署目录。放到这里的任何文件或目录会被JBoss自动部署。EJB、WAR、EAR,甚至服务。server/all/lib一些JAR,JBoss在启动特定配置时加载他们。(default和minimial配置也包含这个
5、和下面两个目录。)server/all/logJBoss的日志文件。server/all/tmpJBoss的临时文件。2021/3/96安装配置JBOSS安装安装JAVA#./jdk-1_5_0_14-linux-i586.bin安装安装JBOSS#unzipjboss-eap-4.3.0.GA_CP03.zip设置环境变量设置环境变量#vi/etc/profileexportJAVA_HOME=/usr/jdkexportPATH=$PATH:$JAVA_HOME/bin:/$JAVA_HOME/jre/binexportCLASSPATH=.:$JAVA_HOME/lib:$JAVA_HO
6、ME/jre/libexportJBOSS_HOME=/opt/jboss-eap-4.3/jboss-as/2021/3/97启动JBOSS./$JAVA_HOME/bin/run.sh常用参数-b-host=BindaddressforallJBossservices-c-configuration=Settheserverconfigurationname浏览器中输入:http:/主机IP地址:8080看到jboss的初始界面为安装成功2021/3/98JBOSS的基本配置(一)jmx-console用户名密码设置step1 路径:%JBOSS_HOME%/server/default/
7、deploy/jmx-console.war/WEB-INF/修改jboss-web.xml,web.xml文档,根据说明,去掉注释。step2路径:%JBOSS_HOME%/server/default/conf/props修改props/jmx-console-users.properties定义了用户名、密码修改props/jmx-console-roles.properties定义了用户所属角色web-console用户名密码设置step1路径:%JBOSS_HOME/server/production/deploy/management/console-mgr.sar/web-con
8、sole.war/WEB-INF/修改:jboss-web.xml,web.xml文档,根据说明,去掉注释。step2路径:%JBOSS_HOME/server/production/deploy/management/console-mgr.sar/web-console.war/WEB-INF/classes修改:props/web-console-users.properties定义了用户名、密码修改:props/web-console-roles.properties定义了用户所属角色2021/3/99JBOSS的基本配置(二)更改更改jboss默认端口默认端口路径:server/pr
9、oduction/deploy/jboss-web.deployer修改:server.xml文件中Connectorport=8080 address=$jboss.bind.address配置配置web虚拟目录虚拟目录路径:server/production/deploy/jboss-web.deployer修改:server.xml文件中找到添加如下一行如下信息来添加虚拟目录:path参数是浏览器中输入的虚拟目录名,而docBase则是指向本地访问的目录。2021/3/910JBOSS的简单测试(一)jsp测试在deploy下建立test.war文件夹,将jsp文件放到这里进行测试例如建
10、立一testdate.jsp如下:通过http:/localhost:8080/test/test.jsp调用就可得到当前日期时间。2021/3/911JBOSS的简单测试(二)连接MySQL测试step1#cp%JBOSS_HOMEdocsexamplesjcamysql-ds.xml%JBOSS_HOMEserverproductiondeploy 修改.jndi,user,password#vimysql-ds.xmljdbc:mysql:/localhost:3306/mysqltestteststep2下载MySQL驱动,并解压.http:/ step3#videploy/test.
11、war/testmysql.jsp%tryContextctx=newInitialContext();ds=(javax.sql.DataSource)ctx.lookup(java:/MySqlDS);catch(Exceptione)out.println(errowhenconnecttojavanamingapi);Connectionconn=ds.getConnection();Statementst=conn.createStatement();StringsqlStr=select*fromdb;ResultSetrs=st.executeQuery(sqlStr);whil
12、e(rs.next()out.println(rs.getString(Db)+);rs.close();st.close();conn.close();%2021/3/913JBOSS的简单测试(三)servlet的配置测试step1#cp /opt/jboss-eap-4.3/jboss-as/server/production/lib/servlet-api.jar /usr/jdk/jre/ext/ #vi HelloWorld.javaimportjava.io.*;importjavax.servlet.*;importjavax.servlet.http.*;publicclas
13、sHelloWorldextendsHttpServletpublicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsIOException,ServletExceptionresponse.setContentType(text/html);PrintWriterout=response.getWriter();out.println();out.println(HelloWorld);#javac -classpath %CLASSPATH%;%JBOSS_HOME/server/productio
14、n/lib/servlet-api.jar HelloWorld.java2021/3/914JBOSS的简单测试(三)servlet的配置测试step2 #mkdir %JBOSS_HOME/server/production/deploy/test.war/WEB-INF/classes #cp HelloWorld.class %JBOSS_HOME/server/production/deploy/test.war/WEB-INF/classes #vi %JBOSS_HOME/server/production/deploy/test.war/WEB-INF/web.xml Hell
15、oWorldHelloWorldHelloWorld/HelloWorldhttp:/localhost:8080/test/HelloWorld就可以看到helloworld的输出2021/3/915第二部分第二部分 JBOSS 调优调优2021/3/916JBOSS 调优的前提条件调优的前提条件以系统管理者的身份考虑调优问题将调优概念与瘦身的概念分开2021/3/917Java Virtual Machine调优升级JVM版本。如果能使用64-bit,使用64-bitJVM选择一个正确的GC(GargageCollection)路径%JBOSS_HOME/bin/run.shJAVA_OP
16、TS=$JAVA_OPTS-D.preferIPv4Stack=true正确设置GC中内存大小(监测工具jstat,jvmstat,jconsole)2021/3/918JBoss/Java on Linux调优WEB 连接器连接器 TomCat路径%JBOSS_HOME/server/production/deploy/jboss-web.deployer#viserver.xml2021/3/919JBoss/Java on Linux调优RMI的远程调用的远程调用 RMI是J2EE的网络机制,允许你编写分布式对象使得对象的通信范围能够在内存中,跨Java虚拟机,跨物理设备编辑%JBOSS
17、_HOME/server/production/conf/standardjboss.xmljboss:service=invoker,type=jrmp修改为jboss:service=invoker,type=pooledPrecompile(预编译预编译) JSPs关闭开发(关闭开发(“development”)模式)模式%JBOSS_HOME/server/production/deploy/jboss-web.deployer/conf2021/3/920JBoss/Java on Linux调优Log4j改变级别为ERROR(或者WARN)不记录到System.out增加一个类别过滤器#vi%JBOSS_HOME/server/production/conf/jboss-log4j.xml将将修改为修改为删除删除删除删除删除删除2021/3/921JBoss/Java on Linux调优无状态会话无状态会话Beans编辑编辑 server/production/conf/standardjboss.xml将将100修改为修改为100100300002021/3/922Linux的优化的优化虚拟内存优化网络优化IO性能优化文件系统优化2021/3/923放映结束 感谢各位的批评指导! 谢谢 谢!谢!让我们共同进步2021/3/924