Nginx + Tomcat + Memcached クラスターでは、少なくとも 2 つの側面を考慮する必要があります:
1. ロード バランシングを実現する方法。
2. セッションのレプリケーションと同期を実装するにはどうすればよいですか?
この記事では、インターネットから関連資料を収集し、ウィンドウの下に Nginx + Tomcat + Memcached クラスターを構築するプロセスを次のように要約します。
1. 開発環境
1. nginx バージョン: 1.8.0
2. memcached バージョン: 1.4.13
4.マネージャーの最新バージョン: 1.6.35. オペレーティング システム: Win72. 負荷分散を実現するための Nginx + Tomcat
upstream local_tomcat { server localhost:18080 weight=1; server localhost:18081 weight=1; } server { listen 80; location / { root html; index index.html index.htm; proxy_pass http://local_tomcat; } }
3. Tomcat + memcached はセッションのレプリケーションと同期を実装します
1. memcached をダウンロードしてインストールします(省略)
<Server port="8005" shutdown="SHUTDOWN">
<Connector port="18080" protocol="HTTP/1.1" c redirectPort="8443" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager" memcachedNodes="<span style="color:#FF0000;"><strong>n1:127.0.0.1:11211</strong></span>" sticky="false" sessi lockingMode="uriPattern:/path1|/path2" requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$" transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"/>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ page import="java.text.SimpleDateFormat"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>Tomcat集群测试</title> </head> <body> <% out.print("["+request.getLocalAddr()+":" +request.getLocalPort()+"]" + "<br/>session id:" + session.getId()); %> </body> </html>
に直接置き換えます。 nginx を起動します。 memcached と 2 つの Tomcat は、ブラウザを使用して http://localhost/examples/ にアクセスし、nginx サーバーから返された 2 つのページを比較し、2 つのポートは異なるがセッションが同じであることを確認します。これは、Nginx + Tomcat + Memcached クラスターが正常に確立されました。
1.
http://www.tuicool.com/articles/I7ryYf
著作権表示: この記事はブロガーによるオリジナルの記事であり、ブロガーの許可なく複製することはできません。
上記では、関連する内容も含めて Nginx + Tomcat + Memcached クラスターを紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。