Microsoft Biztalk Server 2000简介
微软最近推出了一个概念,称之为“.NET”,比尔·盖茨先生在最初将它介绍给世人的时候,只是给了几个使用上的演示以及一些畅想,但没有给予明确的定义,今年七月份左右,微软终于在其网站上给予了“.NET”一个含蓄并且外延很广泛的定义“.Net is a XML Web
Service platform。”即.NET是一个XML WebService的运行平台。
同时,将以前的推出的一些服务器级的产品统统纳入到.NET的范畴中,这其中即包括我们今天所要介绍的Biztalk Server 2000。
对于Biztalk Server,国内的读者可能对其了解比较少,本人不才,愿意将自己所了解到的一些有关Biztalk Server的情况向大家作一个简要的介绍,意在抛砖引玉,如果有纰漏,希望各位能够给予批评指正。
我想对于一个新的东西的介绍,不外乎从三方面来加以说明,即为什么(为什么需要这样一个产品)、是什么(这个产品是一个什么样的产品)、怎么用(这个产品具体怎么用)。本文将试着从这三方面加以对Biztalk Server加以介绍,但限于篇幅,在怎么用这个问题上,本文可能会粗略带好,好在目前这方面的学习资料不少,如果大家感兴趣,可以购买本人所译的一本《Biztalk Server电子商务实战》一书。
Why
想象一下我们生活的世界,由于技术的发展,使得我们整个世界在空间上越来越接近,“地球村”的概念越来越接近于现实,空间的接近使得我们交流越来越紧密,但另外一个现实,一直困扰着我们,即人类的语言是多种多样的,这就使得交流中的语言转译工作越来越重要。
同样的情况,出现在商业公司之间的交流中,商业公司的交流,除了言语之间的谈判之外,还会涉及到许多公文上的处理,如银行之间的帐单、公司之间的订单等等。而且由于历史原因等,各个公司都会有自己的一套格式,这样就如同人们的语言问题一样,公文格式的转化对于我们来说也是十分重要。
在上个世界八十年代初,我当时还很小,国内出现了一股“世界语”学习的潮流,愿望很美好,即全世界的人民都学会一种语言,这样大家就可以通过一种语言来进行交流,再也没有语言的障碍。但愿望再美好也只是一个设想,从上世纪九十年代,这股热潮逐渐降温,估计现在的人们可能很多人都没有听说过“世界语”这样一个说法了。
商业公司之间的公文处理也面临这样一种情况,随着计算机技术的发展,越来越迫切有一种“世界语”能够遍行各种系统之间,而且由于计算机技术是新技术,不像人类语言都有上千年的历史,所以统一应该不难。XML的出现适应了这样的需求,所以随着它的普及,很多人及公司都为之雀跃不已。毕竟在自然社会中无法实现的事情,在计算机信息处理过程中出现了。
XML仍然是一种十分灵活的语言,各个商业机构及个人都可以依据自己的需求扩充自己的标签,这也是XML能够成功的一个原因。但这种灵活也带来了一个问题,就是在不同标签中信息交换处理时带来的问题。设想一下,A公司向B公司提供商品,需要A公司提供报价单,A公司如果在其公文格式中使用<price>来代表货品单价,但B公司内部却可能使用<money>来代表货品单价,而<price>代表的总额,则B公司就面临着一个问题,即如何将A公司的报价单的公文格式转换成其内部认可的公文格式,以便进行层层审批,再进货或者报账等。
业务量少一些,我们可以使用人工去做,我们可以交给专门的业务人员来进行处理,就好象各国政要之间见面总是必不可缺少准备一两位翻译官一样。但世界如此大,一个公司不可能只与几个公司打交道,它们可能与成百上千家商业合作伙伴打交道,业务量也急剧的增加,如果为每一位商业合作伙伴都准备一位专门的业务人员,那开支将是公司无法接受的。
所以,如何方便高效的处理公文格式之间的转化摆到了世人的面前。正因为此,Biztalk出现了!
What
先来做一下单词释义,“Biztalk”这个词如果从词典里面查,是查不到,这个又是一个人造单词,“Biz”这三个字母经常出现在网上的一些言论中,如新闻组、论坛中,代表的是“Business”,即“商业”的意思,而“Talk”从字面上解释就是“谈话、交流”的意思,引伸来就是“交流”的意思。所以我们在这儿可以将“Biztalk”解释为“商业往来”的意思。
Biztalk并不是微软首创的,其实Biztalk是一个工业标准,微软邀请各方业界中许多领导性的组织与企业,针对电子商务的需求共同规划出BizTalk Framework,作为企业、软件开发厂商进行电子商务及开发相关解决方案的参考指针。“开放”是所有制定BizTalk Framework委员的共同信念,因此无论在传输方式、数据描述方式,或是应用程序间的整合技术,都以目前Internet上的标准为基础。
为了让所有平台上的应用程序都可以了解如何辨识及处理商业信息,BizTalk Framework定义一组通用的XML标注(Tag)及结构作为商业信息的一致表示方式。这些规则就像是寄件人及地址要写在邮件信封的右下方,收件人的地址要写在信封的左上方,中间放收件人的姓名,所有人、邮局及邮差都要遵守并了解,邮件才能顺利地寄送到收件人手上。不遵守这些规则的信件,不是会被退件,就是将会寄错地方。
大致来说,BizTalk Framework为电子商务定义以下的游戏规则:
BizTag-一组专用的XML标注,协助支持BizTalk Framework的服务器软件做出正确的处理步骤。
BizTalk Document-定义商业文件应具备的标准格式,如:收、送双方的信息应如何注明。
Logical Layering-在逻辑上,BizTalk Framework分为三层,从上而下分别为:应用程序、支持BizTalk Framework的服务器软件、通讯传输层。每个层次都可以各自独立,彼此之间通过事先定义好的程序化接口系结在一起。在这个开放的架构下,信息人员可以自行开发、编写程序开发,或是选择市场上软件厂商提供的软件包,或是其他解决方案。
然而没有一个解决方案或是平台可以符合所有的需求,在复杂的商业环境中,企业要自行处理应用程序及系统间的互动。BizTalk Framework规范一个可以让应用程序或是系统互动的架构,而且独立于各种技术之上,所有企业及程序开发厂商都可以在这个平台上,以自行开发的技术或是主流技术,使用各种不同的开发语言、开发工具,像是COM、SOAP、CORBA、Java、Visual Basic、Delphi、PowerBuilder等建立解决方案。
BizTalk Framework在设计的过程中听取了来自各方的意见及指导,如:解决方案提供厂商、客户、标准制定组织,并组成BizTalk 指导委员会(BizTalk Steering Committee)。负责制定有关如何应用XML、XML-Schema、MIME技术,提供应用程序、系统间沟通问题的相关规格,这些规格可以应用在程序开发及系统分析及架构上。
其中如何让应用程序可以安全地、可靠地传输XML或是非XML格式的商业文件,是驱使业界制定BizTalk Framework的一个很重要的原因。实际上的做法可以以标准的文件信封(Envelope)搭配多种的传输方式来完成。在数据保全方面,相关的安全机制包括认证、加密及数字签名,这些在整个BizTalk Framework中占有十分重要的角色,W3C目前正专注于几项有关这方面的技术。
BizTalk Framework可以应用在各种产业、作业处理流程及组织,同时具备足够的弹性以支持同步、异步的商业处理程序、大量的数据及各种不同的信息沟通模式,足以适应变异性相当大的商业环境。
Microsoft BizTalk Server 2000是微软根据BizTalk Framework所设计出来的一项产品,完全遵循BizTalk Framework所要求的开放架构,使用目前Internet上的标准通讯协议、支持XML及其他Internet标准的数据完整技术,提供可靠的商业文件传送能力,协助企业内部及交易伙伴之间的应用程序,可以直接交换彼此的订单、发票等商业信息,满足电子数据交换自动化,确保数据安全、一致及实时的需求。
基本上,Microsoft BizTalk Server 2000由两大服务所组成,商业信息的包装与收送由BizTalk Messaging Service负责,另一个主要的服务是BizTal