Étapes détaillées de l'installation et de l'optimisation du serveur Tomcat

Étapes détaillées de l'installation et de l'optimisation du serveur Tomcat

package d'installation de tomcat

One, Présentation de Tomcat

Le serveur Tomcat est un serveur d'applications Web gratuit et open source. Il s'agit d'un serveur d'applications léger. Il est couramment utilisé dans les systèmes de petite et moyenne taille et où il n'y a pas beaucoup d'utilisateurs simultanés. C'est le premier choix pour développer et déboguer des programmes JSP. De manière générale, bien que Tomcat soit le même que les serveurs Web Apache ou Nginx, il a pour fonction de traiter les pages HTML, mais comme sa capacité à traiter du HTML statique est bien inférieure à celle d'Apache ou Nginx, Tomcat est généralement utilisé comme un servlet et un conteneur JSP, fonctionnant séparément extrémité arrière.

Tomcat est composé d'une série de composants, dont trois composants principaux:
(1) Conteneur Web: complète la fonction d'un serveur Web.
(2) Conteneur de servlet: le nom est catalina, utilisé pour traiter le code de servlet.
(3) Conteneur JSP: utilisé pour traduire les pages Web dynamiques JSP en code Servlet.

Java Servlet est un programme exécuté sur un serveur Web ou un serveur d'applications. Il agit comme une couche intermédiaire entre une requête d'un navigateur Web ou d'un autre client HTTP et une base de données ou une application sur le serveur HTTP. À l'aide de Servlet, vous pouvez collecter les entrées utilisateur à partir de formulaires Web, présenter des enregistrements à partir de bases de données ou d'autres sources et créer des pages Web de manière dynamique. Similaire à la fonction CGI (Common Gateway Interface).

JSP signifie Java Server Pages, une technologie de développement Web dynamique. Il utilise des balises JSP pour insérer du code Java dans les pages HTML. Les balises commencent généralement par <% et se terminent par%>. JSP est un servlet Java, principalement utilisé pour implémenter la partie interface utilisateur d'une application Web Java. JSP obtient les données d'entrée utilisateur via des formulaires Web, accède aux bases de données et à d'autres sources de données, puis crée dynamiquement des pages Web

Deuxièmement, le déploiement du service Tomcat

1.关闭防火墙,将安装 Tomcat 所需软件包传到/opt目录下
jdk-8u201-linux-x64.rpm
apache-tomcat-9.0.16.tar.gz
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
2.安装JDK
cd /opt
rpm -qpl jdk-8u201-linux-x64.rpm 
rpm -ivh jdk-8u201-linux-x64.rpm 
java -version

3. Définissez les variables d'environnement JDK

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:$PATH
source /etc/profile.d/java.sh
java -version

Insérez la description de l'image iciInsérez la description de l'image ici
Insérez la description de l'image ici

---------------------------------conseils--------------- -------------------------------------------------- -
CLASSPATH: Lors de la compilation et de l'exécution d'un programme Java, JRE recherchera le fichier de classe requis (.class) dans le chemin spécifié par la variable.
dt.jar: C'est la bibliothèque de classes sur l'environnement d'exploitation, principalement le package swing.
tools.jar: Il s'agit principalement de la bibliothèque de classes de certains outils jdk, notamment javac, java, javap, javadoc, etc.
JDK: kit de développement java (outil de développement java)
JRE: environnement d'exécution java (environnement d'exécution java)
JVM: machine virtuak java (machine virtuelle java), afin que les programmes java puissent exécuter des fichiers de classe sur plusieurs plates-formes.

Ecrire un programme java

vim abc.java
public class abc {
    
    
  public static void main(String[] args){
    
    
    System.out.println("Hello world!");
  }
}
javac abc.java
java abc

Insérez la description de l'image ici
Insérez la description de l'image ici

4. Installez et démarrez Tomcat

cd /opt
tar zxvf apache-tomcat-9.0.16.tar.gz
mv apache-tomcat-9.0.16 /usr/local/tomcat
##启动tomcat ##
/usr/local/tomcat/bin/startup.sh 

或ln -s /usr/local/tomcat/bin/*.sh /usr/bin

可以直接使用startup.sh启动

netstat -natp | grep 8080
浏览器访问Tomcat的默认主页 http://192.168.126.10:8080

Insérez la description de l'image ici

5. Optimiser la vitesse de démarrage de tomcat La
première fois que vous commencez à consulter le journal, vous constaterez que Tomcat démarre très lentement. Par défaut, cela peut prendre des dizaines de secondes. Vous pouvez modifier le paramètre jdk pour le changer.
vim /usr/java/jdk1.8.0_201-amd64/jre/lib/security/java.security-line
117-modify
securerandom.source = fichier: / dev / urandom

停止:/usr/local/tomcat/bin/shutdown.sh或 shutdown.sh
启动:/usr/local/tomcat/bin/startup.sh 或 startup.sh
ll /usr/local/tomcat/

------ Description du catalogue principal ----------------------------------------- -------------------------------------------------- ---

●bin :存放启动和关闭 Tomcat 的脚本文件,比较常用的是 catalina.sh、startup.sh、shutdown.sh 三个文件
●conf :存放 Tomcat 服务器的各种配置文件,比较常用的是 server.xml、context.xml、tomcat-users.xml、web.xml 四个文件。
●lib :存放 Tomcat 服务器的 jar 包,一般不作任何改动,除非连接第三方服务,比如 redis,那就需要添加相对应的 jar 包
●logs :存放 Tomcat 日志
●temp :存放 Tomcat 运行时产生的文件
●webapps :存放项目资源的目录
●work :Tomcat 工作目录,一般清除 Tomcat 缓存的时候会使用到

Insérez la description de l'image ici
Insérez la description de l'image ici

Troisièmement, configuration de l'hôte virtuel Tomcat

Plusieurs fois, l'entreprise a plusieurs projets à exécuter, il est donc certainement impossible d'exécuter plusieurs services Tomcat sur un serveur, ce qui consommera trop de ressources système. À ce stade, vous devez utiliser l'hôte virtuel Tomcat. Par exemple, deux nouveaux noms de domaine, www.chenwei.com et www.mm.com sont maintenant ajoutés, et j'espère accéder à différents contenus de projet à travers ces deux noms de domaine.

1. Créez des répertoires et des fichiers de projet chenwei et mm

mkdir /usr/local/tomcat/webapps/chenwei
mkdir /usr/local/tomcat/webapps/mm
echo "My name is chenwei\!" > /usr/local/tomcat/webapps/chenwei/index.jsp
echo "My name is mm\!" > /usr/local/tomcat/webapps/mm/index.jsp

2. Modifiez le fichier de configuration principal Tomcat

vim /usr/local/tomcat/conf/server.xml
--165行前--插入
<Host name="www.chenwei.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
	<Context docBase="/usr/local/tomcat/webapps/kgc" path="" reloadable="true" />
</Host>

<Host name="www.mm.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
	<Context docBase="/usr/local/tomcat/webapps/benet" path="" reloadable="true" />
</Host>

Host name :主机名
appBase :Tomcat程序工作目录,相对路径为webapps,绝对路径为/usr/local/tomcat/webapps
unpackWARs :是否解压war包
autoDeploy :指示Tomcat运行时,如有新的WEB应用是否允许自动部署
xmlValidation :是否验证xml文件执行有效性检验的标志
xmlNamespaceAware :是否启用xml命名空间,设置该值与xmlValidation为true,表示对web.xml文件执行有效性检验

appBase :WEB应用的目录
path :设置访问的URI为WEB应用的根目录

reloadable :是否在程序有改动时重新载入
停止:/usr/local/tomcat/bin/shutdown.sh或 shutdown.sh
启动:/usr/local/tomcat/bin/startup.sh 或 startup.sh

Insérez la description de l'image ici

Insérez la description de l'image ici
Insérez la description de l'image ici

Quatrièmement, l'optimisation Tomcat

La configuration par défaut de l'installation par défaut de Tomcat n'est pas adaptée à l'environnement de production. Elle peut souvent sembler suspendue et doit être redémarrée. Ce n'est que grâce à des tests de stress et une optimisation continus qu'elle peut fonctionner de manière efficace et stable. L'optimisation comprend principalement trois aspects: l'optimisation du système d'exploitation (optimisation des paramètres du noyau), l'optimisation des paramètres du fichier de configuration Tomcat et le réglage de la machine virtuelle Java (JVM).

## Optimisation des paramètres du fichier de configuration Tomcat ## Les paramètres d'optimisation
couramment utilisés sont les suivants:
[maxThreads] Tomcat utilise des threads pour traiter chaque requête reçue. Cette valeur représente le nombre maximum de threads que Tomcat peut créer. La valeur par défaut est 200.

[MinSpareThreads] Le nombre minimum de threads inactifs, le nombre de threads initialisés au démarrage de Tomcat, signifie qu'il y a tellement de threads vides en attente même si personne ne l'utilise. La valeur par défaut est 10.

[MaxSpareThreads] Le nombre maximum de threads de réserve. Une fois que les threads créés dépassent cette valeur, Tomcat ferme les threads de socket qui ne sont plus nécessaires. La valeur par défaut est -1 (illimité). Généralement pas besoin d'être spécifié.

[URIEncoding] Spécifiez le format de codage d'URL du conteneur Tomcat. Le format de codage de langue n'est pas aussi facile à configurer que les autres logiciels de serveur Web et doit être spécifié séparément.

[ConnnectionTimeout] Délai d'expiration de la connexion réseau, unité: millisecondes, mis à 0 signifie ne jamais expirer, ce paramètre a des dangers cachés. La valeur par défaut est généralement de 20000 millisecondes.

[EnableLookups] S'il faut inverser la vérification du nom de domaine pour renvoyer le nom d'hôte de l'hôte distant, la valeur est: true ou false, s'il est défini sur false, il renverra directement l'adresse IP. Afin d'améliorer la capacité de traitement, il doit être défini sur false.

[DisableUploadTimeout] Indique s'il faut utiliser le mécanisme de délai d'expiration lors du téléchargement. Doit être défini sur true.

[ConnectionUploadTimeout] Délai de téléchargement. Après tout, le téléchargement de fichiers peut prendre plus de temps. Ce délai est ajusté en fonction des besoins de votre entreprise afin que le servlet dispose de plus de temps pour terminer son exécution. Il doit être utilisé conjointement avec le paramètre précédent Prendra effet.

[AcceptCount] Spécifie la longueur maximale de la file d'attente des demandes de connexion entrantes lorsque tous les threads disponibles pour le traitement des demandes sont utilisés. Les demandes dépassant ce nombre ne seront pas traitées. La valeur par défaut est 100.

[Compression] S'il faut effectuer une compression GZIP sur les données de réponse, off: signifie que la compression est interdite; on: signifie que la compression est autorisée (le texte sera compressé), forcer: signifie que la compression est effectuée dans tous les cas, la valeur par défaut est off, ce qui peut être efficace après les données compressées Pour réduire la taille de la page, elle peut généralement être réduite d'environ 1/3 pour économiser la bande passante.

[CompressionMinSize] indique la valeur minimale de la réponse compressée. Ce n'est que lorsque la taille du message de réponse est supérieure à cette valeur que le message sera compressé. Si la fonction de compression est activée, la valeur par défaut est 2048.

[CompressableMimeType] Type de compression, spécifiez les types de fichiers compressés.

[NoCompressionUserAgents = "gozilla, traviata"] Pour les navigateurs suivants, n'activez pas la compression

Vous trouverez ci-dessus quelques paramètres de configuration couramment utilisés, ainsi que de nombreux autres paramètres. Vous pouvez continuer à optimiser en profondeur. Pour les valeurs d'attribut de paramètre de HTTP Connector et AJP Connector, vous pouvez vous reporter à la description détaillée du document officiel pour en savoir plus.

vim /usr/local/tomcat/conf/server.xml
......
<Connector port="8080" protocol="HTTP/11.1" 
connectionTimeout="20000" 
redirectPort="8443" 
--71行--插入
minSpareThreads="50" 
enableLookups="false" 
disableUploadTimeout="true" 
acceptCount="300" 
maxThreads="500" 
processorCache="500"
URIEncoding="UTF-8" 
compression="on" 
compressionMinSize="2048" 
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain,image/gif,image /jpg,image/png"/>
processorCache="500"
URIEncoding="UTF-8" 
compression="on" 
compressionMinSize="2048" 
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain,image/gif,image /jpg,image/png"/>

Insérez la description de l'image ici

Je suppose que tu aimes

Origine blog.csdn.net/weixin_51573771/article/details/112687667
conseillé
Classement