Tomcat构建企业级高负载WEB服务器

本文介绍了Java虚拟机的工作原理,重点讲解了如何通过JVM使Java程序实现跨平台,并详细指导了Tomcat的安装、配置、多实例部署及MySQL整合,包括数据库连接设置和电子商城jspgou的部署过程。
摘要由CSDN通过智能技术生成

前言

什么是JAVA虚拟机

所谓虚拟机,就是一台虚拟的计算机。他是一款软件,用来执行一系列虚拟计算机指令。大体上,虚拟机可以分为系统虚拟机和程序虚拟机。大名鼎鼎的VisualBox、VMware就属于系统虚拟机。他们完全是对物理计算机的仿真。提供了一个可以运行完整操作系统的软件平台。
程序虚拟机的典型代表就是Java虚拟机,它专门为执行单个计算机程序而设计,在Java虚拟机中执行的指令我们称为Java字节码指令。无论是系统虚拟机还是程序虚拟机,在上面运行的软件都呗限制于虚拟机提供的资源中。

JAVA 如何做到跨平台

同一个JAVA程序(JAVA字节码的集合),通过JAVA虚拟机(JVM)运行于各大主流操作系统平台比如Windows、CentOS、Ubuntu等。程序以虚拟机为中介,来实现跨平台。
图示
在这里插入图片描述

Tomcat部署

官网地址

tomcat下载地址
http://tomcat.apache.org/
在这里插入图片描述

JDK下载地址
http://www.oracle.com/technetwork/java/javase/downloads/index.html
在这里插入图片描述

部署

一、Tomcat Http Server

环境
5到8G内存

在这里插入图片描述

1. 部署JAVA环境

提示
建议卸载默认安装openjdk软件

①解压安装包

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

②多版本部署java

ln -s /usr/local/jdk1.8.0_151/ /usr/local/java
在这里插入图片描述

3配置环境变量
vim /etc/profile
		JAVA_HOME=/usr/local/java
		PATH=$JAVA_HOME/bin:$PATH
		export JAVA_HOME PATH
source /etc/profile
env |grep JAVA
		JAVA_HOME=/usr/local/java

在这里插入图片描述

4测试java

java -versionjava version "1.8.0_151"Java(TM) SE Runtime Environment (build 1.8.0_151-b12)Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)

2. 安装Tomcat:
tar xf apache-tomcat-7.0.42.tar.gz  -C /usr/local/
ln -s /usr/local/apache-tomcat-7.0.42/ /usr/local/tomcat
	定义Tomcat所需环境变量:
vim /etc/profile	
			CATALINA_HOME=/usr/local/tomcat
				//Tomcat安装目录
			export CATALINA_HOME
		

source /etc/profile
在这里插入图片描述

3.启动Tomcat

启动tomcat
#bash /usr/local/tomcat/bin/startup.sh
输出提示在这里插入图片描述

检查端口
# netstat -tnlp |grep java
在这里插入图片描述

关于tomcat端口:
8005
是tomcat本身的端口
8080
tomcat负责建立HTTP连接。在通过浏览器访问Tomcat服务器的Web应用时,使用的就是这个连接器。 
8009
tomcat负责和其他的HTTP服务器建立连接。
如nginx和apache互通时使用

访问
	http://192.168.0.104:8080/
		注意服务器地址,注意端口
	浏览器访问tomcat主页。注意关闭防火墙
关闭tomcat(切记,否则你会遇见500)
	#bash  /usr/local/tomcat/bin/shutdown.sh

在这里插入图片描述在这里插入图片描述

4.关于tomcat
[root@web ~]# cd /usr/local/tomcat/
[root@web tomcat]# tree -L 1
.
├── bin              #存放tomcat管理脚本
├── conf             # tomcat 配置文件存放目录
├── lib              # web应用调用的jar包存放路径
├── LICENSE
├── logs        # tomcat 日志存放目录,catalina.out 为主要输出日志
├── NOTICE
├── RELEASE-NOTES
├── RUNNING.txt
├── temp             # 存放临时文件
├── webapps         # web程序存放目录
└── work             # 存放编译产生的.java 与 .class文件
[root@web03 tomcat]# cd webapps/
[root@web03 webapps]# tree -L 1
.
├── docs            # tomcat 帮助文档
├── examples       # web应用示例
├── host-manager  # 主机管理
├── manager         # 管理
└── ROOT             # 默认站点根目录

默认网站的主目录(主页)
ls /usr/local/tomcat/webapps/ROOT

[root@web03 conf]# tree -L 1
.
├── Catalina
├── catalina.policy
├── catalina.properties
├── context.xml
├── logging.properties
├── logs
├── server.xml           # tomcat 主配置文件
├── server.xml.bak
├── server.xml.bak2
├── tomcat-users.xml    # tomcat 管理用户配置文件
├── tomcat-users.xsd
└── web.xml

仅作了解
在这里插入图片描述

二、安装MySQL

1.创建数据库:
	创建jspgou数据库,字符集为utf-8
yum install -y mariadb-server mariadb
	该步骤出错。请您检查YUM源配置

# systemctl start mariadb
[root@localhost ~]# mysqladmin -u root password 123
	注意如果有密码
	mysqladmin -u root -p老密码 password 新密码
[root@localhost ~]# mysql -u root -p123
MariaDB [(none)]> create database jspgou character set = utf8;

在这里插入图片描述

在这里插入图片描述

三、部署jspgou(电子商城)

1.解压源码包

unzip jspgouV6-ROOT.zip
在这里插入图片描述

2.更改数据库链接:

提示:在解压缩后的文件中,修改连接数据库的信息
[root@localhost ~]# vim ROOT/WEB-INF/config/jdbc.properties

jdbc.url=jdbc:mysql://127.0.0.1:3306/jspgou?characterEncoding=UTF-8
jdbc.username=root
jdbc.password=123
在这里插入图片描述
在这里插入图片描述

3.导入数据:

[root@localhost ~]# mysql -u root -p123 -D jspgou < DB/jspgou.sql

使用MYSQL数据库时,会发生的错误
使用mysql作为数据库时,如果导入数据失败
1.修改mysql配置文件
my.cnf中max_allowed_packet参数为64m,默认为1m
2.DB/jspgou.sql里面的默认值改一下
把所有datetime类型的字段默认值改成CURRENT_TIMESTAMP
将程序解压后的ROOT文件夹,拷贝到tomcat安装目录下的webapps文件夹下

[root@localhost ~]# \cp -r ROOT /usr/local/tomcat/webapps/
不使用cp 的别名。 alias cp=‘cp -i’
在这里插入图片描述

4.部署网站:

启动tomcat
#bash /usr/local/tomcat/bin/startup.sh
输入以下地址
http://192.168.75.226:8080/jeeadmin/jspgou/index.do
注意服务器地址
用户名:admin
密 码:123456
图示

		点击上图右上角浏览器图标访问网站首页

在这里插入图片描述在这里插入图片描述

Tomcat多实例

关闭主站

bash /usr/local/tomcat/bin/shutdown.sh
在这里插入图片描述

准备多实例主目录

mkdir /usr/local/tomcat/instance{1…3} 在这里插入图片描述

制作实例工作目录

cp -r /usr/local/tomcat/{conf,logs,temp,work} /usr/local/tomcat/instance1/
# cp -r /usr/local/tomcat/{conf,logs,temp,work} /usr/local/tomcat/instance2/
# cp -r /usr/local/tomcat/{conf,logs,temp,work} /usr/local/tomcat/instance3/
查看目录结构
[root@www ~]# tree -d -L 2 /usr/local/tomcat/
在这里插入图片描述

修改端口
将web配置文件拷贝三份。分别修改为不同端口

vim /usr/local/tomcat/instance1/conf/server.xml
服务端口 8080 替换成 8081
修改前
在这里插入图片描述
修改后
在这里插入图片描述

程序工作端口:8005替换成 8091
修改前
在这里插入图片描述
修改后
在这里插入图片描述

网站目录:webapps 替换成 另一个目录
修改前

修改后
在这里插入图片描述

其他两个也相应不同修改在这里插入图片描述
在这里插入图片描述在这里插入图片描述

在这里插入图片描述在这里插入图片描述

启动脚本
vim /usr/local/tomcat/instance1/ins1.sh

#!/bin/bash
#instance1
. /etc/init.d/functions
export CATALINA_BASE="/usr/local/tomcat/instance1"

case "$1" in
start)
        $CATALINA_HOME/bin/startup.sh
        ;;
stop)
        $CATALINA_HOME/bin/shutdown.sh
        ;;
restart)
        $CATALINA_HOME/bin/shutdown.sh
        sleep 5
        $CATALINA_HOME/bin/startup.sh
        ;;
esac
export JAVA_OPTS='-Xms64m -Xmx128m'

vim /usr/local/tomcat/instance2/ins2.sh

#!/bin/bash
#instance2              #####
. /etc/init.d/functions
export CATALINA_BASE="/usr/local/tomcat/instance2"    #####

case "$1" in
start)
        $CATALINA_HOME/bin/startup.sh
        ;;
stop)
        $CATALINA_HOME/bin/shutdown.sh
        ;;
restart)
        $CATALINA_HOME/bin/shutdown.sh
        sleep 5
        $CATALINA_HOME/bin/startup.sh
        ;;
esac

vim /usr/local/tomcat/instance3/ins3.sh

#!/bin/bash
#instance3
. /etc/init.d/functions
export CATALINA_BASE="/usr/local/tomcat/instance3"

case "$1" in
start)
        $CATALINA_HOME/bin/startup.sh
        ;;
stop)
        $CATALINA_HOME/bin/shutdown.sh
        ;;
restart)
        $CATALINA_HOME/bin/shutdown.sh
        sleep 5
        $CATALINA_HOME/bin/startup.sh
        ;;
esac
export JAVA_OPTS='-Xms64m -Xmx128m'

赋权

chmod +x /usr/local/tomcat/instance1/ins1.sh
# chmod +x /usr/local/tomcat/instance2/ins2.sh
# chmod +x /usr/local/tomcat/instance3/ins3.sh
在这里插入图片描述

网站源码

mkdir /webapps
cp -r /usr/local/tomcat/webapps/ROOT/ /webapps/
在这里插入图片描述

启动

/usr/local/tomcat/instance1/ins1.sh start
# /usr/local/tomcat/instance2/ins2.sh start
# /usr/local/tomcat/instance3/ins3.sh start
等5秒
在这里插入图片描述

测试

netstat -antp | grep 8081
在这里插入图片描述

浏览

http://192.168.75.226:8081
http://192.168.75.226:8082
http://192.168.75.226:8083
在这里插入图片描述在这里插入图片描述在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值