技术人生:故事之六 NOVELL和NT谁好

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/baiedu/article/details/48554039

我的公司是NOVELL总代理,并做了多年NOVELL产品,非常有市场,而我则沉迷于NT环境,自然是公司技术中的最差者,也是技术敌人。那个时代还是网络时代,很少有人将网络和软件应用结合起来,认为网络有了,就有了一切。本来嘛,大家见到共享了打印机并共享了一个磁盘空间,不是网络是什么,我的应用的论调没有人听得懂,也没有用户需要。
但在银行,当一个公司辛苦地安装仿真终端,为了在WINDOWS下使用AS/400程序的时候,我坚信微软产品的能力了,因为SNA早就解决了这个问题,于是提出使用SNA,但为时已晚。
到了1996年,忽然间NT风起云涌,我自然成了公司的重点,但那些NOVELL高手们根本不相信NT的能力,我无法从进程/线程/多协议和C/S上说服他们,只好讲述了一个故事,试图说明它们的不同:

在一个银行中,如果是文件服务器的工作方式,用户将进行下面的取款工作:
用户填写取款单,然后交给服务员,服务员确将键盘递到用户面前,让用户输入银行帐户信息,当然用户需要懂得银行业务,否则他不能操作,用户填写了单据后,并亲自打印,将打印结果给服务员,服务员只是将单据放到办公桌里,用户再告诉他要取的钱数,服务员又将许多单据给用户,让用户填写,实际上用户在进行银行的业务工作,用户做完工作后,服务员仍然是简单地将单据保存,并将一打人民币给用户,用户取了自己的钱数后,服务员才将钱柜放好。这样,用户的钱才能够取出来了。
可以看出,服务员并没有进行他应该做的工作,只是传递单据和必要物品。文件服务器也是一样,它只是传递数据,并没有处理数据。
这是我经常用来解释文件服务器和客户机服务器不同之处的简单的例子。也许有人会问:“ORACLE可以在NETWARE上运行啊?”,但实际上,ORACLE已经扮演了部分操作系统的角色。从本质上来说,NETWARE仍然只是传递数据。而当多个请求到来时,它就分别运行多个程序(而不是进程),导致的结果是,内存空间要求急剧上升,这就是为什么它要求更多的内存的原因。

客户机/服务器
这种方式下的数据处理就不同了,同样是银行工作,用户只需要将取款单给服务员,至于服务员经过多么复杂的工作,他不必关心,只需要等待得到要取的钱就行了。这就是重要的问题:请求和服务问题。达到了请求和服务,才是理想的。

谁胜利了?我们都默默走开,从此没有这样的争论了。
这个故事,在今天看来似乎已经是历史了,NOVELL也在进步。但通过这个故事,作为程序员应该深深理解C/S结构,以及它自身是否存在缺陷。这就是以后将谈到的“中间件”概念和相关技术。

展开阅读全文

没有更多推荐了,返回首页