linux下Tomcat应用部署
一.所需软件
软件:jdk6.bin、apache-tomcat-6.0.18.tar
程序包:customer.war,customerService.war,FrontProject.war,expressBackUser.war,
expressAccount,expressPlatform.war,OrderDispose.war,OrderDisposeTest.war
二.安装jdk
1).移动jdk到安装目录;
2).赋予执行权限:chmod u+x jdk6.bin
3).执行命令:./jdk6.bin
4).用mv命令把jdk1.6.0_01给它改个名字叫jdk1.6
5).开始设置环境变量:
vi /etc/profile.d/java.sh
在profile.d/java.sh文件的最后添加如下代码
#set java environment
JAVA_HOME=/usr/local/hzcms/jdk6
export JAVA_HOME
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export CLASSPATH
PATH=$PATH:$JAVA_HOME/bin
export PATH
保存退出
使变量生效source ./profile.d/java.sh
6)命令java -version(显示的版本比实际版本号低的情况可能是操作系统的原因)
如果安装成功会出现java的版本信息
三.安装tomcat6.0
1).解压:tar zxvf apache-tomcat-6.0.18.tar.gz
2).将apache-tomcat-6.0.18的文件名修改为tomcat6.0
命令为:mv apache-tomcat-6.0.18tomcat6.0
3).#cd /tomcat6.0/bin
#./startup.sh //启动tomcat
此时tomcat开始启动,等启动完成后,在地址栏输入
http://ip:8080就可以看见熟悉的大猫了。
#./shutdown.sh //停止tomcat
4).tomcat6.0自启动
修改/etc/rc.d/rc.local文件,添加以下内容:
export JDK_HOME=/usr/local/bycw/jdk1.6
export JAVA_HOME=/usr/local/bycw/jdk1.6
/usr/local/bycw/tomcat6.0/bin/startup.sh
四.修改tomcat内存在catalina.sh增加这么一行
JAVA_OPTS='-Xms1536m-Xmx1536m-XX:PermSize=64M-XX:MaxNewSize=256m-XX:MaxPermSize=128m'
修改tomcat的默认路径
在
<Host debug="0" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
下面加入:
<Context path="" docBase="baiying" debug="0" reloadable="true" />
优化:Tomcat常用优化和配置
========================================================================
1、JDK内存优化:
Tomcat默认能够使用的内存为128MB,Windows下,在文档{tomcat_home}/bin/catalina.bat,Unix下,在文档{tomcat_home}/bin/catalina.sh的前面,增加如下配置:
JAVA_OPTS='-Xms[初始化内存大小] -Xmx[能够使用的最大内存]
一般说来,您应该使用物理内存的 80% 作为堆大小。
2、连接器优化:
在tomcat配置文档server.xml中的配置中,和连接数相关的参数有:
maxThreads:
Tomcat使用线程来处理接收的每个请求。这个值表示Tomcat可创建的最大的线程数。默认值200。
acceptCount:
指定当任何能够使用的处理请求的线程数都被使用时,能够放到处理队列中的请求数,超过这个数的请求将不予处理。默认值10。
minSpareThreads:
Tomcat初始化时创建的线程数。默认值4。
maxSpareThreads:
一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程。默认值50。
enableLookups:
是否反查域名,默认值为true。为了提高处理能力,应配置为false
connnectionTimeout:
网络连接超时,默认值60000,单位:毫秒。配置为0表示永不超时,这样配置有隐患的。通常可配置为30000毫秒。
maxKeepAliveRequests:
保持请求数量,默认值100。
bufferSize:
输入流缓冲大小,默认值2048 bytes。
compression:
压缩传输,取值on/off/force,默认值off。
其中和最大连接数相关的参数为maxThreads和acceptCount。假如要加大并发连接数,应同时加大这两个参数。web server允许的最大连接数还受制于操作系统的内核参数配置,通常Windows是2000个左右,Linux是1000个左右。
3、tomcat中如何禁止和允许列目录下的文档
在{tomcat_home}/conf/web.xml中,把listings参数配置成false即可,如下:
<servlet>
...
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>
...
</servlet>
4、tomcat中如何禁止和允许主机或IP地址访问
<Host ...>
...
<Valve className="org.apache.catalina.valves.RemoteHostValve"
allow="*.mycompany.com,www.yourcompany.com"/>
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
deny="192.168.1.*"/>
...
</Host>
JAVA_OPTS='-server -Xms512m -Xmx768m -XX:NewSize=128m -XX:MaxNewSize=192m -XX:SurvivorRatio=8'