Apache+Tomcat+Memcached共享Session的构架设计
网站集群部署解决方案 一、???????方案目标 实现互动留言系统、后台发布系统的高可用性,有效解决高并发量对单台应用服务器的冲击,确保应用服务器单点故障不影响系统正常运行。 二、???????部署架构 采取Tomcat集群的部署方式,Apache通过proxy_module代理
网站集群部署解决方案
一、???????方案目标
实现互动留言系统、后台发布系统的高可用性,有效解决高并发量对单台应用服务器的冲击,确保应用服务器单点故障不影响系统正常运行。
二、???????部署架构
采取Tomcat集群的部署方式,Apache通过proxy_module代理方式对用户的请求进行负载均衡,转发至tomcat集群中的某一实例进行处理,tomcat集群之间通过Memcached高性能缓存集群共享持久Session。具体结构如下图:
三、???????完整解决方案
1、????????各服务器所需安装软件列表:
序号 |
角色 |
IP地址 |
所需软件 |
1 |
Apache生产服务器 |
10.10.19.1 |
Apache HTTP Server2.2*( proxy_module、proxy_http_module\proxy_balancer_module\ proxy_ajp_module模块) |
2 |
Tomcat互动留言服务器NO.1 |
10.10.19.2 |
Tomcat 7.0.*,TOMCAT_HOMT/lib下的jar包: memcached-session-manager-x.y.z.jar, 下载地址 memcached-session-manager-tc7-x.y.z.jar, (或memcached-session-manager-tc6-x.y.z.jar) spymemcached-x.y.z.jar, 下载地址 kryo-1.04.jar、kryo-serializers-0.10.jar、asm-3.2.jar、minlog-1.2.jar、msm-kryo-serializer-1.6.3.jar、reflectasm-1.01.jar (kryo-serializer:? msm-kryo-serializer,? kryo-serializers-0.10?(0.10 is needed, as 0.20+ is for kryo2),? kryo,? minlog,? reflectasm,? asm-3.2) |
3 |
Tomcat互动留言服务器NO.1 |
10.10.19.3 |
同上 |
4 |
生产服务器NO.1 |
10.10.19.4 |
Apache HTTP Server 2.2*(预览站点时使用) 其他同上 |
5 |
生产服务器NO.2 |
10.10.19.5 |
除Apache HTTP Server 2.2*外,其他同上 |
6 |
Memcached缓存服务器NO.1 |
10.10.19.6 |
libevent-2.0.21-stable(安装memcached时需要)和memcached1.4.15 |
7 |
Memcached缓存服务器NO.2 |
10.10.19.7 |
同上 |
8 |
数据库服务器 |
10.10.18.3 |
SQL Server 2008 R2 |
2、????????安装步骤:
1)编译安装Apache2.2*,除网站必须使用的模块外,加入proxy_module、proxy_http_module\proxy_balancer_module\
proxy_ajp_module模块。按如下方式配置Apache对jsp页面的请求进行负载均衡:
l? 发布服务器:
LoadModule proxy_module modules/mod_proxy.so
?
LoadModule proxy_http_modulemodules/mod_proxy_http.so
?
LoadModule proxy_balancer_modulemodules/mod_proxy_balancer.so
?
LoadModuleproxy_ajp_module??modules/mod_proxy_ajp.so
???BalancerMember ajp://10.10.19.2:8009 route=jvm1
???BalancerMember ajp://10.10.19.3:8009 route=jvm2
ProxyPass/ balancer://cluster/ stickysession=JSESSIONID|jsessionid
l? 生产服务器NO.1:
LoadModule proxy_module modules/mod_proxy.so
?
LoadModule proxy_http_module modules/mod_proxy_http.so
?
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
?
LoadModule proxy_ajp_module??modules/mod_proxy_ajp.so
??? BalancerMember ajp://10.10.19.4:8009route=jvm3
??? BalancerMember ajp://10.10.19.5:8009route=jvm4
ProxyPass / balancer://cluster/ stickysession=JSESSIONID|jsessionid
2)编译安装Memcached
注意,安装Memcached需要首先安装libevent-2.0.21-stable
启动Memcached:
memcached -d -m 4096 -l localhost -p 11211-u root
给出memcached启动命令参数详解.
-d选项是启动一个守护进程,
-m是分配给Memcache使用的内存数量,单位是MB,我这里是10MB,
-u是运行Memcache的用户,我这里是root,
-l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址192.168.0.200,
-p是设置Memcache监听的端口,我这里设置了12000,最好是1024以上的端口,
-c选项是最大运行的并发连接数,默认是1024,我这里设置了256,按照你服务器的负载量来设定,
-P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid,
-p 使用的TCP端口。默认为11211
-m 最大内存大小。默认为64M
-vv 用very vrebose模式启动,调试信息和错误输出到控制台
-d 作为daemon在后台启动
3)安装Java环境和Tomcat7.*。
将下载完成的9个jar包放入 TOMCAT_HOME/lib文件夹下,并按如下修改Tomcat的配置文件TOMCAT_HOME/conf/context.xml:
l? Tomcat互动留言服务器NO.1:
???memcachedNodes="n1:10.10.19.6:11211,n2:10.10.19.7:11211" /*此前安装的两个Memcached服务器的IP地址,Memcached默认端口号为11211*/ ???failoverNodes="n1" ???requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$" ???transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory" ???/> l? Tomcat互动留言服务器NO.2: ???memcachedNodes="n1:10.10.19.6:11211,n2:19.7:11211" /*此前安装的两个Memcached服务器的IP地址,Memcached默认端口号为11211*/ ???failoverNodes="n2" ???requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$" ???transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory" ???/> l? 生产服务器NO.1: ???memcachedNodes="n1:10.10.19.6:11211,n2:19.7:11211" /*此前安装的两个Memcached服务器的IP地址,Memcached默认端口号为11211*/ ???failoverNodes="n1" ???requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$" ???transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory" ???/> l? 生产服务器NO.2: ???memcachedNodes="n1:10.10.19.6:11211,n2:19.7:11211" /*此前安装的两个Memcached服务器的IP地址,Memcached默认端口号为11211*/ ???failoverNodes="n2" ???requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$" ???transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory" ???/> ? 参考文章 1、???????? https://code.google.com/p/memcached-session-manager/wiki/SetupAndConfiguration 2、???????? http://www.bradchen.com/blog/2012/12/tomcat-auto-failover-using-apache-memcached 3、???????? http://blog.csdn.net/ichsonx/article/details/6911358 4、???????? http://www.linuxidc.com/Linux/2012-08/69312.htm ? ?
作者:xxfigo 发表于2013-5-21 17:01:06 原文链接
阅读:122 评论:0 查看评论
原文地址:Apache+Tomcat+Memcached共享Session的构架设计, 感谢原作者分享。

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Les utilisateurs peuvent partager les fonds d'écran qu'ils obtiennent avec des amis lorsqu'ils utilisent WallpaperEngine. De nombreux utilisateurs ne savent pas comment partager WallpaperEngine avec des amis. Ils peuvent enregistrer leurs fonds d'écran préférés localement, puis les partager avec des amis via un logiciel social. Comment partager WallpaperEngine avec des amis Réponse : Enregistrez-le localement et partagez-le avec vos amis. 1. Il est recommandé d'enregistrer vos fonds d'écran préférés localement, puis de les partager avec vos amis via un logiciel social. 2. Vous pouvez également le télécharger sur l'ordinateur via un dossier, puis cliquer sur Partager à l'aide de la fonction atelier créatif sur l'ordinateur. 3. Utilisez Wallpaperengine sur l'ordinateur, ouvrez la barre d'options de l'atelier créatif et recherchez

De plus en plus d'entreprises choisissent d'utiliser WeChat d'entreprise exclusif, ce qui non seulement facilite la communication entre les entreprises, les clients et les partenaires, mais améliore également considérablement l'efficacité du travail. Enterprise WeChat possède de riches fonctions, parmi lesquelles la fonction de partage d'écran est très populaire. Pendant la réunion, en partageant l'écran, les participants peuvent afficher le contenu de manière plus intuitive et collaborer plus efficacement. Alors, comment partager efficacement votre écran dans WeChat Enterprise ? Pour les utilisateurs qui ne le savent pas encore, ce guide didacticiel vous donnera une introduction détaillée. J'espère qu'il pourra vous aider ! Comment partager l'écran sur WeChat Enterprise ? 1. Dans la zone bleue sur le côté gauche de l'interface principale d'Enterprise WeChat, vous pouvez voir une liste de fonctions. Nous trouvons l'icône « Conférence ». Après avoir cliqué pour entrer, trois modes de conférence apparaîtront.

Quick Share peut faire gagner beaucoup de temps aux utilisateurs de Samsung lors du transfert de fichiers entre appareils. Mais les utilisateurs de Samsung Galaxy se sont plaints de problèmes avec la fonction Quick Share sur leurs téléphones. En règle générale, les problèmes de visibilité lors du partage rapide sont à l'origine de ce problème. C'est donc le seul guide dont vous avez besoin pour dépanner la fonction Quick Share sur votre appareil Galaxy. Correctif 1 – Modifier les paramètres de visibilité de partage rapide Basculez le paramètre de visibilité de partage rapide sur votre téléphone. Quick Share peut être défini sur des paramètres incorrects, provoquant ce problème. Étape 1 – Tout d’abord, faites glisser votre doigt vers le haut pour ouvrir le tiroir d’applications. Étape 2 – Une fois là-bas, ouvrez Paramètres. Étape 3 – Accédez à la page Paramètres et ouvrez l'onglet Appareils connectés. Étape 4 – Activez la fonction « Partage rapide ». Étape 5

Dans la vie quotidienne et au travail, nous avons souvent besoin de partager des fichiers et des dossiers entre différents appareils. Le système Windows 11 offre des fonctions pratiques de partage de dossiers intégrées, nous permettant de partager facilement et en toute sécurité le contenu dont nous avons besoin avec d'autres au sein du même réseau tout en protégeant la confidentialité des fichiers personnels. Cette fonctionnalité rend le partage de fichiers simple et efficace sans se soucier de la fuite d'informations privées. Grâce à la fonction de partage de dossiers du système Windows 11, nous pouvons coopérer, communiquer et collaborer plus facilement, améliorant ainsi l'efficacité du travail et la commodité de la vie. Afin de réussir la configuration d'un dossier partagé, nous devons d'abord remplir les conditions suivantes : Tous les appareils (participant au partage) sont connectés au même réseau. Activez la découverte du réseau et configurez le partage. Connaître l'appareil cible

Avec le lancement de la nouvelle série de téléphones mobiles Apple iPhone15 et le lancement du dernier système d'exploitation mobile iOS17, une multitude de nouvelles fonctionnalités, ajustements et améliorations ont été apportées aux appareils Apple. Les utilisateurs se demandent peut-être comment utiliser la nouvelle fonctionnalité NameDrop sur iPhone et iOS17. Ce guide fournira un bref aperçu de la façon de partager vos informations de contact rapidement et efficacement à l'aide du nouveau système NameDrop disponible sur iOS17. NameDrop est une fonctionnalité qui permet aux utilisateurs d'iPhone de partager rapidement leurs informations de contact avec d'autres. C'est un outil pratique pour les événements sociaux, les réunions d'affaires ou les rassemblements sociaux où vous devez échanger des coordonnées avec de nouveaux amis. Cependant, il est important de noter que NameDrop ne fonctionne que pour envoyer de nouveaux contacts

Avec le développement de l’ère numérique, les imprimantes partagées sont devenues un élément indispensable de l’environnement de bureau moderne. Cependant, nous pouvons parfois rencontrer le problème que l'imprimante partagée ne peut pas être connectée à l'imprimante, ce qui affectera non seulement l'efficacité du travail, mais provoquera également une série de problèmes. Cet article vise à explorer les raisons et les solutions pour lesquelles une imprimante partagée ne peut pas se connecter à l'imprimante. Il existe de nombreuses raisons pour lesquelles une imprimante partagée ne peut pas se connecter à l'imprimante, la plus courante étant les problèmes de réseau. Si la connexion réseau entre l'imprimante partagée et l'imprimante est instable ou interrompue, le fonctionnement normal ne sera pas possible.

Qui peut voir les photos et les affiches de vos contacts sur iPhone ? Apple propose des options pour personnaliser la façon dont vous apparaissez sur l'iPhone de quelqu'un lorsqu'il appelle ou envoie un message. Les options incluent Memoji, un texte simple ou une photo personnalisée avec des effets comme photo de contact et image d'affichage. Vous êtes libre de modifier ces sélections à tout moment et de basculer entre les profils sur la fiche de contact. De plus, Apple vous offre la possibilité de contrôler qui peut afficher et accéder aux photos ou afficher les images de votre choix sur iOS17. Vous pouvez décider de les partager avec des personnes enregistrées dans votre liste de contacts, ou vous pouvez configurer votre iPhone pour qu'il vous invite à chaque fois que vous interagissez avec un contact. Si vous le souhaitez, vous pouvez également désactiver le nom de manière permanente

Comment définir les autorisations en lecture seule du dossier partagé dans Win10 ? Une fois que l'hôte a partagé le dossier, certains utilisateurs souhaitent uniquement que d'autres accèdent, lisent et visualisent les fichiers, mais ne souhaitent pas que d'autres modifient les fichiers sur l'hôte. Cet article est un didacticiel expliquant comment définir les autorisations d'un dossier partagé en lecture seule et ne pouvant pas être modifiées. 1. Tout d'abord, partagez le dossier selon le processus normal Du côté hôte, cliquez avec le bouton droit sur le dossier qui doit être partagé et sélectionnez : Propriétés-Partage-Partage avancé-cochez Partager ce dossier ; option d'autorisation ci-dessous. Par défaut, compte Tout le monde, s'il n'y en a pas, ajoutez un compte Tout le monde ; 3. Vérifiez uniquement l'autorisation de lecture ci-dessous, puis cliquez sur OK. 4. Recherchez le dossier propriétés-sécurité et ajoutez un compte Ever ;
