摘要:
在以前的两篇文章(Discuz!NT 缓存设计简析, Discuz!NT中集成Memcached分布式缓存)中,介绍了Discuz!NT中的缓存设计思路以及如何引入Memcached,当然前者是IIS进程的缓存(本地缓存),后者是分布式内存对象缓存系统。两者通过Discuz!NT中的memcached.config文件中的ApplyMemCached结点的值来决定使用哪一种缓存方式。不过在之后,有朋友反映当使用Memcached时,特别是在大并发来时,效率会打折扣,甚至有很多时间会消耗在socket套接字(创建和传输方面)上。而事实上也的确如此,尽管Memcached在使用池化的方式初始化一定数量的套接字资源(之前测试时实始化为128个链接),在小并发(100左右)时,可能问题不大,但并发上了1000-2000时,其效率要比本地化缓存机制低1/3(loadrunner测试场景),比如loadrunner测试1000并发时,如果showtopic(显示主题),本地缓存处理时间为15秒,而使用memcached可能会达到25-35秒。
阅读全文
摘要:
周五开会时,有人提出在团队中采用结对开发的Agile实践。当然团队里有人说,如果让新手与水平高的人结对,基本上就是知识的单向传递了,对于新手来说的确是个不错的学习机会,但对于水平高的开发者,就未必不乐意了。不过雨辰心里想,这样还有一方受益,就是公司,因为公司巴不得每个新人都能在最短的时间内变成‘高手’,这样就可以用比高手低的多的工资来获取高质量的代码。会后,雨辰在MSN上遇到了老杜,说了这样开会的事,并把自己的想法告之了老杜。
老杜在MSN上发了个笑脸,回复:“结对无外乎如下几种情况。” 阅读全文
摘要:
自从上回老杜把TDD,DDD在中国的处境看成是‘水土不服’之后,雨辰就一直想找个机会再跟老杜‘理论’一下。后来在整理以前资料的时候找到了Ivar Jackbson(UML三友,用例的发明人)在2008中国之行时做的一次演讲时用的PPT,其中提出了一种称之为‘明智软件开发’的软件开发思路。雨辰当时看这个大约4M的ppt时的第一印象就是Ivar破天荒的提出将UP与敏捷有机结合到一起,并最终用于软件开发的过程中。让这两个阵营中的优秀思想相互补充,各自发挥所长,听起来倒是一种不错的想法。 当然IVAR也对AGILE阵营中对“架构”的偏激思想进行了反击,正如后来孟岩所总结的那样:
阅读全文
摘要:
周三中午吃完饭,雨辰从食堂回来,发现开发小组中的一位姓黄的同事(组里管他叫老黄牛)正在看一本.net的书,因为这几年雨辰已基本上不再买技术类的书了,因为真正看的上眼、有价值、有水准的书籍前些年基本都翻遍了。雨辰带着好奇心走过去问老黄关于该书的一些情况,因为已过了对那些所谓标以‘入门’、‘精通’,‘深入浅出’,‘宝典’之类图书的‘感冒期’,所以就单刀直入,问了老黄正在看的部分。老黄也很高兴有人一起交流,就说:“目前正在看关于控件开发方面的内容,该书用了近50页的篇幅来介绍控件的原理,开发流程,相关函数方法,示例啥的。”
阅读全文
摘要:
cwRsync,软件分为服务器端/客户端,用于同步或备份文件,本文介绍如何用最简单的方式配置同步信息,并创建定时备份(截图方式)。 阅读全文
摘要:
最近有些时间,开始接触负载均衡方面的东西,从硬件F5再到Citrix Netscalar。不过因为硬件的配置虽然不复杂,但昂贵的价格也让一般用户望而却步(十几万到几十万),所以只能转向nginx,squid这类有反向代理功能的软件了。好在其设置都不是很麻烦。 阅读全文
摘要:
美国总统所居的白宫是首都华盛顿一景。正对着白宫的拉法耶特公园人行道边还有一景,那就是康塞普赛昂·皮奇奥托女士(朋友称她为康妮)和她的朋友威廉·托马斯先生安扎了22年的示威营地。
今年56岁的康塞普赛昂·皮奇奥托出生于西班牙西部,从小便是孤儿,是祖母将她拉扯成人。祖母去世后,18岁的她来到美国寻梦,最初在西班牙驻纽约总领馆谋得了一个秘书职位。21岁时,她与一位意大利商人成婚,并于1973年生下一女。但这一婚姻仅维系了20个月便告终结。皮奇奥托不愿透露其间细节,只是说从此后她失去了丈夫、女儿和工作。
此后,为了取得对孩子的监护权,她曾在7年间不断奔走于曼哈顿、马德里和华盛顿的法院之间,也曾求助过美国当地议员,但均未能如愿。最后,她决定走上街头申诉。1980年,她在华盛顿得到了一个临时代人照看孩子的工作。工作之余,她便走到白宫前举着标语牌期求伸张正义。
阅读全文
摘要:
郑伟听雨辰话题一转,便正色道:“你说是silverlight3.0吧,我其本上通过SDK了解的差不多了,眼下我主要的兴趣还是在其视频的支持上,按其官方提供的技术文档说是新增了H.264,AAC,MP4格式支持。你呢?”
雨辰笑着说:“还是在其复杂数据展示上面,我想富媒体展示和交互是其主要方向,必定其对手是FLASH,换句话,FLASH中的优势应该被silverlight所吸取并完善。另外我们的产品中也使用了SL进行开发了。”
阅读全文
摘要:
在之前的两篇文章中,基本上介绍了如何录制脚本和生成并发用户,同时还对测试报告中的几个图表做了简单的说明。今天这篇文章做为这个系列的最后一篇,将会介绍如何通过测试报告来查看系统的运行情况,找出影响性能的因素,以及如何去进行优化。首先,看一下这张并发用户的图:
阅读全文
摘要:
在上文中,介绍了如果录制脚本和设置脚本执行次数。如果经过调试脚本能够正常工作的话,就可以设置并发用户数并进行压力测试了。 首先我们通过脚本编辑界面上的“工具”菜单项,选择该菜单的第二项“Create Controller Scenario(创建控制场景)”,这时,lr会弹出一个窗口,我们只要在select scenario type项中的number of vusers设置成1000,这样我们就可以用1000并发用户来测试我们上文中所执行的操作了,如下图:
阅读全文
摘要:
DiscuzNT3正式版发布已经有一段时间了,最近半年多来很少再写关于这个产品的技术文章了,一是时间,二是精力有限。不过在正式版发表之后,倒是有了些功夫,同时我们的一个商业客户在从2.6版本升级到3.0正式版之后,出了一个小插曲,导致不得不退回到2.6版本。因为这个客户的论坛访问量和发帖量比较大,平时在线人数5000,日发帖量在2-3万左右。所以出了一些性能上的问题,在大并发情况下,服务器响应超时,且在峰值时越发不稳定。之前我在公司内部用了tinyget做了一些简单的压力测试,发现了一些问题,但原因尚不明显,所以在公司会议上就有人提出使用loadruner来做一下压力测试,看看3.0产品的性能倒底如何,是什么造成用户的服务器不稳定。所以就有了今天的这篇文章。 阅读全文
摘要:
在写本文之前,本人一直抱着‘不宜’在asp.net MVC框架下搞什么控件开发的想法,因为一提到控件就会让人想起‘事件’,‘VIEWSTATE’等一些问题,而asp.net MVC下是Controller, Action, Viewpage, Filter等特性的‘天下’。所以总感觉‘驴唇对不上马嘴’。但直到前阵子在邮箱中收到了关于telerik关于MVC框架扩展的一些信息之后,才发现这家商业控件公司也开始打MVC的主意了。而这个项目(开源)就是该公司在理解了asp.net mvc的基础上所做的一些尝试,当然其所实现的所谓控件与之前我们在项目中所开发或使用的web服务器控件有很大的不同,可以说是抛弃了以往的设计方式。尽管目前它的这种做法我心里还打着问号,但必定是一种尝试(不管你赞同还是不赞同)。下面就做一个简单的分析,希望能给研究MVC架构的朋友提供一些的思考。 阅读全文
摘要:
周末,郑伟约雨辰出来吃饭,正在最近雨辰吃得比较素,正好就着这次机会改善一下生活。两人周六晚上到了王利餐馆,要了几个晕菜,开了两瓶啤酒,有说有笑的边吃边聊了机来。两人从大学开始,一直聊到毕业之后找工作,又聊到眼下的国内经济形势,聊着聊着就扯到了雨辰昨晚在天涯社区上看到的一篇文章。浅析人们“为什么要装B”以及“怎样装B”,文中对人们装B的心态和原因做了一定程度的分析,虽然有些YY的嫌疑,但还是挺有意思的。
阅读全文
摘要:
周一中午吃过午饭,雨辰发现老杜MSN正在线上,就打了个招呼,老杜也挺闲,哥俩儿就聊了起来。侃了一会,就把话题转到了一则之前的新闻上:富士康员工因丢失iPhone被调查跳楼自杀
雨辰是前些时候在CSDN上看到这则新闻的,一开始还真是挺气愤,主要是公司怎么能把员工逼到这个份上。雨辰想听听老杜对这个事的看法,就把新闻链接发了过去,不一会儿,老杜在那头回复说:“MD,以前都是卸磨杀驴,现在倒成了‘驴的自杀’,可叹呀!”
阅读全文
摘要:
今天早上在MSN上,老杜说他终于决定买房了,已排了号定金也交了,说下班时要约大家一起出吃钣。MSN 上郑伟和老刘正好都有时间,就定了下来。
雨辰因为下班有点小事,处理完之后已经快18点半了,看了看时间,就到楼下打个车直接去了王利的餐馆。等到时,老杜他们早已点了菜并要的啤酒。老杜招呼雨辰到靠窗子的那张他们经常座的桌子那边。
阅读全文
摘要:
可能是我观注的东西有些另类,导致目前我找到的SL在线编辑器只有三款。今天借此文将其做一下总结,同时也为有‘相同爱好’的朋友提供一些参考。这三款都是商业的,并且成套买价格不低。对于我这种穷人来说可望不可及,所以只能在其官方DEMO上过过‘手瘾’了。当然本人也在考虑自己开发一款这类控件(之前问过微软工程师,回答说VS中直接提供的可能性不大)。因此我感觉其还是很有‘钱景’的,呵呵。废话不多说了,先看看这三个编辑器的‘庐山真面目’吧。
阅读全文
摘要:
本文阐述我和周围同事对于MDA,DDD,TDD, FDD的看法,内容可能有些偏激。
声明:在写这个系列文章的过程中,园子里有些人投来了怀疑、鄙视、甚至匿名谩骂,当然也有朋友跳出来支持并提出意见或建议的。我这些天想了一下,感觉写文章不一定要让所有人都接受,必定众口难调,有时为了照顾大多数,有时只为与别人进行交流,以提升自己看问题的高度或解决问题的能力。所以在这里我只能对那些反感我所写内容的人提前打声‘招呼’了,千万别再看我写的这个系列了,因为这个系列有些内容在你们眼里只是些‘垃圾’或是‘毒药’,会脏了你们眼的,你们只要看到‘IT餐馆’的字样就权当‘没看见’好了。当然明知‘不应该看’,但‘还要去看’,也许说明你没有管住你手中的鼠标,或只为找个人骂上一通,或出于什么目的。另外对‘这样的文章不应放在首页’这样的话,我相信cnblogs管理团队不是吃闲饭的,他们是有自己的标准来衡量的,请相信他们。如果不相信,非要自己跳出来‘不辞辛苦’的反复说,那就只能悉听尊便了。另外我以后往园子首页发文章的时候也会斟酌一下,考虑一下大家的感受,必定交流的人多了,才能不断学习进步,呵呵。
阅读全文
摘要:
今天获知自己得奖了(http://blog.51cto.com/active/no1/8.html),信息如下:
本期获奖结果揭晓 第八期博客NO.1活动于2009年8月20日圆满结束,感谢大家的热烈参与!
李云、daizhenjun(本人)、闪电cto、yaksayoo 、leizhimin五位博友凭借出色的实力获得本期“博客No.1大奖”。 阅读全文
摘要:
自打进入八月份以来,北京的天气依旧炎热。只不过在傍晚的时候不再像七月份那么让人睡不着觉。这几日雨辰在自己的邮箱中终于把AZURE平台的所有TOKEN都收集齐了(算来自申请之日到今天已过了大半年了)。而郑伟比自己的运气要好许多,早在上半年就有了创建AZURE平台上相应项目的TOKEN,所以在这方面他走到了雨辰的前面。周五下班回家,雨辰就开始尝试着往AZURE平台上迁移自己团队的产品。之前与微软工程师的交流,基本上扫清了关于数据存储,文件上传,路径访问,URL重写等与产品密切相关的问题,心里算是有了一些谱。因为目前还没有特别有效的将现有VS项目自动转换成AZURE项目的程序,而VS里也不支持。所以雨辰又用了最笨的方案,就是先新创建一个AZURE的解决方案,然后手工一步步将现有项目下的物理文件复制到AZURE解决方案的路径下,就这样一直折腾到晚上12点,才基本上转换完毕,也在本地测试通过了。只不过可能是时差问题,上传相应的配置和打包程序文件时总是中途断下来。必定这时候正是美国人的工作时间,看来要等到周六上午再试试了。
阅读全文
摘要:
老杜听雨辰这么说:“行,大概情况摸清了。到时有什么问题再打电话沟通吧。看来你们这个产品是使用三层架构方式了,呵呵。不过你们想没像将来会不会随着业务模型的日趋细化完善,产品功能的多样性所导致的业务逻辑层不断扩充。最后会不会造成业务逻辑层越搞越复杂呀。”
雨辰笑了笑说:“这个问题的确考虑过了,目前我们就遇到了类似的一些问题,比如我们的产品在去年加入了空间和相册功能,当时是采用了新建项目的方式来将其引入到解决方案当中,而这些新增功能都是直接引用了业务逻辑层的dll。后来考虑到有些用户可能不太乐于使用这两个功能,所以我们就又改成了‘插件’的设计方式,使之受制于后台‘开关’设置,只有开启插件功能并检查相应插件DLL是否有效后,插件才会启用。这样就把业务逻辑层扩展到相应的新增功能的‘业务逻辑层’(空间相册也有相应的业务逻辑层)中,并进行插件接口级别的定义扩展了。另外,继FACEBOOK开放API之后,‘开放API’成了时髦话题,所以我们不可避免的遇到了这个问题。刚才我说过,这次重构业务逻辑层的‘标准’之一就是让其方法适合于以API方式进行‘暴露’,而API只要直 阅读全文