Tuesday, January 27, 2009

Gran Torino,you are not alone!

一首动人的歌,让人读到了人的内心世界
饱经沧桑的面孔上,充斥着内心的矛盾,孤独(此片告诉我们,狗是人类忠诚的伙伴)。。。
处处表现出对现实的排斥,性格的固执与坚强,鲜明的爱与憎
这就像是一部老爷车,从来不会依照别人的眼光而去刻意改变或装饰自己,但却是最可靠最值得依赖的!
悲剧让老爷子的死有些壮烈,但悲剧给人的印象是深刻的,也使电影有了个合理的结局:一切都会过去,人都会变老,逝去。。。不过他的精神却被一个年轻人继承了下来,传承下去!

结尾的歌曲,我喜欢eastwood和Jamie cullum都有唱的那个版本,老爷子的嗓音是对这首歌最好的诠释:
http://www.youtube.com/watch?v=HEXF7U5TYV8



Gran Torino 老爷车
(Jamie Cullum & Clint Eastwood)


[*Sung By Clint Eastwood*]
So tenderly 如此温和
your story is 你的故事只是
nothing more than what you see 你所见到的和你所做过的事情
or what you've done or will become 你会变得坚强
standing strong do you belong 你会表里如一
in your skin; just wondering 只是还有点怀疑

gentle now the tender breeze blows 微风轻轻地吹
whispers through my Gran Torino 飒飒吹过我的老爷车
whistling another tired song 吹哨着另一首疲惫的歌

engine hums and bitter dreams grow 引擎嗡鸣 苦涩的梦继续
heart locked in a Gran Torino 心锁于老爷车
it beats a lonely rhythm all night long 整晚敲击孤独的节奏
it beats a lonely rhythm all night long 整晚敲击孤独的节奏
it beats a lonely rhythm all night long 整晚敲击孤独的节奏


[*sung by Jamie Cullum*]
Realign all the stars above my head 重新排列头顶上的所有星星
Warning signs travel far 警告牌越行越远
I drink instead on my own Oh! how I've known 我借酒消愁
the battle scars and worn out beds 我多么熟悉战争的伤痕和磨损的睡床


gentle now the tender breeze blows 微风轻轻地吹
whispers through my Gran Torino 飒飒吹过我的老爷车
whistling another tired song 吹哨着另一首疲惫的歌


engines hum and bitter dreams grow 引擎嗡鸣 苦涩的梦继续
heart locked in a Gran Torino 心锁于老爷车
it beats a lonely rhythm all night long 整晚敲击孤独的节奏

these streets are old they shine 这些街道都老了
with the things I've known 我熟悉的那些事物闪耀着光
and breaks through the trees 闪闪光辉穿过树丛
their sparkling

your world is nothing more than all the tiny things you've left behind
你的世界不过是你抛弃的那些微小的事物


So tenderly 如此温和
your story is 你的故事只是
nothing more than what you see 你所见到的和你所做过的事情
or what you've done or will become 你会变得坚强
standing strong do you belong 你会表里如一
in your skin; just wondering 只是还有点怀疑



gentle now the tender breeze blows 微风轻轻地吹
whispers through my Gran Torino 飒飒吹过我的老爷车
whistling another tired song 吹哨着另一首疲惫的歌
engines hum and bitter dreams grow 引擎嗡鸣苦涩的梦继续
heart locked in a Gran Torino 心锁于老爷车
it beats a lonely rhythm all night long 整晚敲击孤独的节奏


may I be so bold and stay 我可以鲁莽地留下来吗
I need someone to hold 我需要一个可以拥抱的人
that shudders my skin 使我的肌肤战悚
their sparkling 的是他们的光芒


your world is nothing more than all the tiny things you've left behind
你的世界不过是你抛弃的那些微小的事物


Realign all the stars above my head 重新排列头顶上的所有星星
Warning signs travel far 警告牌越行越远
I drink instead on my own Oh! how I've known 我借酒消愁
the battle scars and worn out beds 我多么熟悉战争的伤痕和磨损的睡床


gentle now the tender breeze blows 微风轻轻地吹
whispers through my Gran Torino 飒飒吹过我的老爷车
whistling another tired song 吹哨着另一首疲惫的歌
engines hum and bitter dreams grow 引擎嗡鸣 苦涩的梦继续
heart locked in a Gran Torino 心锁于老爷车
it beats a lonely rhythm all night long 整晚敲击孤独的节奏
it beats a lonely rhythm all night long 整晚敲击孤独的节奏
it beats a lonely rhythm all night long 整晚敲击孤独的节奏

Sunday, January 25, 2009

今天是除夕。。。

除夕之夜,祝愿所有人平安,健康!2009,希望的起步,也许很艰难,但是顺着霞光,努力的走下去!
昨天自己看了“救火员”,体会到了一些东西,虽然故事情节一般,但的确对我来说也算是“情景教育”:)给它打80分!

Tuesday, January 20, 2009

JMeter load get decreasing after a long duration test

Recently, I did a long duration test with a consistent load to the server to see how stable of our application is.

our application survival after almost 12 hours torment,but seems JMeter can not generate the consistent load(load get decreasing a lot) after about 5 hours or so, I do not know what happened to either our application or JMeter....

i just restart the JMeter only, so the load get back to normal again, it should be some problem on JMeter side:

BTW, I just add the aggregate report listener only during long duration testing, and no other logs output.

Have anyone met this problem before? someone found aggregate report will get the load down due to increasing calculation of 90% line.

Friday, January 16, 2009

Speed simulator, added into my toolbox :)

Found one Cool tool to do network speed simulation testing---Speed simulator, it can simulate from 4.8Kbps to 1Mbps

you can find it here :http://sourceforge.net/project/showfiles.php?group_id=212588&package_id=255744&release_id=624415


Speed simulator is a simple throttling proxy which allows you to see how your site behaves under diffrent connection speeds.

LR scripts debuging on controller, try to make a "product" without a bug

These days, my team member met certain problems on the Loadrunner scripts during running in the controller, However the scripts run smoothly in Vugen with many loops...

The errors he got from LR controller is a lot with 10+ concurrent vusers
First, debugging with the first error info always:
I just want to make sure that which is the very first error, and analysis the error which page may have the problem.

Second, can we reproduce this error in the LR controller with only single user??( precondition:the scripts run smoothly in Vugen)

If Yes, then we enable the log level settings in the run-time settings: usually i want to have "always send messages"-->"extended log"-->"parameter substitution" enabled meanwhile i will add bellowing codes:
lr_set_debug_message(LR_MSG_CLASS_EXTENDED_LOG|LR_MSG_CLASS_RESULT_DATA, LR_SWITCH_ON );

failed transaction;//which can be reached by the very first error info

lr_set_debug_message(LR_MSG_CLASS_EXTENDED_LOG|LR_MSG_CLASS_RESULT_DATA, LR_SWITCH_OFF );

uncheck "continue on error" in run-time settings, then run the test in controller again

After running, the error show at the same place, open the log file in the result location which you set in the report menu.

Read the log like you do with vugen, then you can find which unexpected page(response data) you got, is it related to some parameters setting? or really a server problem?(you can manually verify it if it is a server error)

If No(only happens under concurrent load), the most possible problem may related to the parameters you set, I would like to have "always send messages"-->"extended log"-->"parameter substitution" enabled and uncheck "continue on error" , to check the parameters we pass into scripts in the log file after running the script.

Another way you can write some code to print out into the controller console as an error message... anyway, you need to use any manner wisely to see what exactly happened when there is an error message. Do not let every small error pass in the script tuning phase... we are making a "product" without bug :)!

Last thing, Content checking code is very very important, I found some people does not like to write this.
But it saves us from the fake performance testing, it is really harmful and misleading if our scripts do not work correctly but it does not trigger a fail transaction!

锁住幸福,锁住快乐--Lock&Lock

今年的年会增加了奖品互换的环节,我准备的是一套Lock&Lock礼盒,不得不说自己是一个很“实际”的人,或者说对浪漫不感冒的人。。。。我更多的想到的是怎样解决他人的温饱问题:)

现在插播一段电视购物:
有了Lock&lock,以后中午带饭就方便了(有饭盒);
有了Lock&lock,以后工作喝茶倒水就容易了(有茶杯);
有了Lock&lock,以后存储零钱、杂物就方便了(有小储物箱);
嘿嘿,很实用,但却没有任何的美感;能做事,但却可能没有任何人会在意;

祝福每一个人,都能在新的一年珍惜幸福和快乐,因为他们来之不易,但却容易悄悄的溜走。如果有一天,我们真的可以锁住幸福和快乐,遇到困难时,打开盒子,用上那么一点,让我们快乐,那该有多好!

BTW,三年了,还没抽到过奖,难道运气被真的藏进了Lock&lock里?:)
春节快乐!

Sunday, January 11, 2009

火车票,真的“一票难求”!

今天熬了个通宵,没有睡觉,4点40从家出发,为了暖暖身子,路上一路小跑地到了售票处,5点刚过。。。。
没有觉得自己去的很早,但那边已经有30多人排在了我的前面,最早的一个老兄是昨晚10点就开始排队---凳子,毯子,毛巾,水壶,帽子,军大衣。。。。。你还有什么话,人家是专业干这行的,一看行头就知道了,老手!!别想太多了,排吧,6点30开始卖票,先要站一个半小时。
跟前后的几个兄弟聊天,打法时间,还别说,过的真快,一会功夫售票处的门开了,几个例行公事的警察在一旁看着,仿佛是在维持秩序,从前面不时的还是喊出几声:“喂,别插队了,你哪来的”

两个售票窗口,大家排成两排,挨个往里进,开始只要门一开,所有人都往里面挤(resource contention), 我跟旁边的警察说了句“为什么两排队伍,不能一次一边进一个人呢,这样大家都没有意见”,警察“恍然大悟”,直接去维持秩序了,的确井然了很多:)

悲剧开始了,开始几个人还都能买到票,有的人手里像拿着一副扑克牌似的,一张一张数着,让人看到是羡慕也是厌恶,有人情不自禁的前去瞅了瞅, 回来脸上露出了庆幸的笑容“还好不是到我那边的,都是到四川的”。。。。不过大部分人会买到3-4张票,无座居多,,那有座的票呢??
一个多小时的煎熬,终于轮到我了,心里有种坎特,尤其是在听到前面几位没有票的回答时,就觉得,可能3个小时的努力真的不够,我刚张开口跟售票员阿姨说,“请问,有去兖州的票吗?”,她直接说:“没有!”很果断,好像没有商量的余地,不行我不能这么快就放弃,“那您能帮我查查吗,也许您看错了呢”,仿佛在键盘上敲了两下,我也看不到屏幕,“没有!”冰冷的回答。。。
--“那去泰山的呢,T178次或者其他车都行”
--“没有!”
--“那去济南?
--“没有!”
--“那到兖州的动车D32”,这车最贵,不过也不抱什么希望可以买到。。。。
--“卖完了”,终于得到一句不是“没有”的回答了,我满足了
--“那去徐州的呢?”我在做最后的挣扎
--“也没有!”我的心凉了
8点多了,天已经很亮了,我走出了售票点,另外一个兄弟买到了去东北的车票,不过既没座,也不是直达的,但显然他已经很满足了
--“这年头,能买到车票就不错了:) 兄弟不要急,你找黄牛看看”, 兄弟在安慰我,感谢他
--“我再想想办法吧”其实说这句话的时候,只有无奈,不过还好,每年也都能回家,希望今年也可以顺利回家!
一票难求,但我求家人朋友幸福平安!这是我最大的愿望,哪怕不走这个形式!!
在联系“网上车票转让”中,碰到好心人,只加20元出售(辛苦赚来的),准备成交!

Saturday, January 10, 2009

"testing is overrated" by Luke Francl, so funny and meaningful

It reveals some actual facts within software development cycle, mostly emphasis
developer who should do the testing better and efficiently to prevent bugs in an early phase...

However, currently the (both dev and QA)testing is not good enough("good enough is not good" :) )

This video and slides are very funny to tell me the truth and impress me a lot, I watch for 3 times(of course, one reason is that it is just 20 mins,lol)

推荐这个视频,因为它很短:)
http://www.infoq.com/presentations/francl-testing-overrated

if you want to download Luke Francl's PPT, go to this link:
http://railspikes.com/2008/12/2/testing-is-overrated-great-talk

Thursday, January 08, 2009

Gzip matters!

一直以为Gzip是性能调优事半功倍的好办法,可是做好Gzip的trade off还是很重要的,今天就遇到Gzip之后,使用大量的load测试(enable下载所有的non-Html resources),导致apache server的CPU%非常高甚至死机。

想得出的潜在解决办法:

1.干脆不使用Gzip,小心网络延时。。。 :)

2.将web server的配置提高

3.将部分文件Gzip,需要做实验来判定哪些文件做Gzip能获得最好的收获

4.使用Gunzip方案,还在进一步测试中

5.将Gzip的等级降下来,一般Gzip的压缩等级从最低1级到最高9级,可以配置,需要测试得出最佳方案

6.注意browser和Gzip直接的兼容问题,可以选择性的将有些browser禁用Gzip

how to detect memory leak issue in JVM

昨天写在performanceengineer.com的一个comment,自己引用一下。博主已经很久没有更新网站,昨天一看,一下写了还不少:)

12 May 2008 - 11:22pm — joychester
why not use jconsole6 first

Here is my practice based on my daily testing work, not that hard if you make it systemiclly:
1.jconsole is a very good tool for detecting java memory leak issue at first.
2.narrow down the test cases or senarios to find which part may cause the problem
3.also i love jmap to get heap dump snapshot to get deep analysis after we are clear we have an issue on memory.
4. use some tool to read the binary heap dump file if necessary