上周我们谈到web services是服务导向架构 (soa; Service-Oriented Architecture)的血肉;而正确的设计观念和周详的导入规划则是soa 的灵魂。如果只是赶时髦、为web services而web services,无法掌握导入的精髓,那么充其量也只不过是具行尸走肉罢了,更别说能够为整体IT带来多大的帮助(搞不好会适得其反)。
上次谈到科技发展的两个曲线–炒作曲线和导入曲线。这次我想从其它的层面来看web services观念的起源、发展所处的阶段,以及技术上所覆盖的层面。
1994 年网页浏览器的出现,迅速地让World-Wide Web在短短的几年间,首度达到前所未有,一个真正横跨全世界的超级信息库,所有的文件都遵照相同的格式提供出来,并相互串联。
如果我们从技术的角度探究Web之所以能成功,会发现遵循开放标准所带来的松散藕合(loose coupling)是最重要的关键。怎么说?站在一个使用者的立场,我只要有一个浏览器,不管是用什么平台--PC、Unix、Mac,甚至是PDA,我都可以看遍全世界的网站。或许我明天会挖掘出几个之前从来没去过、令人兴奋的新网站。
最棒的是,我的计算机和浏览器事先不用和那些新的网站先进行设定,只要想连结到哪个网站去就随时可以去。更神奇的是,浏览器(信息消费者)和网站(信息生产/服务提供者)双方不会因为各自不定期,或者是定期的升级、改版动作而影响彼此的连结与信息的撷取。这就像灯泡、电池一样,可自由选择不同厂牌,来搭配不同的台灯和手电筒。而Web之所以能成功,正是因为大家--也就是各厂牌的浏览器和网页服务器--基本上都遵循HTML、JPG,HTTP 这些开放格式和标准。但如果用到某浏览器或服务器专属的功能时,开放性和选择性就会受到扼杀。
随着网站的迅速普及,除了用网页来提供内容和信息外,很快的,网站也变成了数据库查询、在线交易等各形各色的服务提供者。网站服务器 (Web server) 同时也开始被赋予要执行应用程序的任务。当这些任务变得愈来愈重要、艰巨且专业时,应用服务器 (application server) 便应运而生,时至今日,发展已趋于成熟。