校内app可测试了

7月 7, 2008 – 6:48 下午

今天无意中访问校内,发现app开放开台可用了.
大家加油测试
http://app.xiaonei.com/apps/apps.do
鲜果阅读器的校内版测试链接:
http://app.xiaonei.com/apps/application.do?id=11266

压力测试工具:ab,webbench

7月 6, 2008 – 8:00 下午

为了比较网站或者服务器的性能少不了压力测试工具。最受欢迎的是ab测试工具。ab测试工具随apache打包发布,所有应用起来十分方便。而webbench用起来更加的简单,参数很少简单易懂.

1. ab
根目录: 在apache的根目录下面。
测试例子: ab -n 10000 -c 100 -t 10 http://www.test.com/
参数: -n 表示请求总数, -c 表示并发数. -t 表示请求时间限制

  1. Usage: ab [options] [http[s]://]hostname[:port]/path
  2. Options are:
  3.     -n requests     Number of requests to perform
  4.     -c concurrency  Number of multiple requests to make
  5.     -t timelimit    Seconds to max. wait for responses
  6.     -p postfile     File containing data to POST
  7.     -T content-type Content-type header for POSTing
  8.     -v verbosity    How much troubleshooting info to print
  9.     -w              Print out results in HTML tables
  10.     -i              Use HEAD instead of GET
  11.     -x attributes   String to insert as table attributes
  12.     -y attributes   String to insert as tr attributes
  13.     -z attributes   String to insert as td or th attributes
  14.     -C attribute    Add cookie, eg. 'Apache=1234. (repeatable)
  15.     -H attribute    Add Arbitrary header line, eg. 'Accept-Encoding: gzip'
  16.                     Inserted after all normal header lines. (repeatable)
  17.     -A attribute    Add Basic WWW Authentication, the attributes
  18.                     are a colon separated username and password.
  19.     -P attribute    Add Basic Proxy Authentication, the attributes
  20.                     are a colon separated username and password.
  21.     -X proxy:port   Proxyserver and port number to use
  22.     -V              Print version number and exit
  23.     -k              Use HTTP KeepAlive feature
  24.     -d              Do not show percentiles served table.
  25.     -S              Do not show confidence estimators and warnings.
  26.     -g filename     Output collected data to gnuplot format file.
  27.     -e filename     Output CSV file with percentages served
  28.     -h              Display usage information (this message)
  29.     -Z ciphersuite  Specify SSL/TLS cipher suite (See openssl ciphers)
  30.     -f protocol     Specify SSL/TLS protocol (SSL2, SSL3, TLS1, or ALL)

2.webbench
1)安装:
Read the rest of this entry »

nginx系列(1):快速搭建nginx + php fastcgi系统

7月 5, 2008 – 11:24 下午

nginx历吏比较短,由俄罗斯人编写,以性能卓越闻名。国内用nginx做server的公司还不多,相关的学习文档还不是很完全。边学边记,共同学习。

首先分享一下搭建nginx心得.其实在ubuntu下面建立nginx平台还是十分的简单,只不过本人用linux系统的不长以及nginx的相关文档比较少,以至在前期走了不少的弯路.

1. 测试平台: ubuntu8.04

2.安装nginx
1)sudo apt-get install nginx
2)相关路径:
conf: /etc/nginx/nginx.conf
bin: /usr/sbin/nginx
vhost: /etc/nginx/sites-enable/default
cgi-params: /etc/nginx/fastcgi-params
3)例子:建一个虚拟server
在/etc/nginx/sites-enable/default中添加以下代码

  1. server {
  2. listen 80;      //端口
  3. server_name home.ucenter;  //虚拟域名
  4. access_log  /var/log/nginx/home.ucenter.access.log;   //访问日志
  5. location / {
  6.     root  /home/shanfeng/workspace/ucenter-home;  //size根目录
  7.     index index.php;
  8.      }
  9. location ~ \.php$ {   #php fastcgi的配置
  10.          fastcgi_pass   127.0.0.1:9000;   #php fastcgi的代理端口与ip
  11.          fastcgi_index  index.php;
  12.          fastcgi_param  SCRIPT_FILENAME  /home/shanfeng/workspace/ucenter-home$fastcgi_script_name;    #要处理的php文件的路径
  13.          include /etc/nginx/fastcgi_params; #fastcgi的参数文件地址
  14.    }
  15.   }

2.安装php-cgi
Read the rest of this entry »

常用eclipse plugin

7月 1, 2008 – 11:40 下午

经常在eclipse重装的时候忘了一些扩展的源地址,在此记下以后不用四处寻找喽

本日志将不断完善,您可以把你常用的源留在评论中,让咱们一起完善这篇日志.

1.php扩展
http://phpeclipse.sourceforge.net/update/releases
2.svn扩展
windows版本的eclipse
http://subclipse.tigris.org/update
ubuntu版本的eclipse http://subclipse.tigris.org/update_1.4.x
3.simpletest扩展:
http://simpletest.org/eclipse/
Read the rest of this entry »

用mod_proxy实现反向代理

7月 1, 2008 – 11:21 下午

由于项目需要实现一个域名代理的功能
比如:
a.com/a.html=>b.com/b.html
也就是用a.com代理了所用b.com网站的请求,经过朋友介绍用apache的反向代理可以实现其目的,哥们试了一下,果然很爽.配置起来也超级的方便.

(注意下面只介绍反向代理,正向代理等我用到了再介绍嘿嘿)

1.启动apache的mod_proxy模块.

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so

注意mod_proxy_http.so.我测试的时候没有添加这个模块怎么测试都会代理失败,后来添加了这个模块后问题消失

2.实现代理语句


ProxyPass /mirror/foo/ http://backend.example.com/

实现把当前host /mirror/foo/目录下面的请求全都分发到backend.example.com上面去.
根据我的要求:
在a.com的文件夹目录里面加上一条
ProxyPass / http://b.com/
一切ok

3.进行域名代理后要注意:
3.1:网站中的url最好都用相对路径.如果用绝对路径的话容易绕过代理,这后代理服务器后面的主机就容易暴露.
3.2:注意在引用$__Server[’server_name’]全局变量的时候取到的是当前server_name的域名.如果想取到代理的域名则要通过
$__Server['HTTP_X_FORWARDED_FOR’]取得代理域名.注:一般用于写cookie之类的操作.
Read the rest of this entry »

从精益生产到精益软件开发

6月 22, 2008 – 9:11 下午

第三界”敏捷中国”的会议主题是精益软件思维,听了Martin Fowler(重构的作者)和ThoughtWorks同事的精彩演讲,收获不少。在此分享一下学习心得。敏捷的最大好处是减少浪费,通过对质量的严格控制减少返工的浪费,通过频繁的反馈减少误解的浪费。这种与浪费做战的态度,与精益(Lean)思想同出一处。

1)何为’精益’:
以上摘自: http://blog.vsharing.com/tiger_wing/A387321.html
精益生产(Lean Production,简称LP)是美国麻省理工学院数位国际汽车计划组织(IMVP)的专家对日本“丰田JIT(Just In
Time)生产方式”的赞誉之称,精,即少而精,不投入多余的生产要素,只是在适当的时间生产必要数量的市场急需产品(或下道工序急需的产品);益,即所
有经营活动都要有益有效,具有经济性。精益生产是当前工业界最佳的一种生产组织体系和方式。

2)怎么从传统工业中的精益生产到软件互联网行业的精益开发呢?
软件行业是一个新兴的快速发展的行业,他与传统行业存在很多不同的思维方式,但是存在更多的共同点,很多在软件行业中的做法借鉴了传统行业,并且在软件行业中收效很大。比如软件设计的精典著作《设计模式》则借鉴了建筑领域的著作《建筑模式》.软件行业学习制造业的精益思想也是理所当然.
(以下笔记摘自路宁的精采演讲)
2.1 精益工厂的环境是干净,井井有条的
工厂搞得像医院一个干净有条理,而不像一般的工厂一样到到处是油污,到处散落零件。目的是更加方便的找出质量的死角,无限放大工作流程中的失误。我们程序员的工作环境也是如此,工作环境不仅指一个公司的工作环境,还指一个程序员个体的编码环境。如果工作环境是无序的,零乱的,那么在这个环境里面的工作人员怎么不会被外界的环境所影响呢?程序员的编码环境也如此,如果每天发费大量的时间在你混乱的文件路径中查找你在中的工作材料,怎么会有时间集中精神把一件事件做到位呢?(哈哈!从现在开始把当天要进行开发的工作目录设置为根目录)
2.2 最大程度的了解团队的信息。 Read the rest of this entry »