Maison >类库下载 >java类库 >Qu'est-ce qu'un cluster Tomcat ? Introduction au cluster Tomcat

Qu'est-ce qu'un cluster Tomcat ? Introduction au cluster Tomcat

青灯夜游
青灯夜游avant
2018-10-27 17:59:416222parcourir

Le contenu de cet article est : Qu'est-ce qu'un cluster Tomcat ? Introduction au cluster Tomcat. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il vous sera utile.

Qu'est-ce qu'un cluster Tomcat ?

Utilisez nginx pour décharger les requêtes et allouer les requêtes à différents Tomcats pour traitement, réduisant ainsi la charge de chaque Tomcat et améliorant la vitesse de réponse du serveur.

Objectif

Pour obtenir un cluster Tomcat d'équilibrage de charge hautes performances.

Outils

nginx-1.13.10

apache-tomcat-7.0.81

Étapes de mise en œuvre

1. Téléchargez nginx.

2. Décompressez deux tomcats et nommez-les respectivement apache-tomcat-7.0.81-1 et apache-tomcat-7.0.81-2.

3. Modifiez les deux ports de démarrage Tomcat en 8080 et 8181 respectivement.

4. Modifiez les deux pages index.jsp par défaut de Tomcat pour distinguer les différents Tomcats.

5. Démarrez deux matous en même temps et accédez au test.

6. Configurez nginx et ouvrez nginx-1.13.10/conf/nginx.conf.

Configurez comme suit :

worker_processes  1;   #工作进程的个数,一般与计算机的cpu核数一致

events {
    worker_connections  1024;   #单个进程最大连接数(最大连接数=连接数*进程数)
}


http {
    include       mime.types;   #文件扩展名与文件类型映射表
    default_type  application/octet-stream;   #默认文件类型

    sendfile        on;   #开启高效文件传输模式,普通应用设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置为off。

    keepalive_timeout  65;   #长连接超时时间,单位是秒

    gzip  on;   #启用Gizp压缩

    #tomcat集群
    upstream  myapp {   #tomcat集群名称 
        server    localhost:8080;   #tomcat1配置
        server    localhost:8181;   #tomcat2配置
    }   

    #nginx的配置
    server {
        listen       9090;   #监听端口,默认80
        server_name  localhost;   #当前nginx域名

        location / {
            proxy_pass http://myapp;
            proxy_redirect default;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

Configuration du noyau :

Commande 7.dos pour démarrer nginx.

8. Pour tester, visitez http://localhost:9090.

Jusqu'à présent, nous avons implémenté un cluster Tomcat à charge équilibrée en utilisant nginx.

Stratégie d'équilibrage de charge nginx :

1. Polling (par défaut)

Chaque requête est affectée à un serveur backend différent, une par une, dans l'ordre chronologique. , si le serveur backend tombe en panne, il peut être automatiquement éliminé.

upstream backserver { 
server 192.168.0.14; 
server 192.168.0.15; 
}

2. Spécifiez le poids

Spécifiez la probabilité d'interrogation. Le poids est proportionnel au taux d'accès et est utilisé lorsque les performances du serveur back-end sont inégales.

upstream backserver { 
server 192.168.0.14 weight=10; 
server 192.168.0.15 weight=10; 
}

3. Liaison IP ip_hash

Chaque requête est allouée en fonction du résultat de hachage de l'IP accédée, afin que chaque visiteur ait un accès fixe à un serveur back-end, qui peut résoudre le problème de la session.

upstream backserver { 
ip_hash; 
server 192.168.0.14:88; 
server 192.168.0.15:80; 
}

4. équitable (tiers)

Attribuez les demandes en fonction du temps de réponse du serveur backend, et celles avec des temps de réponse courts seront attribuées en premier.

upstream backserver { 
server server1; 
server server2; 
fair; 
}

5. url_hash (tiers)

Distribuez les requêtes en fonction du résultat de hachage de l'URL consultée, afin que chaque URL soit dirigée vers le même serveur back-end. le serveur back-end est mis en cache Plus efficace.

upstream backserver { 
server squid1:3128; 
server squid2:3128; 
hash $request_uri; 
hash_method crc32; 
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer