nginx-tomcat-memcached架构文档说明(转)

架构文档说明

 

 

1.     nginx环境

1.1            安装

下载nginx服务包,在此我使用的是nginx1.3.13

 

主要配置conf目录下的配置文件和使用nginx.exe的服务。
1.2
cmd中进入nginx.exe所在的目录,输入:start nginx.exe启动nginx服务;nginx.exe –s quitnginx.exe –s stop 停止nginx服务;nginx.exe –s reload刷新nginx的配置文件。

1.1            配置

找到nginx的安装目录:ngin1.3.13/conf/conf文件

 

nginx.conf文件是nginx的核心配置文件。具体配置见下图:

 

 

2.     msm环境

2.1            安装

下载memcached服务及安装包,如图所示:

 

memcached.exememcached服务,也是windows服务的一部分,memcached.exe一定要下载和自己电脑的bit数一致,如:32为、64位;其它则为缓存服务器所依赖的JAR文件,其中

Tomcat7及以上所需要的JAR,如果使用的是Tomact6的版本则下载对应的版本,如:memcached-session-maager-tc7-1.6.3.jar,其他的JAR文件在该地址中都可以对应的找到:
http://code.google.com/p/memcached-session-manager/downloads/list


memcached.exe放到一个目录下面,如D:\msm\memcached.exe。在cmd中进入到memcached.exe的目录:memcached.exe –d install安装memcached服务;memcached.exe –p 11211 –d start启动memcached服务,其中11211是该服务的端口号;memcached.exe –d uninstall 卸载memcached服务。

2.2            配置

tomcatlib目录中加入memcached缓存支持的JAR文件(12jar)。
tomcat目录下的content.xml文件,在content标签中加入:

 

<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager" 
memcachedNodes="n2:localhost:11211" 
requestUriIgnorePattern=".*/.(png|gif|jpg|css|js)$" 
sessionBackupAsync="false" 
sessionBackupTimeout="100"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.javolution.JavolutionTranscoderFactory" 
copyCollectionsForSerialization="false"/>

memcachedNodes属性中的n2表示服务中的节点,可以自定义的,但是不同的memcached服务规定节点不能一样,否则不能实现session共享,不同的服务定义不同的节点,一个memcachedNodes也可以定义多个节点:memcachedNodes=" n2:localhost:11211 n2:192.168.21.**:11211",不同的节点直接用空格或逗号隔开即可。

修改tomcat目录下的server.xml文件,在Engine标签中添加jvmRote属性,jvm的值不能和集群中tomcat中的jvmRote值重复。

tomcat通过在不同的jmv上配置不同的jvmRoute参数,来防止集群的时候sessionid冲突:<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1" />

注意:jvm值在同一个集群中不能一样,用来标识不同的tomcat服务,在msm集群中的每个tomcat必须要写。

3.     tomcat环境

3.1每个tomcat的端口不能重复,如图:

 

 

 

下图是对tomcatserver.xml文件中的端口解释

3.2 实现域名访问tomcat中的项目需要把tomcat默认显示的index.jsp进行更改掉

打开index.jsp页面,将里面css部分、body标签部分全部删除,然后在index.jsp内部最后添加:

<script>
        Window.onload=function(){
            Window.loaction=”../dkce/app/index.jsp”;
}
</script>

注意:每个tomcat中的访问端口必须要在防火墙的入站规则里面进行创建,如当前的tomcat的对外端口是8080,则要在入站规则里面创建一个对外的端口。

1.     安装配置与启动项

1.1               nginxmemcached服务进行安装,然后启动memcached服务。

1.2               配置JDK、环境变量,将项目放入tomcat中,进行配置memcached和域名访问的方式,上面已经详细介绍,启动tomcat

1.3               配置nginx脚本(conf.xml),配置完成之后进行启动。

1.4               A.如果重启nginx服务不需要重启tomcat服务。B.如果重启tomcat服务,需要重启nginx服务(不是关机重启,是使用命令重启,2秒钟即可完成)。

1.5               如果在tomcat集群中移除其中的一台tomcat服务器,对于整个集群是不受影响的。添加一台tomcat服务器只需在nginx中注册该服务并重启nginx服务即可。在整个集群,无论nginx停止或重启、tomcat停止或重启对memcached服务不受任何影响。


posted @ 2016-06-01 17:59  crazyYong  阅读(439)  评论(0编辑  收藏  举报