Tomcat

  也叫:Java容器,web容器,web中间件

Apache 工作目录: /var/www/html

nginx 工作目录:  /usr/share/nginx/html

Tomcat 工作目录: /usr/local/tomcat/webapps/

问题:源码安装的nginx,如何制作nginx启动脚本,并设置开机启动。

Tomcat部署:

一、Tomcat Http Server

1. 部署JAVA环境

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

2多版本部署java   更换版本时把新版本的指向Java

# ln -s /usr/local/jdk1.8.0_151/ /usr/local/java

Tomcat的安装:JDK  Tomcat

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 -version

二、安装MySQL

1.创建数据库:
    创建jspgou数据库,字符集为utf-8

# yum install -y mariadb-server mariadb

# 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.导入数据

# mysql -uroot -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.0.104:8080/jeeadmin/jspgou/index.do
    注意服务器地址
    用户名:admin
    密  码:123456

Tomcat多实例

1.关闭主站

  # bash /usr/local/tomcat/bin/shutdown.sh

2.准备多实例主目录

mkdir  /usr/local/tomcat/instance{1..3}

3.制作实例工作目录

     # 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/
            /usr/local/tomcat/

4.修改端口

    将web配置文件拷贝三份。分别修改为不同端口
    # vim /usr/local/tomcat/instance1/conf/server.xml
        1.
            服务端口 8080 替换成 8081
            修改前
                 <!--   <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />        -->

            修改后
                <Connector port="8081" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
        2.
            <!-- <Server port="8005" shutdown="SHUTDOWN"> -->
            程序工作端口:8005替换成 8091
            <Server port="8091" shutdown="SHUTDOWN">
        3.
            appBase="webapps"
            网站目录:webapps 替换成 另一个目录
            appBase="/webapps"
    cp /usr/local/tomcat/instance1/conf/server.xml  /usr/local/tomcat/instance2/conf/
            服务端口  替换成 8082
            程序工作端口  替换成 8092
    cp /usr/local/tomcat/instance1/conf/server.xml  /usr/local/tomcat/instance3/conf/
            服务端口  替换成 8083
            程序工作端口  替换成 8093

5.启动脚本

# vim /usr/local/tomcat/instance1/ins1.sh        functions系统自带脚本。功能函数

#!/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'

# cp /usr/local/tomcat/instance1/ins1.sh /usr/local/tomcat/instance2/ins2.sh (修改路径)

# cp /usr/local/tomcat/instance1/ins1.sh /usr/local/tomcat/instance3/ins3.sh   (修改路径)

6.赋权

# chmod +x /usr/local/tomcat/instance1/ins1.sh
# chmod +x /usr/local/tomcat/instance2/ins2.sh
# chmod +x /usr/local/tomcat/instance3/ins3.sh

7.网站源码

# mkdir /webapps
cp -r /usr/local/tomcat/webapps/ROOT/ /webapps/

8.启动

# /usr/local/tomcat/instance1/ins1.sh start
# /usr/local/tomcat/instance2/ins2.sh start
# /usr/local/tomcat/instance3/ins3.sh start

9.测试

# netstat -antp | grep 8081
8082
8083
8091
8092
8093

JVM常用分析工具(扩展)

jps

简介

     用来查看所有的jvm进程,包括进程ID,进程启动的路径等。
     jps(Java Virtual Machine Process Status Tool)是JDK 1.5提供的一个显示当前所有java进程pid的命令,简单实用,非常适合在linux/unix平台上简单察看当前java进程的一些简单情况。
       ps命令我们经常用到,这个命令主要是用来显示当前系统的进程情况。比如有哪些进程及其 id。jps命令也是一样,它的作用是显示当前系统的java进程情况及其id号。我们可以通过它来查看我们到底启动了几个java进程(因为每一个java程序都会独占一个java虚拟机实例)以及他们的进程号(为下面几个程序做准备),并可通过opt来查看这些进程的详细启动参数。

语法

    jps [-q] [-mlvV] [<hostid>]
    -q    安静,只显示pid,不显示class名称,jar文件名和传递给main 方法的参数
    -m   输出传递给main 方法的参数,在嵌入式jvm上可能是null
    -l (显示完整路径)
    -v (显示传递给JVM的命令行参数)
    -V (显示通过flag文件传递给JVM的参数)
    hostid是主机id,默认localhost

例子

# jps
    4214 Bootstrap
  18096 jar
  26423 Jps
        默认显示 进程ID 和 启动类的名称。

# jps -q        -q 只输出进程ID,而不显示出类的名称

# jps -m         -m 可以输出传递给 Java 进程(main 方法)的参数

# jps -l         -l 可以输出主函数的完整路径(类的全路径)。

# jps -v        -v 可以显示传递给 Java 虚拟机的参数。

# jps -V                -V 显示通过flag文件传递给JVM的参数

4214 Bootstrap
26512 Jps
18096 jar

jinfo

jstack

jstat

jmap

JVM运维实用监控工具(扩展)

简介

   VisualVM 是一款免费的性能分析工具。它通过 jvmstat、JMX、SA(Serviceability Agent)以及 Attach API 等多种方式从程序运行时获得实时数据,从而进行动态的性能分析。同时,它能自动选择更快更轻量级的技术尽量减少性能分析对应用程序造成的影响,提高性能分析的精度。

性能分析的主要方式

监视

转储

性能分析

快照

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值