tomcat

web服务

nginx: 轻量级、web 反向代理、简单的负载均衡,处理静态数据的能力比较好;并发量2.5万
apache: 重量级,处理动态数据的能力比较好
tomcat: java的web服务,手机app大部分都使用的tomcat
lamp和lnmp 架构 index.html index.php,php作为中间件,php是能够加载index.php页面

tomcat

是基于java开发的,它只支持index.html和index.jsp页面,java能够解析index.jsp的文件;

Tomcat服务器是一个免费的开放源代码的Web应用服务器。Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet(java编写的一个web程序) 和JSP规范总是能在Tomcat中得到体现,Tomcat 5支持最新的Servlet 2.4和JSP 2.0规范。因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,是目前比较流行的Web应用服务器。
对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。
在这里插入图片描述
Servlet是Java提供的用于开发Web服务器应用程序的一个组件,运行在服务器端,由Servlet容器所管理,用于生成动态的内容。Servlet是平台独立的Java类,编写一个Servlet,实际上就是按照Servlet规范编写一个Java类。
JSP是servlet的扩展,可以认为JSP = HTML + Java代码 + JSP标签
Servlet获取请求数据和处理数据非常方便,但是向页面输出并显示数据(html标签)非常麻烦,毫无格式
jsp显示数据非常方便,像html格式一样,但是封装数据和处理数据比较麻烦

tomcat的作用:
用来对服务器上的web提供访问权限控制,并且具有处理HTML页面的功能

tomcat的优点:
兼有可扩展性和安全性,性能稳定

1、兼有可扩展性和安全性。假如单位时间内访问请求数急剧增加,可以用相对较低的费用增加前端的能力。
2、比较容易扩展。由于是通过在这台功能强大的服务器上运行的单个servlet容器,实际上也就不需要考虑session状态在分布式环境下的维护这类复杂的问题。
3、台后端服务器在外界不可以访问,网上的黑客只能访问前端的web服务器,不能直接访问后端的应用服务器,这就提高了安全性。但这并不意味着黑客们不能通过网络浏览器进行其它形式的攻击。
这种类型的站点的主要特点是每一个页面都可能是动态生成的,但这些数据中主要部分还是静态的(比如,各类图像GIF、JPG、PNG,流式媒体等)。想象以下某个站点采用了多个用于负载均衡的硬件设备,这些设备后端连结一组服务器,这些服务器可能是一组相对廉价的运行apache的linux服务器簇。这组位于前端的服务器簇将仅占总访问请求的10%的真正需要调用servlet的访问请求发送给后段的系统,后锻系统可以是一台Sun的E3500,或是IBM的AS/400,在这个后端的系统上运行着Tomcat,可能还包括企业级数据库。

tomcat的应用:
web应用服务器,可以作为中间件处理index.jsp的文件

jdk介绍

jdk(java development kit) 是java语言的软件开发工具包
其中基本组件包括:

javac – 编译器,将源程序转成字节码 
jar – 打包工具,将相关的类文件打包成一个文件 
javadoc – 文档生成器,从源码注释中提取文档 
jdb – debugger,查错工具 
java – 运行编译后的java程序(.class后缀的) 
appletviewer:小程序浏览器,一种执行HTML文件上的Java小程序的Java浏览器。 
Javah:产生可以调用Java过程的C过程,或建立能被Java程序调用的C过程的头文件。 
Javap:Java反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代码含义。 
Jconsole: Java进行系统调试和监控的工具 
xtcheck:一个检测jar包冲突的工具 
apt:注释处理工具 
jhat:java堆分析工具 
jstack:栈跟踪程序 
jstat:JVM检测统计工具 
jstatd:jstat守护进程 
jinfo:获取正在运行或崩溃的java程序配置信息 
jmap:获取java进程内存映射信息 
idlj:idl-to-java编译器,将IDL语言转化为java文件 
policytool:一个GUI的策略稳健和管理工具 
jrunscript:命令行脚本运行 

安装tomcat前要先安装jdk环境
因为版本的原因 需要重新安装一个新的jdk工具包 也就是java环境
准备一台虚拟机,拖入相关的软件包

[root@localhost ~]# java -version
openjdk version "1.8.0_102"
OpenJDK Runtime Environment (build 1.8.0_102-b14)
OpenJDK 64-Bit Server VM (build 25.102-b14, mixed mode)
[root@localhost ~]# rm -rf /usr/bin/java #删除原本主机上的Java程序
[root@localhost ~]# java -version
-bash: /usr/bin/java: 没有那个文件或目录
[root@localhost ~]# tar -zxf jdk-8u201-linux-x64.tar.gz 
[root@localhost ~]# mv jdk1.8.0_201/ /usr/local/java

能够让命令全局使用的方法:
1、制作软链接

ln  -s  /usr/local/java/bin/*   /usr/bin/

2、添加环境变量(通常情况我们使用第二种方法)

[root@localhost bin]# vim /etc/profile
#末尾添加
export JAVA_HOME=/usr/local/java
export JRE_HOME=/usr/local/java/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
#释义:
#export:声明一个变量
#jre   java  runtime   environment : java的运行环境
#class   java  依赖库文件
#path  环境变量
[root@localhost bin]# source /etc/profile
[root@localhost bin]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/java/bin:/usr/local/java/jre/bin
[root@localhost bin]# java -version
java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)

注:
自己添加的环境变量,只能针对当前的shell和其子shell,如果另打开一个shell环境则需要重新生效

安装tomcat

[root@localhost ~]# tar -zxf apache-tomcat-8.5.35.tar.gz 
[root@localhost ~]# mv apache-tomcat-8.5.35 /usr/local/tomcat
[root@localhost ~]# cd /usr/local/tomcat/
[root@localhost tomcat]# cd bin/
[root@localhost 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/java/jre
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
[root@localhost bin]# netstat -anput | grep java
tcp6       0      0 :::8080                 :::*                    LISTEN      58093/java          
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      58093/java          
tcp6       0      0 :::8009                 :::*                    LISTEN      58093/java

访问192.168.10.30:8080(本机ip)
在这里插入图片描述
tomcat软件目录结构功能
bin: 服务相关的脚本文件,可执行的文件,例如:关闭、开启脚本
conf:里面存放的是配置文件,xml结尾
lib:tomcat运行需要的依赖库文件
logs:运行的日志文件
webapps:web应用程序部署的目录,也就是站点根目录,页面是jsp或html结尾
work:存放着jsp编译后的class文件;class类文件也就是java程序编译后生成的文件

tomcat的多主机实例
虚拟主机,让一台主机可以运行多个tomcat

[root@localhost ~]# cp -r /usr/local/tomcat/ /usr/local/tomcat1
[root@localhost ~]# ls /usr/local/
bin  etc  games  include  java  lib  lib64  libexec  sbin  share  src  tomcat  tomcat1
[root@localhost ~]# cd /usr/local/tomcat1/conf/
[root@localhost conf]# vim server.xml
22 <Server port="8006" shutdown="SHUTDOWN">
69     <Connector port="8081" protocol="HTTP/1.1"
71                redirectPort="8444" />
116     <Connector port="8010" protocol="AJP/1.3" redirectPort="8444" />
[root@localhost conf]# cd ..
[root@localhost tomcat1]# ./bin/startup.sh 
Using CATALINA_BASE:   /usr/local/tomcat1
Using CATALINA_HOME:   /usr/local/tomcat1
Using CATALINA_TMPDIR: /usr/local/tomcat1/temp
Using JRE_HOME:        /usr/local/java/jre
Using CLASSPATH:       /usr/local/tomcat1/bin/bootstrap.jar:/usr/local/tomcat1/bin/tomcat-juli.jar
Tomcat started.
[root@localhost tomcat1]# netstat -anput | grep 8081
tcp6       0      0 :::8081                 :::*                    LISTEN      58441
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值