Nginx+resin调优文档[原创] 不指定

刘天斯 , 2010/06/12 12:05 , Resin , 评论(3) , 阅读(597) , Via 本站原创
       为什么不选择Apache/mod+resin?
       前面一直使用该模式,mod_caucho暴露源码的bug一直未得到彻底的解决。因此切换到Nginx+resin平台。硬件上要求除了内存一定要足够大(建议>4G),无其它要求(当然也不能太破,呵呵sweat)。操作系统强烈要求安装64位,32位操作系统jvm只能识别不到2G的内存,印象中是1.57G(单实例应用)。下面总结自己的一些调优方法及配置。

调优硬件环境

CPU:Intel Xeon*2(双核)
MEM:8G
SWAP:1G

一、测试32系统所支持的最大可用内存
java -XmxXXXXM -version
不断加大-Xmx的大小,截止到出现以下提示:
Could not create the Java virtual machine.

二、Nginx配置

   location / {
     root /var/www/app.cn;
     index index.jsp;
     proxy_pass http://localhost:8080;
     include /usr/local/nginx/conf/proxy.conf;
   }

   location ~* \.(jsp|do|shtml)$ {
     root /var/www/app.cn;
     index index.jsp;
     include /usr/local/nginx/conf/proxy.conf;
     proxy_pass http://localhost:8080;
     proxy_set_header X-Real-IP $remote_addr;
   }


      以代理的方式进行整合,静态文件继续由Nginx来解析,扩展名为jsp|do|shtml才丢给后端resin来处理。即使resin发现的故障,前端最多只会报500、502 time out的信息。
Tags: ,

MooseFS性能图表[原创] 不指定

刘天斯 , 2010/06/07 23:09 , MooseFS , 评论(3) , 阅读(732) , Via 本站原创
       对MooseFS有了一定的了解,现在可以压压它的性能了,使用的是iozone IO测试工具。测试命令为:
./iozone -a -n 512m -g 4g -i 0 -i 1 -f /mnt/mfs/logs/test.tar.gz -Rb ./iozone.xls -C
测试说明
1、/mnt/mfs/logs/test.tar.gz大小为9.2G,大于服务器物理内存(8G)。
2、获取挂载的分区的write、re-write、read、re-read数据。

测试数据
一、reader report
点击在新窗口中浏览此图片
点击在新窗口中浏览此图片
Tags: ,

MooseFS学习笔记 不指定

刘天斯 , 2010/06/07 22:51 , MooseFS , 评论(0) , 阅读(434) , Via 本站原创
     有了测试环境,现在开始一步步来学习Moosefs的特性,现整理了一些,不断添加中... ...

1、/mnt/mfs空间的大小为chunkserver定义空间空闲的大小,已使用空间为mfs所存储的数据容量。

2、在任一台client执行chmod -R nobody:nobody /mnt/mfs(任意操作),所有client看到的结果是一样的。

3、mfschunkfile 用来检查给定的文件以多少副本数来存储。

#mfscheckfile /mnt/mfs/folder1/mfs-1.6.15.tar.gz
/mnt/mfs/folder1/mfs-1.6.15.tar.gz:
1 copies: 1 chunks

说明有一个副本存储在一个 chunk里。

4、设定、查看的目标mfssetgoal、mfsgetgoal副本数

mfssetgoal 3 /mnt/mfs/folder1
mfsgetgoal /mnt/mfs/folder1

5、mfsdirinfo 显示了目录、文件及 chunks 的数目,还有整个目录占用磁盘空间的情况

mfsdirinfo /mnt/mfs/floder1/
inodes:                          2
  directories:                    1
  files:                          1
chunks:                          1
length:                   44145890
size:                     44176384
realsize:                 88352768  包括所有副本的大小。

MooseFS安装笔记 不指定

刘天斯 , 2010/06/07 22:39 , MooseFS , 评论(1) , 阅读(532) , Via 本站原创
     参考了老田的译文《moosefs-step-by-step-tutorial-cn》,自己也着手部署测试环境,现将安装过程整理出来。
安装环境
Master Server
192.168.72.32    Centos5.4(64X)

Metalogger Server
192.168.17.33    Centos5.4(64X)

Chunk Servers
192.168.17.34    Centos5.4(64X)
192.168.17.35    Centos5.4(64X)

Client Server
192.168.17.36    Centos5.4(64X)
192.168.17.41    Centos5.4(64X)
192.168.17.42    Centos5.4(64X)
192.168.17.43    Centos5.4(64X)

master 安装
mkdir -p /home/install/moosefs/
cd /home/install/moosefs/
groupadd mfs
useradd -g mfs mfs

wget http://m.install.server.com/install/moosefs/mfs-1.6.15.tar.gz
tar -zxvf mfs-1.6.15.tar.gz
cd mfs-1.6.15
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/www/lib --with-default-user=mfs --with-default-group=mfs --disable-mfschunkserver --disable-
mfsmount
make && make install
        关于Func非Python API实现远程调用,目的是给第三方工具提供调用及返回接口。Func使用func-transmit命令来实现,支持YAML 1.0 与 JSON,使用上非常简单。例子如下:
YAML格式
#vi run.yaml

JSON格式
#vi run.json

参数说明
clients    目标主机,"*"代码所有被控主机。
async     是否异步,是一个bool值,True为使用异步,False则不使用。
nforks    启用的线程数,用数字表示。
module  模块名称,如command。
method  方法名称,如command模块下的run方法。
parameters  参数,如"/usr/bin/tail -100 /var/log/messages"。
分页: 3/42 第一页 上页 1 2 3 4 5 6 7 8 9 10 下页 最后页 [ 显示模式: 摘要 | 列表 ]