当前位置: 首页 > news >正文

做美图网站有哪些东西吗数据库网站 建设方案

做美图网站有哪些东西吗,数据库网站 建设方案,网络空间 网站 域名,制作ppt的软件appTomcat概述 Tomcat 是 Java 语言开发的#xff0c;Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器#xff0c;是 Apache 软件基金会的 Jakarta 项目中的一个核心项目#xff0c;由 Apache、Sun 和其他一些公司及个人共同开发而成。在中小型系统和并发访问用户不是很…Tomcat概述 Tomcat 是 Java 语言开发的Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器是 Apache 软件基金会的 Jakarta 项目中的一个核心项目由 Apache、Sun 和其他一些公司及个人共同开发而成。在中小型系统和并发访问用户不是很多的场合下被普遍使用是开发和调试 JSP程序的首选。一般来说Tomcat 虽然和 Apache 或Nginx 这些 Web 服务器一样具有处理 HTML 页面的功能然而由于其处理静态 HTML 的能力远不及 Apache 或者 Nginx所以 Tomcat 通常是作为一个 Servlet 和 JSP 容器单独运行在后端执行动态请求和动态页面 Tomcat为开发源代码的web应用服务器基于Java代码开发 Tomcat就是处理动态请求和基于Java代码开发的页面 Tomcat可以在html当中写入Java代码tomcat可以解析html页面当中的Java执行动态请求处理动态页面 Tomcat的机制有问题不对Tomcat进行优化可能会出现假死、停机 在小集群、小服务、小应用的场景下适用Tomcat而大并发的场景不适用Tomcat Tomcat的优点 1、开源可二次封装免费 2、基于Java代码开发执行的可配置性较强可以根据需要进行自定义配置端口号虚拟主机 等 3、适用于小集群小服务小应用不适用于大并发 4、安全性本身自带安全机制可以配置用户认证授权加密传输         5、部署应用快捷tomcat会自动部署自动运行webapps Tomcat 核心组件 web容器 完成web服务器的功能即web应用 请求web——http(s)——访问页面——文件index.jsp 特点在web容器里封装了一组的文件进行集中化管理管理web的动态页面 servlet容器 处理servlet代码 名称catalina 1、就是来处理web请求http 2、生成动态内容的java类主要是为了和数据库进行交互 3、会话管理跟踪用户在不同请求之间的状态通过管理可以在用户访问不同页面时保持用户的状态 4、与数据库进行交互执行查询和更新操作 JSP 将动态页面翻译为servlet的代码用标准格式展示jsp的静态页面 java server pages 动态页面的开发技术使用jsp标签index.jsp 在html页面当中插入java代码 jsp容器——html页面当中的java代码翻译——执行——展示结果 Tomcat功能组件 connector负责对外接收和响应请求是tomcat与外界的交通枢纽监听端口也可以接收外界的请求交给contaiker处理 container负责对内处理业务逻辑 Engine:引擎管理虚拟机一个service可以管理多个虚拟机即一个service可以包含多个虚拟机一个server里面只能有一个engine Host:代表一个虚拟机也可以叫做站点 Context:web应用,包含多个servlet wrapper:封装器最底层每一个wrapper都封装一个servlet负责对象实例的创建执行销毁 这四个功能父子关系工作方式为从上到下 tomcat工作流程 1、用户在浏览器中输入网址请求被发送到本机端口 8080被在那里监听的 Connector 获得 2、Connector 把该请求交给它所在的 Service 的 EngineContainer来处理并等待 Engine 的回应 3、请求在 Engine、Host、Context 和 Wrapper 这四个容器之间层层调用最后在 Servlet 中执行对应的业务逻辑、数据存储等。 4、执行完之后的请求响应在 Context、Host、Engine 容器之间层层返回最后返回给 Connector并通过 Connector 返回给客户端。 JVM优化优化内存池 catalina.sh就是servlet代码 容器的配置 JAVA_OPTS$JAVA_OPTS -server -Xms2048m -Xmx2048m -Xmn768m -XX:ParallelGCThreads2 -XX:PermSize1024m -XX:MaxPermSize1024m -Djava.awt.headlesstrue -XX:DisableExplicitGC  -server第一个参数指定内存池一定放在第一个。-Xms2048m初始java堆的大小。分配JVM的最小内存看cpu:cpu性能高这个值可以设高一点-Xmx2048mJAVA堆最大能多大jvm的最大内存。和硬件内存挂钩。根据官方文档起始值和最大值保持一致。XMS和XMX设为一样的内存可以设为物理内存的一般。-Xmn768m新生代的内存大小。官方推荐为了整个堆大小的3/8.-XX:ParallelGCThreads2配置并行收集器的线程数同时可以有多少个线程进行垃圾回收。-XX:PermSize设置持久代内存的大小默认是物理内存的1/4。-XX:MaxPermSize1024m最大的非堆内存的大小默认也是物理内存的1/4-XX:PermSize1024m -XX:MaxPermSize1024m 非堆内存是不会被垃圾回收机制处理的-XX:PermSize持久代内存与最大非堆内存不能超出操作系统可用的内存。设置成一样大可以减轻伸缩堆大小的压力。-Djava.awt.headlesstrue避免在linux环境下web不能正常打开以正常显示图片。-XX:DisableExplicitGC 避免jvm空间大起大落影响系统的响应时间。响应速度会很慢。 堆区 堆区当中新生代、中生代、老年代 每个新建的对象占用的空间就是新生代 ⬇ Java垃圾回收机制对堆区会进行资源回收 新生代中没有被回收的资源就是中生代 中生代中没有被回收的资源就是老年代 JVM大小组成新生代中生代老年代永久代         启动进度优化 jdk的参数 vim /usr/java/jdk1.8.0_201-amd64/jre/lib/security/java.security 修改原行的内容 117 #securerandom.sourcefile:/dev/random 118 securerandom.sourcefile:/dev/urandomTomcat 配置文件参数优化 常用的优化相关参数如下 vim /usr/local/tomcat/conf/server.xml ...... Connector port8080 protocolHTTP/1.1 connectionTimeout20000 redirectPort8443 --71行--插入 minSpareThreads50 enableLookupsfalse disableUploadTimeouttrue acceptCount300 maxThreads500 processorCache500 URIEncodingUTF-8 compressionon compressionMinSize2048 compressableMimeTypetext/html,text/xml,text/javascript,text/css,text/plain,image/gif,image /jpg,image/png/ 【redirectPort】如果某连接器支持的协议是HTTP当接收客户端发来的HTTPS请求时则转发至此属性定义的端口。 【maxThreads】Tomcat使用线程来处理接收的每个请求这个值表示Tomcat可创建的最大的线程数即支持的最大并发连接数默认值是 200。 【minSpareThreads】最小空闲线程数Tomcat 启动时的初始化的线程数表示即使没有人使用也开这么多空线程等待默认值是 10。 【maxSpareThreads】最大备用线程数一旦创建的线程超过这个值Tomcat就会关闭不再需要的socket线程。默认值是-1无限制。一般不需要指定。 【URIEncoding】指定 Tomcat 容器的 URL 编码格式语言编码格式这块倒不如其它 Web服务器软件配置方便需要分别指定。 【connnectionTimeout】网络连接超时单位毫秒设置为 0 表示永不超时这样设置有隐患的。通常默认 20000 毫秒就可以。 【enableLookups】是否反查域名以返回远程主机的主机名取值为true 或 false如果设置为 false则直接返回 IP 地址为了提高处理能力应设置为 false。 【disableUploadTimeout】上传时是否使用超时机制。应设置为 true。 【connectionUploadTimeout】上传超时时间毕竟文件上传可能需要消耗更多的时间这个根据你自己的业务需要自己调以使Servlet有较长的时间来完成它的执行需要与上一个参数一起配合使用才会生效。 【acceptCount】指定当所有可以使用的处理请求的线程数都被使用时可传入连接请求的最大队列长度超过这个数的请求将不予处理默认为 100 个。 【compression】是否对响应的数据进行GZIP压缩off表示禁止压缩on表示允许压缩文本将被压缩、force表示所有情况下都进行压缩默认值为 off压缩数据后可以有效的减少页面的大小一般可以减小 1/3 左右节省带宽。 【compressionMinSize】表示压缩响应的最小值只有当响应报文大小大于这个值的时候才会对报文进行压缩如果开启了压缩功能默认值就是 2048。 【compressableMimeType】压缩类型指定对哪些类型的文件进行数据压缩。 【noCompressionUserAgentsgozilla, traviata】对于以下的浏览器不启用压缩 MIMEMultipurpose Internet Mail Extensions的意思是“多用途互联网邮件扩展”。 它是一种用于指示在互联网上发送或存储在计算机上的文件或文档的性质和格式的标准。 MIME类型用于指定浏览器和其他互联网应用程序应如何处理文件。 常见的MIME类型 文本 text/plain、text/html、text/css、text/javascript 图像 image/jpeg、image/png、image/gif 音频 audio/mpeg、audio/ogg、audio/wav 视频 video/mp4、video/webm、video/quicktime 应用程序 application/pdf、application/json、application/xml MIME类型在确保互联网上的不同类型文件被软件和应用程序正确解释和处理方面发挥着关键作用 内核优化  Linux内核优化中主要针对两个配置文件   /etc/security/limits.conf 和/etc/sysctl.conf  通常是利用调用内核参数的程序sysctl -a 查询出最优内核参数然后写入 /etc/sysctl.conf 文件内的。 [rootlocalhost opt]# sysctl -a |grep fs.file-max fs.file-max 197221     #查询出的文件句柄数量上限。 sysctl: reading key net.ipv6.conf.all.stable_secret sysctl: reading key net.ipv6.conf.default.stable_secret sysctl: reading key net.ipv6.conf.ens33.stable_secret sysctl: reading key net.ipv6.conf.lo.stable_secret sysctl: reading key net.ipv6.conf.virbr0.stable_secret sysctl: reading key net.ipv6.conf.virbr0-nic.stable_secret 文件句柄File Handle是操作系统用于跟踪和管理打开的文件或资源的数据结构。 在操作系统中每个打开的文件、网络连接、设备等都会被分配一个唯一的句柄 操作系统通过这个句柄来标识和访问这些资源。 句柄数是指操作系统能够同时管理的句柄的数量。在一个计算机系统中 许多应用程序和进程需要打开和使用文件、网络连接等资源。每个资源都需要一个句柄来进行操作。 如果系统的句柄数限制太低就可能导致应用程序无法打开足够的文件、网络连接或其他资源 从而影响系统的性能和可用性。 因此调整句柄数的设置是确保系统能够处理并发连接和资源请求的重要一环。 在高负载的服务器环境中适当地增加句柄数的限制可以提高系统的并发能力和性能。 但是过于激进地增加句柄数可能会消耗过多的系统资源因此需要根据实际需求和硬件配置进行调整。 永久配置 注意设置保存后需要重新ssh连接才会看到配置更改的变化 vim  /etc/security/limits.conf # 65535 为Linux系统最大打开文件数 * soft nproc 65535  * hard nproc 65535  * soft nofile 65535  * hard nofile 65535 * soft nproc 65535 最大进程数软限制为 65535即可以使用 ulimit -u 命令查看和修改的值。 * hard nproc 65535 最大进程数硬限制为 65535即最大可分配的进程数。 * soft nofile 65535最大打开文件数软限制为 65535即可以使用 ulimit -n 命令查看和修改的值。 * hard nofile 65535最大打开文件数硬限制为 65535即最大可分配的文件数。 这里使用的通配符 * 表示对所有用户生效。 其他调试内核参数的查看 sysctl -a kernel.sysrq 0: 禁用了内核的SysRq功能SysRq允许在系统崩溃或出现问题时执行一些调试操作。 kernel.core_uses_pid 1: 设置核心转储文件名中包含进程ID有助于标识是哪个进程导致了核心转储。 kernel.msgmnb 和 kernel.msgmax: 增加IPC消息队列的默认和最大大小用于进程间通信。 kernel.shmmax 和 kernel.shmall: 调整共享内存的最大大小和分配页面数。 net.ipv4.ip_forward 0: 禁用IP数据包的转发功能通常用于不充当路由器的系统。 net.ipv4.conf.default.rp_filter 和 net.ipv4.conf.all.rp_filter: 控制反向路径过滤提高网络安全性。 net.ipv4.icmp_echo_ignore_all: 允许或禁止系统响应ping请求。 net.ipv4.icmp_echo_ignore_broadcasts: 禁止系统对广播和多播地址的ICMP回显和时间戳请求作出响应。 net.ipv4.conf.default.accept_source_route: 不接受源路由增加网络安全性。 net.ipv4.tcp_syncookies 1: 启用SYN Cookies保护系统免受TCP SYN 攻击。 net.ipv4.tcp_max_tw_buckets 6000: 设置允许的TIME_WAIT套接字最大数量避免服务器性能下降。 net.ipv4.tcp_sack 1: 启用有选择的应答SACK来提高TCP性能。 net.ipv4.tcp_window_scaling 1: 启用TCP窗口缩放功能允许大窗口的TCP传输。 net.ipv4.tcp_rmem, net.ipv4.tcp_wmem: 调整TCP套接字读取和写入缓冲区大小。 net.ipv4.tcp_mem: 设置TCP缓冲区的最小、默认和最大值。 net.core.wmem_default, net.core.rmem_default, net.core.rmem_max, net.core.wmem_max: 调整网络核心缓冲区的大小。 net.core.netdev_max_backlog: 控制网络接口接收数据包的排队队列大小。 net.ipv4.tcp_max_orphans: 设置系统允许的孤立TCP连接最大数量。 net.ipv4.tcp_max_syn_backlog: 控制系统允许的三次握手队列长度。 net.ipv4.tcp_synack_retries 和 net.ipv4.tcp_syn_retries: 设置SYN-ACK和SYN请求的重试次数。 net.ipv4.tcp_tw_recycle 和 net.ipv4.tcp_tw_reuse: 启用TIME_WAIT套接字快速回收和重用。 net.ipv4.tcp_fin_timeout: 设置TCP连接FIN关闭连接的超时时间。 net.ipv4.tcp_keepalive_time: 设置TCP keepalive探测包发送频率以检测连接状态。 net.ipv4.ip_local_port_range: 设置本地端口范围用于分配本地应用程序端口。 net.ipv6.conf.all.disable_ipv6 和 net.ipv6.conf.default.disable_ipv6: 禁用IPv6。 net.netfilter.nf_conntrack_max 和其他 net.netfilter.nf_conntrack_*: 控制连接跟踪和防火墙相关设置。 net.nf_conntrack_max: 设置最大连接跟踪项数。 vm.overcommit_memory 0: 控制内存超额分配策略避免OOM killer杀掉进程。 vm.swappiness 0: 设置内存交换行为降低内存交换。 fs.file-max 999999: 设置进程可以同时打开的最大文件句柄数。 net.ipv4.tcp_max_tw_buckets 6000: 设置操作系统允许的TIME_WAIT套接字最大数量。 net.ipv4.ip_local_port_range 1024 65000: 设置系统允许的本地端口范围。 net.ipv4.tcp_tw_recycle 1: 启用TIME_WAIT套接字快速回收。 net.ipv4.tcp_tw_reuse 1: 允许TIME-WAIT套接字重用。 net.ipv4.tcp_syncookies 1: 启用SYN Cookies防止TCP SYN 攻击。 net.core.somaxconn 40960: 设置最大监听队列长度用于控制最大并发连接数。 net.core.netdev_max_backlog 262144: 设置每个网络接口接收数据包队列的最大大小。 net.ipv4.tcp_max_syn_backlog 262144: 设置接受SYN请求队列的最大长度。 net.ipv4.tcp_rmem, net.ipv4.tcp_wmem: 设置TCP套接字读取和写入缓冲区的最小、默认和最大大小。 net.core.rmem_default, net.core.wmem_default, net.core.rmem_max, net.core.wmem_max: 设置内核套接字接收和发送缓冲区大小。 net.ipv4.tcp_syncookies 1: 设置启用SYN Cookies用于解决TCP SYN 攻击。   Tomcat 服务部署 1、关闭防火墙将安装 Tomcat 所需软件包传到/opt目录下 [rootlocalhost apps]# systemctl stop firewalld [rootlocalhost apps]# systemctl disable firewalld [rootlocalhost apps]# setenforce 0[rootlocalhost apps]# ls apache-tomcat-9.0.16.tar.gz jdk-8u201-linux-x64.rpm 2、安装JDK [rootlocalhost apps]# cd /opt/apps[rootlocalhost apps]# rpm -ivh jdk-8u201-linux-x64.rpm warning: jdk-8u201-linux-x64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY Preparing... ################################# [100%] Updating / installing...1:jdk1.8-2000:1.8.0_201-fcs ################################# [100%] Unpacking JAR files...tools.jar...plugin.jar...javaws.jar...deploy.jar...rt.jar...jsse.jar...charsets.jar...localedata.jar...[rootlocalhost apps]# java -version openjdk version 1.8.0_181 OpenJDK Runtime Environment (build 1.8.0_181-b13) OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)#设置JDK环境变量 [rootlocalhost apps]# vim /etc/profile.d/java.sh #添加 export JAVA_HOME/usr/java/jdk1.8.0_201-amd64 export CLASSPATH.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar export PATH$JAVA_HOME/bin:$PATHexport JAVA_HOME/usr/java/jdk1.8.0_201-amd64:这个命令设置了一个名为JAVA_HOME的环境变量它指向Java JDK的安装路径。这对于告诉系统和其他应用程序Java的安装位置非常重要。你需要将路径替换为你实际安装Java的路 径。export CLASSPATH.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:这个命令设置了一个名为CLASSPATH的环境变量它用于指定Java类的搜索路径。在这个命令中.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar 表示当前目录.以及Java工具库tools.jar和Java远程调试库dt.jar的路径。这些库通常包含一些Java开发所需的类。export PATH$JAVA_HOME/bin:$PATH:这个命令将Java可执行文件的路径添加到系统的PATH环境变量中。这使得你可以在终端中直接运行Java工具而不需要输入完整的路径。这将Java的bin目录添加到了PATH中使得java、javac等命令可以直接运行。[rootlocalhost apps]# source /etc/profile.d/java.sh [rootlocalhost apps]# 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) 3.设置JDK环境变量 #设置JDK环境变量 [rootlocalhost apps]# vim /etc/profile.d/java.sh #添加 export JAVA_HOME/usr/java/jdk1.8.0_201-amd64 export CLASSPATH.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar export PATH$JAVA_HOME/bin:$PATHexport JAVA_HOME/usr/java/jdk1.8.0_201-amd64:这个命令设置了一个名为JAVA_HOME的环境变量它指向Java JDK的安装路径。这对于告诉系统和其他应用程序Java的安装位置非常重要。你需要将路径替换为你实际安装Java的路 径。export CLASSPATH.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:这个命令设置了一个名为CLASSPATH的环境变量它用于指定Java类的搜索路径。在这个命令中.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar 表示当前目录.以及Java工具库tools.jar和Java远程调试库dt.jar的路径。这些库通常包含一些Java开发所需的类。export PATH$JAVA_HOME/bin:$PATH:这个命令将Java可执行文件的路径添加到系统的PATH环境变量中。这使得你可以在终端中直接运行Java工具而不需要输入完整的路径。这将Java的bin目录添加到了PATH中使得java、javac等命令可以直接运行。[rootlocalhost apps]# source /etc/profile.d/java.sh [rootlocalhost apps]# 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)注 CLASSPATH编译、运行Java程序时JRE会去该变量指定的路径中搜索所需的类.class文件。 dt.jar是关于运行环境的类库主要是可视化的 swing 的包。 tools.jar主要是一些jdk工具的类库包括javac、java、javapjdk自带的一个反编译工具、javadoc等。 JDK (Java Development Kit)JDK是Java开发工具包它是用于开发Java应用程序的软件包。 JDK包括了编译器javac、调试器、各种工具、Java标准类库Java API、以及Java文档等。 JDK是开发者用来创建、编译和运行Java应用程序的重要组件。JRE (Java Runtime Environment)JRE是Java运行时环境它是用于执行Java应用程序的部分。 JRE包括了Java虚拟机JVM以及Java类库Java API这使得用户能够在计算机上运行已编译的Java程序 而不需要进行开发。JRE是终端用户需要安装的部分以便能够运行Java应用程序。JVM (Java Virtual Machine)JVM是Java虚拟机它是Java应用程序在计算机上运行的核心组件。 JVM负责将编译后的Java字节码.class文件解释或编译成本地机器码以便计算机能够执行它。 JVM提供了内存管理、垃圾回收、线程管理等功能以确保Java程序在不同平台上具有相似的行为。 首先使用文本工具编写java源代码比如 Hello.java 在命令行中输入命令javac Hello.java对源代码进行编译生成 class 字节码文件 编译完成后如果没有报错信息输入命令java Hello运行 class 字节码文件由 JVM 对字节码进行解释和运行 打印 “Hello World”。[rootlocalhost apps]# vim Hello.javapublic class Hello { public static void main(String[] args){System.out.println(Hello world!);} }[rootlocalhost apps]# javac Hello.java Hello world! [rootlocalhost apps]# java Hello.java Hello world!public: 这是一个访问修饰符表示类是公共的可以从其他地方访问。 class: 关键字用于定义一个类。 Hello: 这是类的名称这里是一个叫做 Hello 的类。public static void main(String[] args){ public: 访问修饰符表示这个方法是公共的可以从其他地方访问。 static: 静态修饰符表示这个方法属于类而不是实例可以通过类名直接调用。 void: 这是方法的返回类型void 表示方法没有返回值。 main: 这是方法的名称是程序的入口点当程序运行时会从这里开始执行。 (String[] args): 这是方法的参数列表args 是一个字符串数组可以在命令行传递参数给程序。System.out.println(Hello world!); System.out: System 是一个类out 是这个类的一个静态成员它代表标准输出流。 println: 这是输出方法的名称它会在控制台输出一行内容。 Hello world!: 这是要输出的内容是一个字符串。 4.安装启动Tomcat [rootlocalhost apps]# ls apache-tomcat-9.0.16.tar.gz jdk-8u201-linux-x64.rpm nginx-1.22.0 nginx-1.22.0.tar.gz [rootlocalhost apps]# tar -xf apache-tomcat-9.0.16.tar.gz [rootlocalhost apps]# mv apache-tomcat-9.0.16 /usr/local/tomcat#启动tomcat #后台启动 /usr/local/tomcat/bin/startup.sh 或 /usr/local/tomcat/bin/catalina.sh start[rootlocalhost apps]# /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/java/jdk1.8.0_201-amd64 Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Tomcat started.#前台启动 /usr/local/tomcat/bin/catalina.sh run [rootlocalhost apps]# /usr/local/tomcat/bin/catalina.sh run ……………………[rootlocalhost apps]# netstat -natp | grep 8080 tcp6 0 0 :::8080 :::* LISTEN 45900/java 浏览器访问Tomcat的默认主页Tomcat 虚拟主机配置 1.创建 aaa 和 bbb 项目目录和文件 [rootlocalhost apps]# mkdir /usr/local/tomcat/webapps/aaa [rootlocalhost apps]# mkdir /usr/local/tomcat/webapps/bbb[rootlocalhost apps]# echo This is aaa page\! /usr/local/tomcat/webapps/aaa/index.jsp [rootlocalhost apps]# echo This is bbb page\! /usr/local/tomcat/webapps/bbb/index.jsp2.修改 Tomcat 主配置文件 server.xml vim /usr/local/tomcat/conf/server.xml --165行前--插入 Host namewww.aaa.com appBasewebapps unpackWARstrue autoDeploytrue xmlValidationfalse xmlNamespaceAwarefalseContext docBase/usr/local/tomcat/webapps/aaa path reloadabletrue / /Host Host namewww.bbb.com appBasewebapps unpackWARstrue autoDeploytrue xmlValidationfalse xmlNamespaceAwarefalseContext docBase/usr/local/tomcat/webapps/bbb path reloadabletrue / /Host---------------------------------------------------------------------------------------------------------- Host name主机名 appBaseTomcat程序工作目录即存放web应用程序的目录相对路径为webapps绝对路径为 /usr/local/tomcat/webapps unpackWARs在启用此webapps时是否对WAR格式的归档文件先进行展开默认为true autoDeploy在Tomcat处于运行状态时放置于appBase目录中的应用程序文件是否自动进行deploy默认为true xmlValidation是否验证xml文件执行有效性检验的标志 xmlNamespaceAware是否启用xml命名空间设置该值与xmlValidation为true表示对web.xml文件执行有效性检验docBase相应的Web应用程序的存放位置也可以使用相对路径起始路径为此Context所属Host中appBase定义的路径 path相对于Web服务器根路径而言的URI如果为空“”则表示为此webapp的根路径 / reloadable是否允许重新加载此context相关的Web应用程序的类默认为false[rootlocalhost apps]# vim /usr/local/tomcat/conf/server.xml165 Host namewww.aaa.com appBasewebapps unpackWARstrue autoDeploytrue xmlValidationfalse xmlNamespaceAwarefalse 166 Context docBase/usr/local/tomcat/webapps/aaa path reloadabletrue / 167 /Host 168 169 Host namewww.bbb.com appBasewebapps unpackWARstrue autoDeploytrue xmlValidationfalse xmlNamespaceAwarefalse 170 Context docBase/usr/local/tomcat/webapps/bbb path reloadabletrue / 171 /Host重启Tomcat 执行以下目录的文件 /usr/local/tomcat/bin/shutdown.sh /usr/local/tomcat/bin/startup.sh[rootlocalhost apps]# cd /usr/local/tomcat/bin[rootlocalhost bin]# ./shutdown.sh Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr/java/jdk1.8.0_201-amd64 Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar [rootlocalhost 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/java/jdk1.8.0_201-amd64 Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Tomcat started.3.客户端浏览器访问验证 [rootlocalhost bin]# echo 20.0.0.100 www.aaa.com www.bbb.com /etc/hosts浏览器访问 http://www.aaa.com:8080/ 页面显示This is aaa page\! 浏览器访问 http://www.bbb.com:8080/ 页面显示This is bbb page\!注 HTTP 请求过程 1Connector 连接器监听的端口是 8080。由于请求的端口和监听的端口一致连接器接受了该请求。 2因为引擎的默认虚拟主机是 www.kgc.com并且虚拟主机的目录是webapps。 所以请求找到了 tomcat/webapps 目录。 3访问的路径为根路径URI 为空即空是 Web 程序的应用名也就是 context。 此时请求找到 /usr/local/tomcat/webapps/kgc 目录解析 index.jsp 并返回。 Tomcat 优化 Tomcat默认安装下的缺省配置并不适合生产环境它可能会频繁出现假死现象需要重启 只有通过不断压测优化才能让它最高效率稳定的运行。 优化主要包括三方面分别为操作系统优化内核参数优化Tomcat配置文件参数优化Java虚拟机JVM调优。[rootlocalhost aaa]# vim /usr/local/tomcat/conf/server.xml69 Connector port8080 protocolHTTP/1.170 connectionTimeout2000071 redirectPort844372 minSpareThreads50 73 enableLookupsfalse 74 disableUploadTimeouttrue 75 acceptCount300 76 maxThreads500 77 processorCache50078 URIEncodingUTF-8 79 compressionon 80 compressionMinSize2048 81 compressableMimeTypetext/html,text/xml,text/javascript,text/css,text/plain,image/gif,image /jpg,image/png/#重启Tomcat #执行以下目录的文件 /usr/local/tomcat/bin/shutdown.sh /usr/local/tomcat/bin/startup.sh[rootlocalhost apps]# cd /usr/local/tomcat/bin[rootlocalhost bin]# ./shutdown.sh Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr/java/jdk1.8.0_201-amd64 Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar [rootlocalhost 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/java/jdk1.8.0_201-amd64 Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Tomcat started.
http://www.pierceye.com/news/39501/

相关文章:

  • 沈阳核工业建设工程总公司网站珠海网站建设q.479185700強
  • 公司做网站报价网站转化率分析工具
  • 石家庄建设网站公司哪家好wordpress网站制作价格
  • 网站建设一般需要多少费用有没有专业做网站架构图的软件
  • 网站怎样做优化调整北京外包公司排行榜
  • wordpress软件站网站开发的形式有
  • 网站是空间备案上海市公共招聘网官网
  • 购物网站建设所需软件做网站发布
  • 网站建设公司愿景先做网页设计还是先弄网站
  • 聊城网站建设信息做游戏网站的目地
  • 绿色食品网站建设可行性网络销售型网站有哪些内容
  • 手机网站格式商城吉林电商的网络推广
  • 购物网站的图片轮播怎么做医疗器械类网站icp备案前置审批
  • 网站logo制作教程关掉自己做的网站
  • 河北专业网站制作少儿图书销售网站开发背景
  • 企业网站的宣传功能体现在()企业如何注册自己的网站
  • 网站开发人员应具备什么素质防火门 东莞网站建设
  • 上海人才中心网站网站建设栏目管理
  • 做网站收费标准点击量汕头cms建站
  • 医院为什么要做门户网站建设网站程序模块
  • 常州网站建设技术外包公众号怎么制作左右滑动图片
  • 广告设计工资高吗广州网站建设优化
  • 网上商城建网站网站界面设计总结
  • 安徽汽车网网站建设小白怎么做淘宝客网站
  • 网站建设推广费计入什么科目原材料价格查询网站
  • 益阳网站建设绍兴网站建设制作
  • 手机seo网站推广建设银网官方网站
  • 看车二手车网站源码深圳市国外网站建设
  • 宁波做亚马逊网站个体户网站备案
  • 嘉兴优化网站哪家好北京工装装修公司排名前十