[续1]记录“装nginx+3个tomcat+mysql,测一下1000并发访问的应用性能”的过程
2013-01-26 13:35
375 查看
在mysql中手工导入sql文件,
root@vps968:/home/tomcat# mysql -u root -p
Enter password:
mysql> source /home/tomcat/localhost.sql
装memcached,如下:
wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz
wget http://memcached.googlecode.com/files/memcached-1.4.15.tar.gz
tar zxf libevent-2.0.21-stable.tar.gz
cd libevent-2.0.21-stable
./configure --prefix=/usr
make
make install
tar zxf memcached-1.4.15.tar.gz
cd memcached-1.4.15
./configure --with-libevent=/usr
make
make install
下面摘录一段memcached的说明:
memcached的基本设置:
1.启动Memcache的服务器端:
# /usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.200 -p 12000 -c 256 -P /tmp/memcached.pid
-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,
2.如果要结束Memcache进程,执行:
# kill `cat /tmp/memcached.pid`
也可以启动多个守护进程,不过端口不能重复。
下面把memcached for tomcat搞定,切换到tomcat用户,
wget http://memcached-session-manager.googlecode.com/files/memcached-session-manager-1.6.3.jar
wget http://memcached-session-manager.googlecode.com/files/memcached-session-manager-tc6-1.6.3.jar
wget http://memcached-session-manager.googlecode.com/files/msm-kryo-serializer-1.6.3.jar
wget http://memcached-session-manager.googlecode.com/files/msm-javolution-serializer-1.6.3.jar
wget http://memcached-session-manager.googlecode.com/files/msm-xstream-serializer-1.6.3.jar
wget http://memcached-session-manager.googlecode.com/files/msm-flexjson-serializer-1.6.3.jar
wget https://spymemcached.googlecode.com/files/spymemcached-2.8.4.jar
wget http://memcached-session-manager.googlecode.com/files/javolution-5.4.3.1.jar
cp *.jar tomcat1/lib/
cp *.jar tomcat2/lib/
cp *.jar tomcat3/lib/
继续改tomcat配置,server.xml里<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">3个Tomcat的jvmRoute分别为:tomcat1、tomcat2、tomcat3
context.xml里,<Context>标签内增加下面一段,kryo始终不行,算了,换一个javolution了。
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="n1:127.0.0.1:12000"
sticky="false"
lockingMode="auto"
sessionBackupAsync="false"
sessionBackupTimeout="1000"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"
/>
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="n1:localhost:12000"
requestUriIgnorePattern=".*\.(png|gif|jpg|css|js)$"
sessionBackupAsync="false"
sessionBackupTimeout="1000"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.javolution.JavolutionTranscoderFactory"
copyCollectionsForSerialization="false"
/>
最后配置nginx,配置文件在/usr/local/nginx/conf/nginx.conf,
先改成这样:
...
upstream www.xxxx.net {
server 127.0.0.1:8080 srun_id=tomcat1;
server 127.0.0.1:18080 srun_id=tomcat2;
server 127.0.0.1:28080 srun_id=tomcat3;
jvm_route $cookie_JSESSIONID|sessionid reverse;
}
server {
listen 80;
server_name www.xxxx.net;
charset utf-8;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
proxy_pass http://www.xxxx.net;
proxy_redirect off;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
client_max_body_size 100m;
}
location ~ ^/(WEB-INF)/ {
deny all;
}
...
重启tomcat、nginx。搞定。
root@vps968:/home/tomcat# mysql -u root -p
Enter password:
mysql> source /home/tomcat/localhost.sql
装memcached,如下:
wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz
wget http://memcached.googlecode.com/files/memcached-1.4.15.tar.gz
tar zxf libevent-2.0.21-stable.tar.gz
cd libevent-2.0.21-stable
./configure --prefix=/usr
make
make install
tar zxf memcached-1.4.15.tar.gz
cd memcached-1.4.15
./configure --with-libevent=/usr
make
make install
下面摘录一段memcached的说明:
memcached的基本设置:
1.启动Memcache的服务器端:
# /usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.200 -p 12000 -c 256 -P /tmp/memcached.pid
-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,
2.如果要结束Memcache进程,执行:
# kill `cat /tmp/memcached.pid`
也可以启动多个守护进程,不过端口不能重复。
下面把memcached for tomcat搞定,切换到tomcat用户,
wget http://memcached-session-manager.googlecode.com/files/memcached-session-manager-1.6.3.jar
wget http://memcached-session-manager.googlecode.com/files/memcached-session-manager-tc6-1.6.3.jar
wget http://memcached-session-manager.googlecode.com/files/msm-kryo-serializer-1.6.3.jar
wget http://memcached-session-manager.googlecode.com/files/msm-javolution-serializer-1.6.3.jar
wget http://memcached-session-manager.googlecode.com/files/msm-xstream-serializer-1.6.3.jar
wget http://memcached-session-manager.googlecode.com/files/msm-flexjson-serializer-1.6.3.jar
wget https://spymemcached.googlecode.com/files/spymemcached-2.8.4.jar
wget http://memcached-session-manager.googlecode.com/files/javolution-5.4.3.1.jar
cp *.jar tomcat1/lib/
cp *.jar tomcat2/lib/
cp *.jar tomcat3/lib/
继续改tomcat配置,server.xml里<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">3个Tomcat的jvmRoute分别为:tomcat1、tomcat2、tomcat3
context.xml里,<Context>标签内增加下面一段,kryo始终不行,算了,换一个javolution了。
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="n1:127.0.0.1:12000"
sticky="false"
lockingMode="auto"
sessionBackupAsync="false"
sessionBackupTimeout="1000"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"
/>
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="n1:localhost:12000"
requestUriIgnorePattern=".*\.(png|gif|jpg|css|js)$"
sessionBackupAsync="false"
sessionBackupTimeout="1000"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.javolution.JavolutionTranscoderFactory"
copyCollectionsForSerialization="false"
/>
最后配置nginx,配置文件在/usr/local/nginx/conf/nginx.conf,
先改成这样:
...
upstream www.xxxx.net {
server 127.0.0.1:8080 srun_id=tomcat1;
server 127.0.0.1:18080 srun_id=tomcat2;
server 127.0.0.1:28080 srun_id=tomcat3;
jvm_route $cookie_JSESSIONID|sessionid reverse;
}
server {
listen 80;
server_name www.xxxx.net;
charset utf-8;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
proxy_pass http://www.xxxx.net;
proxy_redirect off;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
client_max_body_size 100m;
}
location ~ ^/(WEB-INF)/ {
deny all;
}
...
重启tomcat、nginx。搞定。
相关文章推荐
- [续2]记录“装nginx+3个tomcat+mysql,测一下1000并发访问的应用性能”的过程
- 记录“装nginx+3个tomcat+mysql,测一下1000并发访问的应用性能”的过程
- 记录mysql性能查询过程的使用方法
- 开发环境-Windows下搭建JAVA Web开发环境(含Tomcat+MySQL)-过程记录
- 阿里云服务器linux环境,从启动tomcat服务器外网访问--->绑定域名--->Navicat远程连接mysql--->阿里云服务器部署项目过程中,一定会遇到的五大问题;
- Tomcat的性能与最大并发量(1000)
- mysql存储过程出参入参,sqlserver很熟悉的一件事到mysql,捣鼓了大半天。记录一下提醒自己。勿看
- Vps中Ubuntu下安装Mysql并开启远程数据库访问过程记录
- 一次tomcat应用无法访问的处理过程
- 使用多线程模拟多用户并发访问一个或多个tomcat,测试性能 java
- Java应用Tomcat执行过程之性能调优
- 详解Centos7 64位下Nginx+Tomcat部署java web全过程以及在线离线安装Mysql
- 记录一下误删除了mysql表中的数据后的恢复过程
- Linux下Nginx+tomcat应用系统性能优化
- 记录mysql性能查询过程
- Tomcat性能 与 最大并发数(1000) ——转自Helloworld
- 记录一下在WinXP上搭建Apache的httpd+PHP+MySQL+Wordpress的过程
- Java应用Tomcat执行过程之性能调优
- tomcat的性能与最大并发(1000)
- 应用和系统开发过程中,高并发的访问对同一数据的不一致,读脏数据的处理办法