首页 » 架构配置 » Tomcat » 正文

Tomcat基础架构

一、Tomcat介绍

  1. Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。
  2. java程序写的网站用tomcat+jdk来运行。 tomcat是一个中间件,真正起作用的,解析java脚本的是jdk。
  3. jdk(java development kit)是整个java的核心,它包含了java运行环境和一堆java相关的工具以及java基础库。 最主流的jdk为sun公司发布的jdk,除此之外,其实IBM公司也有发布JDK,CentOS上也可以用yum安装openjdk
  4. 我们已经学过了LAMP和LNMP架构;针对的开发语言是PHP;可以说PHP是一门开发Web程序非常流行的语言;早起的比较流行的是asp,是在windows平台上去运行的一种编程语言;但是因为安全性不安全;所以越来越多做网站的人用Php去开发网站,相对来说也是比较安全的。
  5. 除了PHP外,还有一门语言叫java;java是一门非常庞大的开发语言;不仅仅是可以开发开网站;也可以开发大型的软件、工具、甚至是游戏都可以;tomcat实际上是一个中间件,用来运行Java语言写的网站;那我们Php写的代码,要用php去解析;java就要用tomcat加上JDK一起去解析。

二、安装jdk

下载:

  1. jdk版本1.6,1.7,1.8俗称6 ; 7; 8;
  2. 官网下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
  3. 因为我做测试,所以不可以在linux中wget。使用本地电脑的浏览器下载最新版的X64,下载tar.gz版本。
  4. 使用之前安装的xftp上传jdk到远程目录。(安全性有保障,且不需要开启21端口。通过sshd端口传输)

解压安装:

  1. 解压
[root@zhdy-03 src]# tar zxvf jdk-8u144-linux-x64.tar.gz
  1. 移动到指定目录
[root@zhdy-03 src]# mv jdk1.8.0_144 /usr/local/jdk1.8
  1. 增加环境变量
vi /etc/profile //最后面增加

JAVA_HOME=/usr/local/jdk1.8/
JAVA_BIN=/usr/local/jdk1.8/bin
JRE_HOME=/usr/local/jdk1.8/jre
PATH=$PATH:/usr/local/jdk1.8/bin:/usr/local/jdk1.8/jre/bin
CLASSPATH=/usr/local/jdk1.8/jre/lib:/usr/local/jdk1.8/lib:/usr/local/jdk1.8/jre/lib/charsets.jar
  1. 刷新 profile
[root@zhdy-03 src]# source /etc/profile
  1. 检测:
[root@zhdy-03 src]# java -version
java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)

如果安装下来,安装的版本和我们预装的不是同一个,首先我们需要确认是否已经安装了其它版本的例如: openjdk

rpm -qa | grep openjdk

安装Tomcat

其实Tomcat只是一个中间件,真正起作用的就是咱们已经安装的jdk。没有Tomcat还不可以,他的作用就是监听8080;8005;8009端口。假如说,访问站点,需要一个webserver,而Tomcat就可以理解为webserver!

  1. 下载:
[root@zhdy-03 src]# wget http://apache.fayea.com/tomcat/tomcat-8/v8.5.20/bin/apache-tomcat-8.5.20.tar.gz
  1. 解压 & 移动到指定位置
[root@zhdy-03 src]# tar zxvf apache-tomcat-8.5.20.tar.gz

[root@zhdy-03 src]# mv apache-tomcat-8.5.20 /usr/local/tomcat
  1. 启动Tomcat
[root@zhdy-03 src]# /usr/local/tomcat/bin/startup.sh 
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/local/jdk1.8
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.

[root@zhdy-03 src]# ps aux | grep java
  1. Tomcat不支持直接重启服务,所以要先关闭,再次开启。
[root@zhdy-03 src]# /usr/local/tomcat/bin/shutdown.sh
  1. 查看监听端口:
[root@zhdy-03 src]# netstat -lntp | grep java
tcp6       0      0 :::8080                 :::*                    LISTEN      3247/java           
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      3247/java           
tcp6       0      0 :::8009                 :::*                    LISTEN      3247/java  

-------------------------------------------

三个端口8080为提供web服务的端口;

8005为管理端口;

8009端口为第三方服务调用的端口,比如httpd和Tomcat结合时会用到
  1. 使用外部浏览器查看8080端口
[root@zhdy-03 src]# systemctl stop firewalld
[root@zhdy-03 src]# systemctl disable firewalld
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.

mark


三、扩展

j2ee、j2se、ejb、javabean、serverlet、jsp之间关系(大白话)

Java是根(也是一门具体的语言);

J2EE、J2SE是Java在不同领域的具体应用;

J2SE用于应用程序开发,类似Windows平台应用软件;

J2EE是个大概念,用于Web电子商务等方面;

EJB、Servlet和JavaBean的综合灵活运用能形成优秀的J2EE平台;

你可以把Jsp看作是对Servlet的进一步封装。

j2ee:这个东西代表两个不同的东西,一种是sun的一种服务器软件,注意是一种具体的软件,不是技术。另一种是泛指sun的java技术,包括jsp,servlet,javabean,ejb等。

j2se:我所知道的,sun的jdk有专门for电子设备的版本,叫j2me,用来开发手机,pda等应用,j2se则是为计算机用。

javabean:通俗的讲,就是封装了好多function的类,用来被别的jsp,servlet等调用的。

ejb: 更通俗的讲,可以让你的javabean分布在多台计算机上以供你调用。

servlet: 用来通过http协议与用户交互 jsp: servlet的UI设计太差,jsp可以实现更方便的UI设计。

struts: jsp把网页和代码混在一起,太乱,于是出了个struts可以帮你把jsp的UI和逻辑部分分开处理。

hibernate:jdo的替代品

J2EE就是一堆合同文本。 如果Tcl造汽车,自己造太麻烦,就把它拆成几个部分,例如发动机,外壳,传动,内饰。 然后发动机交给丰田,外壳交给现代,内施交给本田,传动交给大众。只要定好合同,就等着在中国攒汽车了。

四大Java EE容器(Tomcat、JBoss、Resin、Glassfish)之简单比较。


赞 (2)

发表评论