jar包相关
-  .war:WebApp打包,类zip格式文件,通常包括一个应用的所有资源,比如jsp,html,配置文件等 
-  .jar:EJB类文件的打包压缩类zip格式文件,,包括很多的class文件, 网景公司发明 
-  .rar:资源适配器类打包文件,目前已不常用 
-  .ear:企业级WebApp打包,目前已不常用 
传统应用开发测试后,通常打包为war格式,这种文件部署到Tomcat的webapps目录下,并默认会自动解压
#conf/server.xml中文件配置
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
状态页
点击进去是无法查看的,需要再配置文件中进行修改

打开该文件


将改成复制的内容贴进去

此时仍然不能打开,因为只能本地打开,虚拟机内是可以看到的




开启远程登陆,便可以访问
cd /usr/local/tomcat/webapps/manager/META-INF

vim context.xml

重启一下 systemctl restart tomcat


这个是看jvm内存使用情况

这能控制项目的状态

这个仍需要配置

依旧是 /usr/local/tomcat/conf/tomcat-users.xml

还需要在修改配置文件
切换到 /usr/local/tomcat/webapps/host-manager/META-INF
修改 context.xml 文件

systemctl restart tomcat
将8005端口修改

注意:0代表随机端口 -1代表无效端口
防止别人通过远程连接关闭tomcat 8005端口
配置虚拟主机





Context配置
Context作用:
-  路径映射:将url映射至指定路径,而非使用appBase下的物理目录,实现虚拟目录功能 
-  应用独立配置,例如单独配置应用日志、单独配置应用访问控制 
#映射指定路径
<Context path="/test" docBase="/data/test" reloadable="true" />
#映射站点的根目录
<Context path="/" docBase="/data/website" reloadable="true" />
#还可以添加日志等独立的配置
<Context path="/test" docBase="/data/test" reloadable="true" ><Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"prefix="localhost_test_log" suffix=".txt"pattern="%h %l %u %t "%r" %s %b" />
</Context>说明:
-  path:指的是访问的URL路径,如果path与appBase下面的子目录同名,context的docBase路径优先更高 
-  docBase:可以是磁盘文件的绝对路径,也可以是相对路径(相对于Host的appBase) 
-  reloadable:true表示如果WEB-INF/classes或META-INF/lib目录下.class文件有改动,就会将WEB应用重新加载。生产环境中,建议使用false来禁用。 
例子
[root@localhost data]#mkdir test
[root@localhost data]#echo test > test/index.html[root@localhost test]#vim /usr/local/tomcat/conf/server.xml
<Host name="www.a.com"  appBase="/data/web1"unpackWARs="true" autoDeploy="true"><Context path="/test" docBase="/data/test" reloadable="false" />#如果  访问  www.a.com/test/   那么 就替换成"/data/test</Host>[root@node2 ~]#curl www.a.com:8080/test/
test
tomcat搭建个人博客
将war包放在tomcat/webapps下

搭建一个repo源,用来下载数据库
vim /etc/yum.repo.d/mysql.repo

yum install mysql-community-server -y

yum 安装的数据库,需要修改密码
先启动数据库

这时候我们不知道密码

grep password /var/log/mysqld.log

复制,登录

修改密码 由于是yum安装,安全级别比较高,需要稍作修改
set global validate_password_policy=0; 复杂性没有要求
set global validate_password_length=1; 长度没有要求

修改密码 alter user root@'localhost' identified by 'abc123';

修改完成
创建数据库

192.168.94.7/jpress





搭建完成
jvm虚拟机
| 参数 | 说明 | 举例 | 
|---|---|---|
| -Xms | 设置应用程序初始使用的堆内存大小(年轻代+老年代) | -Xms2g | 
| -Xmx | 设置应用程序能获得的最大堆内存早期JVM不建议超过32G,内存管理效率下降 | -Xms4g | 
| -XX:NewSize | 设置初始新生代大小 | -XX:NewSize=128m | 
| -XX:MaxNewSize | 设置最大新生代内存空间 | -XX:MaxNewSize=256m | 
| -Xmnsize | 同时设置-XX:NewSize 和 -XX:MaxNewSize,代 | -Xmn1g | 
| -XX:NewRatio | 以比例方式设置新生代和老年代 | -XX:NewRatio=2new/old=1/2 | 
| -XX:SurvivorRatio | 以比例方式设置eden和survivor(S0或S1) | -XX:SurvivorRatio=6eden/survivor=6/1new/survivor=8/1 | 
| -Xss | 设置每个线程私有的栈空间大小,依据具体线程 | -Xss256k | 
实现动静分离
记得每台机子都要把防火墙关闭,关闭核心防护
(systemctl stop firewalld setenforce 0)

准备三台设备
linux1 做反向代理机器 linux2 和 3做 web服务端
linux1 nginx已装好,如果不会装,查看本人往期有关nginx的博客
linux 2 和3安装 jdk和tomcat(tomcat需要jdk)2和3步骤一样
首先先准备tomcat和jdk 的压缩包

tar xf jdk-8u291-linux-x64.tar.gz -C /usr/local/


export JAVA_HOME=/usr/local/jdk
 export PATH=$JAVA_HOME/bin:$PATH
 export JRE_HOME=$JAVA_HOME/jre
 export CLASSPATH=$JAVA_HOME/lib/:$JRE_HOME/lib/


jdk安装完成
安装tomcat


tomcat安装完成
将tomcat 加入自启动

vim /usr/lib/systemd/system/tomcat.service

[Unit]
 Description=Tomcat
 After=syslog.target network.target
[Service]
 Type=forking
 ExecStart=/usr/local/tomcat/bin/startup.sh
 ExecStop=/usr/local/tomcat/bin/shutdown.sh
 RestartSec=3
 PrivateTmp=true
 User=tomcat
 Group=tomcat
[Install]
 WantedBy=multi-user.target


完成
配置 linux1 端 进入配置文件 nginx.conf (yum安装的路径/etc/nginx/nginx.conf 编译安装看你自己放哪就在哪)


记得 nginx -t 检查语法 nginx -s reload 重新加载配置文件
前往 /data下建立相关文件 ,记得先在根下建立 data ( mkdir /data)

图片的话 ,随便找一个 改名成 a.jpg即可
配置 linux2 和linux3
linux2

echo tomcat1 > test.jsp


linux 3 配置基本相同



配置完成
测试




新增设备linux4 linux5 做nginx静态服务器 (yum 安装nginx )
将 /usr/share/nginx/html/index.html 页面进行修改 linux 4 和 5 都是


修改linux1 修改nginx 1的配置文件




修改 linux4 和 5 的配置 双方配置相同


测试

 完成