Chinaunix首页 | 论坛 | 博客
  • 博客访问: 168439
  • 博文数量: 114
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1116
  • 用 户 组: 普通用户
  • 注册时间: 2015-11-09 09:49
文章分类

全部博文(114)

文章存档

2016年(74)

2015年(40)

我的朋友

分类: 其他UNIX

2015-11-12 15:45:46

环境: CentOS 7 x86_64

1、安装jdk

1
rpm -ivh jdk-8u60-linux-x64.rpm

2、创建普通用户

1
2
getent group tomcat || groupadd -r tomcat
getent passwd tomcat || useradd -r -d /opt -s /bin/nologin tomcat

3、下载 7

1
2
3
4
5
6
7
8
9
cd /opt
tar zxvf apache-tomcat-7.0.64. tar .gz
mv apache-tomcat-7.0.64 tomcat01
chown -R tomcat:tomcat tomcat01
tar zxvf apache-tomcat-7.0.64. tar .gz
mv apache-tomcat-7.0.64 tomcat02
chown -R tomcat:tomcat tomcat02

两个实例同时监听8080端口必然会产生冲突,所以必须修改.

1
2
3
4
sed -i 's/8080/8081/g' /opt/tomcat01/conf/server .xml
sed -i 's/8005/8001/g' /opt/tomcat01/conf/server .xml
sed -i 's/8080/8082/g' /opt/tomcat02/conf/server .xml
sed -i 's/8005/8002/g' /opt/tomcat02/conf/server .xml

AJP通常用不上,这里统一关闭

1
2
sed -i '/8009/d' /opt/tomcat01/conf/server .xml
sed -i '/8009/d' /opt/tomcat01/conf/server .xml

tomcat在Linux 下默认工作模式是bio,性能非常低,建议使用apr或者nio,

这里改为nio,即非阻塞IO,性能比较好。

1
2
sed -i.bak 's#HTTP/1.1#org.apache.coyote.http11.Http11NioProtocol#' /opt/tomcat01/conf/server .xml
sed -i.bak 's#HTTP/1.1#org.apache.coyote.http11.Http11NioProtocol#' /opt/tomcat02/conf/server .xml

3、创建启动文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
cd /usr/lib/systemd/system
cat >tomcat01.service <
[Unit]
Description=Apache Tomcat 7
After=network.target
[Service]
Type=oneshot
ExecStart= /opt/tomcat01/bin/startup .sh
ExecStop= /opt/tomcat01/bin/shutdown .sh
RemainAfterExit= yes
User=tomcat
Group=tomcat
WantedBy=multi-user.target
EOF

tomcat02同理

1
sed 's/tomcat01/tomcat02/g' tomcat01.service > tomcat02.service

4、启动服务

1
2
3
4
systemctl enable tomcat01
systemctl enable tomcat02
systemctl start tomcat01
systemctl start tomcat02

5、查看进程

ps aux |grep tomcat

附上一份反向代理tomcat的配置文件

proxy_cache_path /var/cache/nginx/proxy_cache levels=1:2 keys_zone=:10m inactive=1h max_size=1g;


upstream tomcat {

ip_hash ;

#hash $remote_addr consistent;

server :8081 max_fails=1 fail_timeout=2s ;

server 127.0.0.1:8082 max_fails=1 fail_timeout=2s ; ;

keepalive 16;

}


server {

listen 80;

server_name tomcat.example.com;


charset ;

access_log /var/log/nginx/tomcat.access.log main;

root /usr/share/nginx/html;

index index.html index.htm index.jsp;


location / {

proxy_pass

proxy_redirect off;

proxy_set_header Host $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_cache_use_stale error timeout invalid_header updating http_500 http_502 http_503 http_504;


proxy_connect_timeout 300;

proxy_send_timeout 300;

proxy_read_timeout 300;

proxy_http_version 1.1;

proxy_set_header Connection "";


add_header X-Backend "$upstream_addr";

}


location ~* ^.+.(js|css|ico|gif|jpg|jpeg|png)$ {

proxy_pass ;

proxy_redirect off;

proxy_set_header Host $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_cache_use_stale error timeout invalid_header updating http_500 http_502 http_503 http_504;


proxy_connect_timeout 300;

proxy_send_timeout 300;

proxy_read_timeout 300;

proxy_http_version 1.1;

proxy_set_header Connection "";


proxy_cache static;

proxy_cache_key $host$uri$is_$args;

proxy_cache_valid 200 302 5m;

proxy_cache_valid 404 1m;

proxy_cache_valid any 1h;

add_header X-Cache $upstream_cache_status;


#log_not_found off;

#access_log off;

expires max;

}


location ~ /.ht {

deny all;

}


}

如果想深入体验LINUX系统的新手,也可以先下载一个方德Linux软件中心试用一下。
免费下载地址:

阅读(679) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~