米国的《独立宣言》告诉我们:人生来是平等的。站在人权的层面,这或许是正确的。
但事实告诉我们,站在能力与天赋的层面,人生来是不平等的。有些人天生会唱歌,有些人天生会跳舞,有的人天生语言能力强,有的人天生对数字敏感。
“Born to be or not to be”,天生适合什么不适合什么?这是摆在每个人面前的选择。但可惜我们大都没有行使这个选择的权力,在很多因素的影响(家庭,教育等)下,人们只能随着惯性,顺着大流去从事一些自己不那么喜欢或者不那么擅长的事情。
但比天赋更重要的是:只要够勤奋,肯努力,我们一样可以把这些事情做得很好。
人尤如此,软件亦然。对软件而言,同样有天生适合与不适合的分别。在某种特定背景下诞生的软件,自然而然具有某种特定的架构,适合于特定的用途。如果让某个方面已经较为成熟的一个软件,忽然面临一个崭新的需求,那么它也同样会有一个适应和转变的过程。[@more@]对R 4.5时的Notes就是如此。IT界继PC之后最猛的一股浪潮席卷而来,给Notes带来的与其说是新需求,不如说是新压力。
这股浪潮就是互联网技术,给Notes带来的压力就是对Web的支持。
事实上,对互联网的影响力,Notes体现出了足够的技术敏感。虽然Notes在R 4.5才正式成为交互式的Web服务器,但对Web的支持早在两年前R 4.0的时候就已经提供。在R 4.0时用户已经可以将Notes转换成HTML页面,然后显示在web上。虽然只是一个静态的格式,但毕竟是一个开始。
而互联网的飞速发展很快让Notes意识到,对Web的支持只做到这个程度是远远不够的,因为来自竞争对手的压力越来越大。所以1996年12月,IBM(95年完成收购) 推出Notes R 4.5,这种新服务器把互联网标准和协议的开放联网环境和 Notes 强大的应用程序开发设施结合起来,使企业和组织能够开发出业务的Web解决方案。也许是为了让这次变化更加有纪念意义,IBM为服务器取了一个全新的名字:
Domino。
可以说,Domino这个名字为了Web而生的,而此后的每一代Domino设计时,也都把对Web的支持改进作为非常重要的一个课题。
1996年,Domino R4.5支持将Notes的内容动态发布到网页上,开创了OA系统的Web新时代;
1999年,Domino R5问世,宣传口号是“生来与Web集成”;
2002年,Domino ND 6诞生,这次它的身份是三元归一的服务器(以Domino+Notes为代表的客户/服务器体系结构(“C/S”);以浏览器+Web服务器为基础的瘦客户机模式(“B/S”);以关系数据库内容管理为主的体系结构(“RDBMS”)),将Domino的B/S功能提到了与C/S功能等同的高度.
。。。
可以这样说:从诞生到现在,围绕着Domino服务器的web功能的改进就没有停止过.这些改进决不仅限于一些bug的修正,其中也包括很多模式上的修改。尤其是R5到ND 6,诸如活动线程处理模型这样的核心模块也做出了相应的调整,许多API或者函数也发生了变化(这也是为什么从R5到ND 6的B/S应用升级相对于C/S应用而言要复杂的原因),凡此种种,其目的只有一个,提高HTTP进程整体处理性能,降低对资源的占用。从实际使用来看,Domino的HTTP性能与功能确实是在不断的提高,而且每一个版本的改进相当显著。
然而从诞生到现在,围绕着Domino服务器的Web功能的争议也从来没有停止过。
对Domino服务器HTTP功能的置疑包括:
HTTP容易挂起或宕机,访问速度慢,Web服务器功能相对简单。。。
一句话,Domino不适合开发Web应用,因为它天生是做C/S应用的软件。
后半句我绝对同意,Notes从诞生之初就是用作C/S应用。从上一节Notes的架构介绍中我们也能感受到这一点,Notes客户端既可以远程访问服务器上的nsf库,也可以不经过服务器直接本地操作nsf库,本地库通过复制技术与服务器进行同步。毫无疑问,这是一个非常漂亮的C/S(客户端/服务器)架构——更确切一点——胖客户端架构(可惜这个年头,连客户端都流行减肥)。
回到本节的开始,“Born to be or not to be”,天生是什么不是什么?虽然R5时,Domino宣称过“生来与Web集成”(注意这个提法“集成”),但从根本上来说,Notes或Domino生来就是一种客户端/服务器应用,NOTES BORN TO BE A C/S APPLICATION! 这根本不用否认也无需否认,因为C/S绝不意味着落后与过时!(关于C/S与B/S的比较,在Domino的未来发展中我们还会提及,这里就不再赘述了。)
没错,Notes天生是C/S架构,更适合开发C/S的应用。无论是在客户端开发中更多的设计元素,还是客户端使用中更多的界面功能,都表明了Lotus对Notes客户端的器重,但是,这不能作为Domino不适合开发Web B/S应用的理由。
那么其他理由呢?
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8866403/viewspace-902812/
,如需转载,请注明出处,否则将追究法律责任。