公司一个项目打算基于MOSS2007来开发,经过一段时间的折腾(之前项目组的人都没接触过SPS/WSS),对这个微软现在力推的东东有了初步的认识。在实际应用中碰到了一些问题,虽然问过很多人(国内外的很多SPS专家),但是还不知道怎么解决,现在总结一下:
一 性能问题
用过SPS的人都知道,访问速度是它的一个硬伤。现在在Internet上的SPS网站,除了展示信息(如中石油等)还没有看到和用户有大量交互的应用,更别说把诸如文档管理等SPS的一些强项拿出来了。SPS到底有多慢?
前几天做了一些对比的性能测试,结果放在下面(工具用的LoadRunner,用Robot也做过,但是没有详细的记录):

测试网站

A

B C

页面

默认主页 默认主页 默认主页

页面大小

41.4K 33.3K 5.3K

并发用户数

100 100 100
第一次测试结果 最大响应时间 26.70 12.31 12.29
最小响应时间 9.33 5.19 0.65
平均响应时间 17.52 7.38 5.57
第二次测试结果 最大响应时间 21.59 11.98 24.21
最小响应时间 8.25 5.81 0.36
平均响应时间 16.26 7.74 9.23
第三次测试结果 最大响应时间 24.86 11.64 24.48
最小响应时间 7.81 4.58 0.39
平均响应时间 15.69 6.67 10.82
备注 在C上并发用户会有出错的情况(一般是10-30个),
错误为连接超时或连接不到服务器.而AB没有这种情况.

其中A是我们为这个项目开发的网站,B是一个MOSS空网站(即只是简单的通过Central Administrator创建,对页面未做任何修改),C是公司另外一个项目的网站。
A的主页上有4张图片,一个Flash,这个页面的内容是全部自定义。
B是用TeamSite模板建立的。
C是一个简单的登陆页面,只包含一个图片。
其中AB都开启了匿名登陆,这三个页面的访问都不存在验证问题,仅仅是请求一个页面。

我用的版本是B2的,暂时还没有升级到B2TR,而我相信速度问题不是升级可以解决的,SPS的结构决定了它就是这么慢(虽然我的测试结果不一定准确,也可能做一些优化)。如果是这样,MS开放它干什么呢?从2003到2007可以看出来MS是想让SPS应用到Internet上的(一系列的转变,包括完全基于ASP.NET2.0和提供了Form验证等),但是这样的结构(能放在数据库的全放到数据库了),能怎么提升速度呢?不要告诉我Page Ghosting什么的,看看B的测试结果。

二 验证问题
用2003的时候很多人都觉得不错,但是只能使用AD验证,问题来了。能不能放到Internet上去?那样的话做Web应用该是多么爽的一件事,SPS有那么多让人激动的功能,不说别的,就文档管理和全文检索,你自己去做看看?你看要做多久,你看做出来之后会有多少Bug。MS非常的体谅我们,于是2007刚出来的时候,几位国外的高人就把Form验证弄出来了。
但是,我真不喜欢用但是这个词,问题又来了。以前2003和AD为什么要结合那么紧?我想MS多少有它自己的考虑。你用SPS,OK,你用不用Word?用不用Excel?甚至InfoPath等?别说你不用,这些东西和SPS都集成了。那这些东西的验证怎么办?难道还指望在Word里加一个Form登陆的东东?
折腾了一段时间后,我们好象明白了,如果硬要把SPS Site弄成Form验证,那这些我们想要的,客户需要的Office的东西都没办法用了(如果你知道怎么解决,希望你可以告诉我)。

三 其它
有一些我还不确定的或者不是属于技术方面的问题,比如InfoPath要安装客户端,这一条就会吓退很多用户(我们项目的用户),WorkFlow不管是配置还是使用对用户的要求都超高(结束一个WF的时候还得去结束这个Job(or Task?)),Office2007什么时候才能普及?等等,不在这多说。


最后我还是得说,MOSS真是个不错的东西,通过这段时间的研究,发现MS力推它确实没错。对一个企业或集团来说,使用MOSS的好处就不一一列举了,光是它的稳定性,Bug少这两点,就足以击败很多国内开发类似的应用的公司。但是想把MOSS放到Internet上,而同时不受到AD和速度的限制,不知道要等到什么时候。
posted on 2006-11-06 16:41  有些伤感  阅读(2356)  评论(15编辑  收藏  举报