本文主要介紹Windows server 2008-32位 單機的nginx-1.9.6+tomcat8+memcached-win32-1.4.4+session共享的配置javascript
第一章:安裝配置memcached-win32-1.4.4以便後面共享tomcat8 的session信息css
一、下載服務端memcached軟件:http://blog.couchbase.com/memcached-144-windows-32-bit-binary-now-available html
二、memcached基本參數設置:
-p 監聽的端口
-l 鏈接的IP地址, 默認是本機
-d start 啓動memcached服務
-d restart 重起memcached服務
-d stop|shutdown 關閉正在運行的memcached服務
-d install 安裝memcached服務
-d uninstall 卸載memcached服務
-u 以的身份運行 (僅在以root運行的時候有效)
-m 最大內存使用,單位MB。默認64MB
-M 內存耗盡時返回錯誤,而不是刪除項
-c 最大同時鏈接數,默認是1024
-f 塊大小增加因子,默認是1.25
-n 最小分配空間,key+value+flags默認是48
-h 顯示幫助前端
三、以管理員身份運行 cmd.exe,並轉至memcached所在文件夾,好比:java
cd D:\wamp_win7\bin\memcached-win32-1.4.4
|
注意:若是不以管理員身份運行,將獲得報錯「failed to install service or service already installed」node
四、安裝memcached: nginx
memcached.exe -d
install -m 500 -c 2048
web
(以後屏幕無任何提示,能夠再[控制面板]->[管理工具]->[服務]中查看到memcached)apache
五、啓動memcached:[控制面板]->[管理工具]->[服務] 找到 memcached 服務json
啓動類型:選擇【自動】
服務狀態:點擊下面的【啓動】
第二章:安裝配置apache-tomcat-8.0.28-windows-x86
首先要先下載依賴包:http://download.csdn.net/download/xuzhaoshan/9264151
將下載的jar包複製到tomcat8的lib目錄下(必須)。
設置tomcat8 的jdk ,在setclasspath.bat文件中添加jdk路徑:
set JAVA_HOME="D:\Tomcat8-Cluster\jdk1.8"
set JRE_HOME="D:\Tomcat8-Cluster\jre1.8"
一、配置tomcat-8-1
配置conf目錄的context.xml文件,內容以下:
<?xml version='1.0' encoding='utf-8'?>
<Context> -->
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="n1:localhost:11211"
sticky="false"
sessionBackupAsync="false"
lockingMode="none"
requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
transcoderFactoryClass="de.javakaffee.web.msm.JavaSerializationTranscoderFactory"/>
</Context>
配置conf目錄的server.xml文件,內容以下:
<?xml version='1.0' encoding='utf-8'?>
<Server port="8005" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.startup.VersionLoggerListener" />
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
<GlobalNamingResources>
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<Service name="Catalina">
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="1000" maxIdleTime="60000" minSpareThreads="20"/>
<Connector port="81" protocol="org.apache.coyote.http11.Http11AprProtocol"
executor="tomcatThreadPool" compression="on" compressionMinSize="2048" noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain,application/json,application/x-javascript"
maxThreads="30000" minSpareThreads="512" enableLookups="false" acceptCount="35000"
connectionTimeout="40000" disableUploadTimeout="true" URIEncoding="UTF-8" useBodyEncodingForURI="true" redirectPort="8443" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
<Engine name="Catalina" defaultHost="192.168.1.2" jvmRoute="tomcat8-1">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
</Realm>
<Host name="192.168.1.2" appBase="webapps" unpackWARs="true" autoDeploy="false">
<Context path="" docBase="D:\Tomcat8-Cluster\項目名稱" reloadable="false" />
</Host>
</Engine>
</Service>
</Server>
一、配置tomcat-8-2
配置conf目錄的context.xml文件,內容以下:
<?xml version='1.0' encoding='utf-8'?>
<Context> -->
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="n1:localhost:11211"
sticky="false"
sessionBackupAsync="false"
lockingMode="none"
requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
transcoderFactoryClass="de.javakaffee.web.msm.JavaSerializationTranscoderFactory"/>
</Context>
配置conf目錄的server.xml文件,內容以下:
<?xml version='1.0' encoding='utf-8'?>
<Server port="8006" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.startup.VersionLoggerListener" />
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
<GlobalNamingResources>
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<Service name="Catalina">
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="1000" maxIdleTime="60000" minSpareThreads="20"/>
<Connector port="82" protocol="org.apache.coyote.http11.Http11AprProtocol"
executor="tomcatThreadPool" compression="on" compressionMinSize="2048" noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain,application/json,application/x-javascript"
maxThreads="30000" minSpareThreads="512" enableLookups="false" acceptCount="35000"
connectionTimeout="40000" disableUploadTimeout="true" URIEncoding="UTF-8" useBodyEncodingForURI="true" redirectPort="8444" />
<Connector port="8010" protocol="AJP/1.3" redirectPort="8444" />
<Engine name="Catalina" defaultHost="192.168.1.2" jvmRoute="tomcat8-2">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
</Realm>
<Host name="192.168.1.2" appBase="webapps" unpackWARs="true" autoDeploy="false">
<Context path="" docBase="D:\Tomcat8-Cluster\gy" reloadable="false" />
</Host>
</Engine>
</Service>
</Server>
第三章:安裝配置nginx-1.9.6
首先要先下載nginx-1.9.6,修改nginx.conf文件,以下:
#user nobody;
#工做進程數:這個數值要根據服務器CPU核心數來配置,如6核12線程的cpu能夠配置爲6或12。
worker_processes 8;
#錯誤日誌存放路徑
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
#設置單個進程同時打開的最大鏈接數,這個值設置大些能接受較多的鏈接,固然這須要cpu和內存支持哦~~
worker_connections 65535;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
tcp_nopush on; #防止網絡阻塞
tcp_nodelay on; #防止網絡阻塞
keepalive_timeout 120; #長鏈接超時時間,單位是秒
#gzip模塊設置
gzip on; #開啓gzip壓縮輸出
gzip_min_length 1k; #最小壓縮文件大小
gzip_buffers 4 16k; #壓縮緩衝區
gzip_http_version 1.1; #壓縮版本(默認1.1,前端若是是squid2.5請使用1.0)
gzip_comp_level 2; #壓縮等級
gzip_types text/plain application/x-javascript text/css application/xml;
#壓縮類型,默認就已經包含textml,因此下面就不用再寫了,寫上去也不會有問題,可是會有一個warn。
gzip_vary on;
#limit_zone crawler $binary_remote_addr 10m; #開啓限制IP鏈接數的時候須要使用
# 在此處設置tomcat服務器信息,一樣tomcat也能夠不在同一主機中。這裏設置了兩個tomcat服務,比重是1:1了。 localhost更換爲服務器的IP
# 在此處設置tomcat服務器信息,一樣tomcat也能夠不在同一主機中。這裏設置了兩個tomcat服務,比重是1:1了。 localhost更換爲服務器的IP
upstream 192.168.240.10{
server 192.168.240.10:83 max_fails=0;
server 192.168.240.10:82 max_fails=0;
ip_hash;
}
server {
listen 81;
server_name 192.168.240.10;
charset utf-8;
location / {
root html;
index index.html index.htm;
proxy_pass http://192.168.240.10;
proxy_redirect default;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_connect_timeout 3;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
啓動方式,能夠將命令保存爲 .bat文件,方便操做
啓動:start nginx
中止:nginx -s stop
從新加載:nginx -s reload