未加星标

CentOS 7 tomcat 7.0.54 的功能实现及详解

字体大小 | |
[系统(linux) 所属分类 系统(linux) | 发布者 店小二05 | 时间 2017 | 作者 红领巾 ] 0人收藏点击收藏

一、 tomcat 详解

1、编程语言简要说明:

a、硬件级:微码编程,汇编语言

b、系统级:c,c++

c、应用级:javaphp,python,Ruby,Perl,C#,…

其实 python虚拟机PVM Java虚拟机JVM,JDK

程序:指令+数据

过程式编程:以指令为中心,数据服务于代码;

对象式编程:以数据为中心,指令服务于数据;

对象,方法(method)

2、Java发展史

1995:java 1.0,Write once,Run Anywhere;

1996:JDK(java Development Kit),包含类库开发工具(javac)、JVM (SUM Classic VM)

1997: JDK1.1

1997: JDK1.2

Sun分拆java技术为三个方向

J2SE:Standard Editon标准版

J2EE:Enterprise Edition企业版

J2ME:MobileEdition

2000:JDK 1.3 HotSpot VM

2002: JDK 1.4

2006:Sun 开源了java技术,GPL,建立一个称为OpenJDK组织;

java 2 SE,java 2 EE ,java 2 ME

2011: JDK 1.7

2014: JDK 1.8

2016: JDK 1.9

3、java知识体系

a、centos 7 提供 java-1.6.0-openjdk java-1.7.0-openjdk java-1.8.0-openjdk 三个版本

b、JDK 与JRE JVM之间的包涵关系 (JDK(JRE(JVM)))

c、java代码的运行:*.java(source code) > javac > *.class(byte code)

d、 jvm运行时区域(执行引擎、方法区、堆:堆中用来放Java的对象、GC:垃圾收集器、java栈、PC寄存器、本地方法栈)

e、 java技术体系(java编程语言、java Class文件格式、java API、java VM[class loader,执行引擎])

d、 java 2 EE 所用的接口: CGI:Common Gateway Interface 通用网关接口

f、 JSP:java Server Page :java在html中的调用方式

<html>

<title>TITLE</title>

<body>

<h1>…</h1>

<%

…java code …

%>

</body>

</html>

调用时的转换过程 jsp >jasper > .java >javac >.class >jvm

注意:基于jasper将表态输出的数据转为java代码进行输出;

g、实现方式

商业实现:

WebSphere,WebLogic,Oc4j,Glassfish,Geronimo,JOnAS,JBoss(被redhat收购),…

开源实现;

Tomcat,jetty,Resin(半开源),…

h、安装方式 (centos)

通过yum源安装

# yum install java-1.8.0-openjdk-devel (依赖的java-1.8.0-openjdk,java-1.8.0-openjdk,headless也会被安装 )

# alternatives -h

# vim /etc/profile.d/java.sh

加入 export JAVA_HOME=/usr

# . /etc/profile.d/java.sh

# printenv 查看环境变量

能过rpm包安装

# wget ftp://172.16.0.1/pub/Sources/7.x86_64/jdk/jdk-8u25-linux-x64.rpm

# rpm -ivh jdk-8u25-linux-x64.rpm

# rpm -ql jdk1.8.0_25-1.8.0_25-fcs

# cd /usr/java/default

# vim /etc/profile.d/javad.sh

JAVA_HOME=/usr/java/latest

PATH=$JAVA_HOME/bin:$PATH

export JAVA_HOME PATH

# . /etc/profile.d/javad.sh

# java -version

4、tomcat:运行于JDK之上,表现为一个独立而完整的java进程,可与用户交互的web服务器

使用Java语言编写

Tomcat的核心组件:server.xml,其配置的格式为

<Server>

<Serivce>

<connector/>

<connecotr/>

<Engine>

<Host>

<Context/>

<Context/>

</Host>

<Host>

</Host>

</Engine>

</service>

</Server>

说明:顶级组件:Server

服务类组件:Service

连接类组件:http,https,ajp

容器类:Engine,Host,Context

被嵌套类:value,logger,realm,loader,manager

集群类组件:listener,cluster,…

二、tomcat的安装及配置

1、安装tomcat:

a、二进制格式安装

# tar xvf apache-tomcat-VERSION.tar.gz -C /usr/local/

# cd /usr/local/

# ln -sv apache-tomcat-VERSION tomcat

#vim /etc/profile.d/tomcat.sh

export CATALINA_BASE=/usr/local/tomcat

export PATH=$CATALINA_BASE/bin:$PATH

# . /etc/profile.d/tomcat.sh

b、yum源安装

# yum -y install tomcat-webapps tomcat-docs-webapp tomcat-admin-webapps tomcat tomcat-lib

安装完后可以使用命令# systemctl start tomcat && ss -tnl 启动tomcat服务并且查看8080端口是否启用

在浏览器中进行测试 http://172.16.254.248:8080/


CentOS 7 tomcat 7.0.54 的功能实现及详解

2、tomcat程序目录结构

bin:脚本及启动时用到的类

conf:配置文件目录

lib:库文件,java类库

logs:日志文件目录

temp:临时文件目录

webapps:webapp的默认目录

work:工作目录

3、tomcat的配置文件说明

server.xml:主配置文件

web.xml:每个webapp只有部署后才能被访问,它的部署方式通过由web.xml进行定义,其存位置为WEB-INF/目录中,此文件为所有的webapps提供默认配置

context.xml:每个web都可专用的配置文件,它通常由专用的配置文件context.xml来定义,其存放位置为WEB-INF/目录中,此文件为所有的webapps提供默认配置

tomcat-users.xml:用户的账号和文件

catalina.policy:当使用security选项启动tomcat时,用于为tomcat设置安全策略;

catalina.propreteis:java物定义文件,用于设定类加载器路径,以及一些与JVM高估相关参数;

logging.properties:日志系统相关的配置

4、tomcat-users.xml配置

vim /etc/tomcat/tomcat-users.xml

在<tomcat-users>段中加入以五内容

<role rolename="manager-gui"/>

<user username="centos" password="centos" roles="manager-gui"/>

<role rolename="admin-gui"/>

<user username="centos" password="centos" roles="admin-gui"/>

重启服务后并重新访问http://172.16.254.248:8080/

点Server Status、Manager App、 Host Manager时输入用户名centos密码centos进行访问


CentOS 7 tomcat 7.0.54 的功能实现及详解
CentOS 7 tomcat 7.0.54 的功能实现及详解

5、提供一测试类应用,并冷部署;

#mkdir -pv /usr/share/tomcat/webapps/test/{classes,lib,WEB-INF}

# vim /usr/share/tomcat/webapps/test/index.jsp

<%@ page language="java" %>

<%@ page import="java.util.*" %>

<html>

<head>

<title> Test Page </title>

</head>

<body>

<% out.println("hellow world");

%>

</body>

</html>

重新访问http://172.16.254.248:8080/test/时会显示hellow world

6、nginx + tomcat cluster

用nginx 反代两台tomcat主机 ,cluster(172.16.254.248[nginx]) ,node1(172.16.251.232[Tomcat A]),node2(172.16.251.74[Tomcat B])

cluster# yum -y install nginx && systemctl start nginx

# vim /etc/nginx/nginx.conf

在http段中加入

upstream tomcat {

server 172.16.251.232:8080;

server 172.16.251.74:8080;

}

# vim /etc/nginx/conf.d/default.conf

在location中加入

proxy_pass http://tomcat/;

nod1 # mkdir -pv /usr/share/tomcat/webapps/test/{WEB-INF,classes,lib}

# vim /usr/share/tomcat/pwebapps/test/index.jsp

<%@ page language="java" %>

<html>

<head><title>TomcatA</title></head>

<body>

<h1><font color="red">TomcatA.rj.com</font></h1>

<table align="centre" border="1">

<tr>

<td>Session ID</td>

<% session.setAttribute("magedu.com","magedu.com"); %>

<td><%= session.getId() %></td>

</tr>

<tr>

<td>Created on</td>

<td><%= session.getCreationTime() %></td>

</tr>

</table>

</body>

</html>

nod2 # mkdir -pv /usr/share/tomcat/webapps/test/{WEB-INF,classes,lib}

# vim /usr/share/tomcat/pwebapps/test/index.jsp

<%@ page language="java" %>

<html>

<head><title>TomcatA</title></head>

<body>

<h1><font color="red">TomcatB.rj.com</font></h1>

<table align="centre" border="1">

<tr>

<td>Session ID</td>

<% session.setAttribute("magedu.com","magedu.com"); %>

<td><%= session.getId() %></td>

</tr>

<tr>

<td>Created on</td>

<td><%=

本文系统(linux)相关术语:linux系统 鸟哥的linux私房菜 linux命令大全 linux操作系统

主题: TomcatJVMJava开源RubyJSPC#Perl服务器浏览器
分页:12
转载请注明
本文标题:CentOS 7 tomcat 7.0.54 的功能实现及详解
本站链接:http://www.codesec.net/view/531727.html
分享请点击:


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 系统(linux) | 评论(0) | 阅读(33)