浏览模式: 标准 | 列表2006年07月的文章

七月七日晴

七月七日晴。

天气不错,37度的阳光没有驱走昏沉的上海的天空,所以星星不在灿烂。

想想 ,牛郎会在和织女相会的路上迷路么,遥遥的几光年。或许他们在相遇的路上会遇到别人直到离开原本的路线。

什么事情都有可能,所以我随时最好接收最坏结果的打算。

发疯似的沉溺工作,沉迷于代码之中,6点左右下班,我会呆到7点半。

回家的路上,会看到很多情侣,他们互相的挽着,很亲密的样子。

路上路过一家人的饭桌,他们把饭桌摆在路边。桌上有一包榨菜,男人很用心的咽着米饭。女人的碗里面,盖着白米饭的,有一块大排。

有种相濡以沫的感动。

转念一想,或许那个男人已经吃完了2块大排呢?:)

爱情就像鬼魂,我们都知道他的存在,但是谁也没有见过它。

或许它藏在人的心底,体现在人的一举一动中呢?阿门,愿主保佑。

2006年的第一个7月7日,我很寂寞,却不孤单。

btw:理智消失的第50天,希望她身体健康,万事如意!

Tags: 七月七日, 七夕

loadrunner小试牛刀

问题:同一个页面,不加入图片,载入时间比加入图片时间慢一个数量级。原因如何?

分析该页面,其中共有六处应用了自定义标签的include,在cms的应用中,需要app先到标签库查找标签,然后根据调用的页面到一个页面配置文件中寻找相应的jsp文件名。跟踪页面进去,发现其中有2个页面需要权限验证,通过session操作。还有4处,一处为左边连接页面,一处为右边查询页面,一处为一个内容列表页面,还有一处也就是bottom页面。先用loadrunner压力测试。10并发。(先给测试机器把图片全部加上!)

loadrunner测试过程如下:

在Virtual User Generator中选择创建一个新脚本,选择Single Protocol Script,选择Web(HTTP/HTML),点击OK。点击" "开始录脚本,在URL中输入http://192.168.1.22/*****/index.html,点击OK。(不带端口的原因是因为俺用apache+weblogic做了一次小的负载均衡,所有的serlet的请求由apache转发到weblogic,原文见手把手教你集成Apache+weblogic)因为仅仅对首页做一次压力测试,那么不用打开其他的页面,也就是只有2次event,一次打开index.html,一次是自动提交到servlet的转发。

执行一次TOUPPER操作,停止录制。在此处需要点击保存,就是那个软盘一样的按钮,保存到scripts的目录下面。(可以打开安装目录,在scripts目录下寻找你命名的文件夹,action.c就是该测试用脚本。)
打开控制器(Controller),创建一个新的Scenario,选择刚才录制的脚本,点击"OK",弹出Scenario调度界面,如下图所示。在"Quantity"中输入10,表示使用10个虚拟用户,点击"Edit Schedule"来编辑压力调度。选择"Runtime settings"来作运行时设置,在Pacing的设置中,"Number of Iterations"用于设置Vusers的Actions被执行的次数;"Start new iteration"用于设置调度器在什么时机迭代执行Vusers的Actions。"Think Time"用于设置Vusers的反应和思考时间,以尽量做到和正常人一样来施压。"Ignore think time"表示忽略思考时间,这是理想状态,一般不使用。"As recorded"表示按照录制时的实际操作时间。"Multiply recorded think time by"表示Vusers的思考时间是实际录制时间的若干倍。使用进程模式进行压力测试。ok,设置完毕,开始测试。

返回avg时间:9.564s。(好像是不是太大了一点,貌似偶也不大清楚这个avg的单位是啥,但是一个页面的10用户并发,就达到了9.564秒,是不是太夸张了点?)

第一次分析的结果是标签引入的原因,ok,我全部用jsp的include来试试。

返回avg时间:7.634s。提高了20%多。

得出一个结论:

页面的载入,如果过多的试用标签include,就不如使用jsp自带的include,让速度快一些。不推荐使用iframe。最好的结果是把所有的内容写入一个页面,虽然会让源文件有些大,但是载入的速度一定比多个页面的include要快很多。

Tags: loadrunner, include

寂寞的时节

酷暑难耐,昏昏欲睡。

慵懒的感觉,不够激进。

讨厌这个状态的自己,连吃饭都没好的胃口。

远离网络,找本书看看去!

xml总线思考

在普元培训EOS的时候,一直很好奇EOS的xml总线的运作机制。

在session中,俨然的保存的是一个xml的文件。然后在不同的区域放置不同的内容,不同的内容有不同的内容的生命周期。比如biz的部分放的是业务逻辑需要调用的数据,业务完成后销毁。而session的部分就放着整个应用的一些需要的session,因为是总线来装载数据,站在面向对象的角度来说,程序的编制就是对数据的一些定位和操作。而如果面向服务,那么每一个业务逻辑都可以作为一个webservices来调用,只要你给他喂符合格式的xml数据进去,他就能处理你的要求。那么,如果沿用这个xml的总线的思路,可以架构出相当好的程序。姑且不论健壮性,其程序的扩展性理论上是可以无限制的扩展的。那么在现如今的web应用中,如果能用apache+weblogic来做一定限度的负载均衡,那么session的传递应该会出现一些莫名其妙的问题,那么也就是说,可以用一个cache文件来做这个文件的处理。在application启动的时候,servlet启动该应用来对xml文件初始化,然后把文件内容放入内存,这样是不是可以架构出好的应用呢?:),会导致硬件的发展。哇哈哈哈。因为并发的时候会吃掉相当的内存地。

在IBM听了3天的portal的东西,虽然到现在就知道portal是一个门户地概念,但是根据同志们地讲解,貌似就是面向服务的开发了。:)培训的老师说,1g的内存启动应用35分钟,2g的内存启动应用12分钟。这算不算IBM的贡献呢,这丫推动了硬件的发展。:)。往后的程序员都是傻瓜级别的程序员了,所以要学习一些比较好的思想和业务。:)、

以前写过一些关于xml的文件的操作和处理,来小小的实现一下试试?

今天把blog.01webspace.com的首页给更新了,放置了一个可以拖动div的html文件。做了一些连接过来,希望能有一些效果的提高本blog的PR值。

btw:

  1. 天气很热
  2. 人慵懒的不想思考。
  3. 肥了一圈!
  4. 理智消失的第48天!

Tags: xml总线

手把手教你集成Apache+weblogic

集成Apache和weblogic,主要的用途是Apache提供全部的静态资源的访问,而weblogic提供关于java的方面的解析。下面说说我的解决方案。

1.下载apache,首选是apache的2.05的版本,因为要和测试服务器上的Weblogic配套。而服务器上的weblogic的版本为8.1。

2.安装apache(此处省略)。

3.打开weblogic的安装目录,在.....\weblogic81\server\bin\目录下面找到mod_wl_20.so,copy到.......\Apache2\modules\里面。

4.打开.......\Apache2\conf\目录下面的httpd.conf文件。添加

############################################
#author:stringlew                                                                    #
#time:06.7.28                                                                           #
#method:for the weblogic module                                       #
############################################
LoadModule weblogic_module  modules\mod_wl_20.so
####################end#####################

就字面上的意思理解,可以知道是load该模块文件。上面的是注释,写程序要养成良好的写注释的习惯么。:)

添加

############################################
#author:stringlew                                                                    #
#time:06.7.28                                                                           #
#method:for the weblogic module     filter                           #
############################################
<Location /servlets>
SetHandler weblogic-handler        #设定头
WebLogicHost 192.168.1.22  
WebLogicPort 7001
</Location>
<IfModule mod_weblogic.c> 
WebLogicHost 192.168.1.22     
WebLogicPort 7001
MatchExpression */servlet/*        #设定需要转发的url的后缀
MatchExpression *.html               #测试机器上的为index.html,用javascript自动提交表单。
</IfModule>
####################end#####################

ok,添加完毕。

5.restart weblogic and the  apache.

6.打开服务器的url进行测试,在htdoc的目录下按照应用的层次建文件夹,copy在weblogic应用中的js,css,图片等静态资源到htdoc的相应的目录下面,打开ie进行测试,搞定! 打完收工。

总结:在过滤转发的时候有一个需要注意的地方,如果访问的网址在/servlet/前面有东西,一定要加上*号,否则错误都报的让人很郁闷的。

细节很重要!

Tags: apache, weblogic

Records:27123456