• 4138
  • 0
  • 分享到

系统集成(chéng)的下一代进化:“区块(kuài)链即集成”

2019-2-8 08:37

来源: Odaily星球(qiú)日报 作者: Bilgin Ibryam

米兰平台-米兰MILAN(中国)


多年(nián)以(yǐ)来,让企(qǐ)业(yè)/组织最(zuì)为头疼(téng)的一个问题(tí)就是自(zì)己的系统没有较强的集成性,而且难以形成(chéng)一(yī)个基于特定(dìng)行业的(de)去信(xìn)任网络(trustless network)。

不过现在(zài),区块(kuài)链和(hé)分布式账本(běn)技术(shù)(DLT)可能成为实现这一颠覆(fù)性愿景的基(jī)础。

企业(yè)级集(jí)成
对(duì)于一(yī)些大公司和大型机构组织而言(yán),他们的应用程序(xù)和 APP 大都(dōu)是在“孤(gū)岛”中(zhōng)独立(lì)运行,这些“孤岛(dǎo)”往往需要共(gòng)享数据和(hé)功能才能“步调一致”地运行。对于单个(gè)企业而言,如果想要实现数据和业务流程共享(xiǎng),就必须要与其(qí)他系统(tǒng)和应用(yòng)程序进行对接,而这个过程就被称为“企业应用程(chéng)序集(jí)成”(EAI:Enterprise Application Integration)。

另一方面,在(zài)共享数据(jù)和(hé)功能的时候,企(qǐ)业/组(zǔ)织往往希(xī)望(wàng)寻求一种(zhǒng)能够控制(zhì)方式来(lái)管(guǎn)理整个流程,也只有在这种情况下,他们(men)才能放心地把(bǎ)关键业务流程集成(或自(zì)动化)扩展到(dào)组织(zhī)外(wài)部。这其实是“企业(yè)应用程序(xù)集成”的一(yī)种扩展,可以通(tōng)过一种(zhǒng)被称为“B2B 集成”的消息标准(zhǔn)交换结构化(huà)数据来实现。

从根(gēn)本上(shàng)来说,“企业应用程序集成”和“B2B 集成”这两(liǎng)个专(zhuān)业术(shù)语都是指跨越多个系(xì)统(有时也(yě)涉及多方)的数据和功能集成(chéng)过(guò)程。然而(ér)需要注(zhù)意(yì)的是,企业内(nèi)部(bù)系统(tǒng)和(hé)业务流(liú)程会不断发展,而支持 B2B 统一化的技术也在不断(duàn)进步。

企业/组(zǔ)织(zhī)系统(tǒng)集成技术的进化
到目前为止,我们似乎很少(shǎo)看到某一个企业/组织的(de)系统集成技术成为主流(liú),因为这种技术的发展通常是建立在彼此支持的基础之(zhī)上,而现实世界里的商业竞(jìng)争往往让企业/组织之(zhī)间变得越来越(yuè)封闭。在此,我(wǒ)们并不是(shì)要专注于某个特(tè)定技(jì)术、或是某个特定的年份,而是尝试(shì)观(guān)察最近几十年来(lái)的发展,以便让大家了解为什么(me)说区块链会(huì)是下(xià)一个技术迭代的关键要素。

下表是集成技术的进(jìn)化(huà)历(lì)史概(gài)览(lǎn):

米兰平台-米兰MILAN(中国)


接下来,我们要探讨上表中列出的每个进(jìn)化过程中是如何(hé)实现技(jì)术进步的。

数据集(jí)成
数(shù)据集(jí)成是最古(gǔ)老(lǎo)的跨系统信息访问(wèn)机制之一(yī),它具(jù)有以下两个主要示例(lì):

1、通用数据库方法被用于企业内部(bù)的系统集成;

2、文件(jiàn)共享(xiǎng)方法被用(yòng)于(yú)企业内部和企业之间的数据交换。借助FTP等通用协议(yì),文件共享让应用程序(xù)数据在不(bú)同(tóng)设备和(hé)操(cāo)作系统之间被交换。

但是这(zhè)两种(zhǒng)方法都不是实时的,而且只能通过批处理的方式才能完成数据集成(chéng)操(cāo)作,因此在可扩(kuò)展(zhǎn)性和可靠性(xìng)方面都存在一定的局限性(xìng)。

功能集成
数据集成提供了(le)非实时的数据交(jiāo)换,而(ér)这里(lǐ)将要描述的功(gōng)能(néng)集成则(zé)提供了(le)实(shí)时的(de)数据交换和功能交(jiāo)换:

1、远程过程(chéng)调用(Remote procedure call)通过“隐(yǐn)藏”了网络和数据编组(zǔ)复杂(zá)性,将基(jī)于套接字的低级别集成(chéng)进行了重大优(yōu)化,但是它其(qí)实是一个依(yī)赖于语言的、早期点(diǎn)对点的客户(hù)端-服务器(qì)架构。

2、对象请求(qiú)代管者体系结(jié)构(gòu)(Object request broker architecture)使(shǐ)用公(gōng)用对象请求代管者体系结构(CORBA)、分布式组件对(duì)象模式(DCOM)、以及远程方法调用(RMI)实现,并引入了代管者组件(jiàn),该(gāi)组件允许不同语(yǔ)言的多个应(yīng)用程(chéng)序重复使用相同的基础结构并以P2P的方式相互通信(xìn)。此外,公(gōng)用(yòng)对(duì)象请求代管者体系结构模型还具有命名、安全性、并发性、事务性(xìng)、注册(cè)表、预(yù)计与语言无关的接口(kǒu)定义概(gài)念。

3、消息传递在(zài)应用程序之间引入了时间解耦(ǒu)(temporal decoupling)的概念,并确保(bǎo)异步消息传(chuán)递。(耦合是指两个或(huò)两个以(yǐ)上的体系或两种运动形式间通过相(xiàng)互(hù)作用而彼此(cǐ)影响以至联(lián)合起来的现象。 解耦就是用数学方法将两(liǎng)种运动(dòng)分(fèn)离开来处(chù)理问题,常用解(jiě)耦方法就是忽略或简化对所(suǒ)研究问题影响较小的(de)一种运动,只分析主要的运(yùn)动。)

到(dào)目前(qián)为止,我(wǒ)们(men)已(yǐ)经看到了许多技(jì)术进(jìn)步,但是他(tā)们主要关(guān)注的是系统集成而不是应用程序(xù)集成。从批处理到实时数据交换、从(cóng)点对点(diǎn)到 P2P、从同步到异步(bù),所有这(zhè)些方法都不关心、或是不控制他们交换(huàn)的数据类型,也不(bú)会强制验证数据。尽管如(rú)此,这种早期(qī)的集成基础设施通过交换基于(yú)电子数据交换(EDI)格式的数(shù)据来实现(xiàn) B2B 集成,但是他(tā)们其(qí)实(shí)并不了解企业数据和业务流(liú)程,或(huò)者只了解了其中的一(yī)部(bù)分。

使用公用对象请求代管者体系结(jié)构,我们可(kě)以更(gèng)早地尝试应用程序接口、以及对应(yīng)用程序集成有用的服(fú)务。

面向服务架(jià)构
面向服(fú)务架构(SOA)的主要目的,其实是(shì)推(tuī)出一系列 Web 服务(wù)标准:

1、XML 提供了与语言(yán)无关(guān)的(de)数(shù)据(jù)交换格式;

2、SOAP 提供(gòng)了通用消息格式;

3、WSDL 提供用于描述服务接口的独立格式。

这一切都是构成Web服(fú)务的基础,这些(xiē)标准与(yǔ)企业服务总线(ESB)和(hé)业务流(liú)程管理(BPM)相结合,使集成更专注于业务(wù)集成语言。相比之下,之前的(de)技术更多地是在系统层面(miàn)进行集成。

ESB 全称为 Enterprise Service Bus,即企(qǐ)业服务总线。它是传统中间件技术与 XML、Web 服务等技术结合的产物。ESB 提供了网络中(zhōng)最基本的连(lián)接中枢,是构筑企(qǐ)业神经系统(tǒng)的必要元素(sù)。ESB的出现改变(biàn)了传统的(de)软件架构,可以提供(gòng)比传统中间件产(chǎn)品(pǐn)更为廉价的解决方案,同时它还可以消除(chú)不同应用之间的技(jì)术差异,让不同的应(yīng)用服务器协调运作,实现了不同服务之间的通信与整合。从功能上(shàng)看(kàn),ESB 提供了事(shì)件驱动和文(wén)档导向的处理模式,以及分布(bù)式(shì)的运行管理机制,它支(zhī)持基于内容的路由和(hé)过滤,具(jù)备了复杂(zá)数(shù)据的(de)传输能力,并(bìng)可以提供一(yī)系(xì)列的标准(zhǔn)接(jiē)口;另一方面,BPM,即业务流(liú)程(chéng)管理,是(shì)一种以规(guī)范化的构造端到端(duān)的(de)卓越业务流(liú)程为中(zhōng)心,以持续的(de)提高组织业务(wù)绩效为目的的系统化方法,常见商(shāng)业管理教育如 EMBA、MBA 等均将 BPM 包含(hán)在内。

Web 服务让系统(tǒng)不再盲目地交(jiāo)换数据,而是按照(zhào)机器可(kě)读的(de)合约和接口(kǒu)定义来交换数据,此类合约能够(gòu)让某个系统和其他系统进行交互之前理解、并验(yàn)证数据。

这里还包(bāo)含了微服务架(jià)构,就其(qí)核心而言,微服务架构构(gòu)建、并改进了面向服务架构和企业服务总线——此阶段的主要进(jìn)化,是围绕分布式系统(tǒng)从Web 服务向基于表述(shù)性状态(tài)传(chuán)递的交互过渡。

表述性(xìng)状态传递(英文:Representational State Transfer,简(jiǎn)称REST)是 Roy Fielding 博士在(zài) 2000 年他的博士论(lùn)文(wén)中提出来的一种软件架构风格,它是一种针对网(wǎng)络应(yīng)用的设(shè)计(jì)和开发方式,可以降低开发(fā)的复杂性,提高系统(tǒng)的(de)可伸缩(suō)性。目前在三(sān)种主流的 Web 服务实(shí)现方案中,因为 REST 模式的Web 服务与复杂的 SOAP 和 XML-RPC 对比来讲明显的(de)更加简洁,越来越多的 Web 服(fú)务开始采用 REST 风格设计和实现。例如(rú),Amazon.com 提(tí)供接近 REST 风格的 Web 服(fú)务进行(háng)图书查找;雅(yǎ)虎提供的 Web 服务也是 REST 风格(gé)的(de)。

总之,这个阶段中,在通用协议基础上(shàng),分(fèn)布式系统也能获得(dé)通用标准(zhǔn)和(hé)合(hé)约定义(contracts definitions)。

基于(yú)区(qū)块链(liàn)的(de)集成
虽然利用(yòng)通用协议和(hé)标准对交换(huàn)数据有一(yī)定(dìng)帮助,但服务(wù)合约却无法(fǎ)提(tí)供隐藏在合约(yuē)背后、并在远程(chéng)系(xì)统上运(yùn)行的业务流程(chéng)信息。一个业(yè)务(wù)请求(qiú)可能在(zài)合约(yuē)层面上有效,但在业务流程(chéng)的某个(gè)状(zhuàng)态下无效,这种情况会(huì)在两方之间进行(háng)集成的时(shí)候——比如在客(kè)户端-服务(wù)器模型、以及在(zài) P2P 模型中多(duō)个参与(yǔ)方之间进行(háng)集成(chéng)的时候产生(shēng)很多问(wèn)题(tí)。

有时多个参与方也会是(shì)同一业务流程的一部(bù)分,有时业(yè)务(wù)流程也会被其(qí)中一方而非所有各(gè)方拥有。而这种能够(gòu)让(ràng)多方互动正(zhèng)常(cháng)运作(zuò)的(de)先决条件,就是(shì)要确保共同(tóng)业(yè)务流程及其当前状态的透明度。所有这一切,都让(ràng)能够在(zài)多方之间实施分布式业务流程的区块链(liàn)技术变得极具吸引力。

通(tōng)过(guò)共享业务流程和(hé)包含(hán)状态,基于区块链技术(shù)的集成(chéng)模型扩展了共享协议和服务合约(yuē),而且所(suǒ)有参与实体都能以智能合约的形式(shì)共享(xiǎng)同一业(yè)务(wù)流程。但是,为了验(yàn)证(zhèng)业(yè)务请求(qiú)、处(chù)理并得出相同的结论,业务流程也需要保持相同的状(zhuàng)态,而这(zhè)只(zhī)有通过分布式(shì)账本才能实现。共享智能合约过去的全(quán)部状态并不是(shì)实现(xiàn)这一目(mù)标(biāo)的手段,而是共享业务(wù)流(liú)程运行的先决条件。

从这个角度来可,区块链(liàn)可以被看作是系(xì)统集(jí)成进化的下一个阶段。正如我们接下来将会深入解释(shì)的那样(yàng),区块链(liàn)网络可(kě)以充当一种分布式企业服务总线和业务流程管理机制,它不(bú)会包含在某个单独的业务实体(tǐ)之中,而是(shì)跨越覆盖到多个(gè)企(qǐ)业组(zǔ)织(zhī)内(nèi)。下(xià)图:集成技术开始从封闭系统(tǒng)进化到共享系统:

米兰平台-米兰MILAN(中国)


首先是协议(比(bǐ)如 FTO),然(rán)后是应(yīng)用(yòng)程序接口合(hé)约(比如(rú) WSDL、SOAP),接下(xià)来是业务流程本身(shēn)(比如(rú)智能合约),最后数据会移出到封闭系统之外,进入公共共享空间,并成为集(jí)成基础设(shè)施的(de)一部分。在某些(xiē)方面,这种趋(qū)势类似于微服务的(de)横切责任(cross-cutting responsibilities)从服务内部(bù)转移到(dào)支持平(píng)台。

通过区(qū)块链(liàn),通(tōng)用(yòng)数据模型和当前业务(wù)流程可以(yǐ)从企业内部转(zhuǎn)移到共享业务网(wǎng)络(luò)上。但需要注意的是,这种方(fāng)法(fǎ)并非普(pǔ)遍使用,甚(shèn)至不太(tài)可能(néng)成为一种主流系统集成机制(zhì)。因为只有(yǒu)当网(wǎng)络中的所有参(cān)与方对数据模型(xíng)和业务流(liú)程具有(yǒu)相(xiàng)同的理解时,才有可(kě)能采取这种行动。所以,基于区块链技术的系统集成只适用于那些(xiē)有标准(zhǔn)化业务流(liú)程的行业,比如金融供应链、医疗保健等。

系统集成迭代
至此,我们(men)已经按(àn)照时间顺(shùn)序(xù)了解了集成(chéng)技术的进化,现(xiàn)在可(kě)以更全面地了解B2B集成进化的(de)各个主要(yào)阶段(duàn):

第一代(dài):系统集成协(xié)议

这其(qí)实是在公用对象(xiàng)请(qǐng)求代管者体系结构(CORBA)和面向服务结构(gòu)(SOA)之前的集成技(jì)术,主要利用通用协议进行数据交换,这种方式(shì)并不会理解数据、合约(yuē)和业务流程:

1、集(jí)成模式:客户端-服务器,其中服(fú)务器组件(jiàn)仅由(yóu)一方控制,典型的(de)示(shì)例有数据库、文件服务器、消息代理(lǐ)等;

2、显式共享(xiǎng)基础架(jià)构:低级系统协议、以及诸如FTP这样的应(yīng)用程序接(jiē)口(kǒu);

3、隐式非共享基础架(jià)构:应用程(chéng)序合约、数(shù)据格式、以及不支持通用基础基础架构的业务流程。

米兰平台-米兰MILAN(中国)


第二代:应(yīng)用程序集成合约

第一(yī)代系统集成技(jì)术使用的是几年前的系统协(xié)议,允许应(yīng)用程序以通用合约(yuē)的形式共(gòng)享应用(yòng)程(chéng)序接口。而第二代系统(tǒng)集成技(jì)术已经能(néng)够让应用程序了解数(shù)据、以及数据(jù)结(jié)构和潜在错误条件了(le),不(bú)过这一代(dài)技术仍然无法(fǎ)了解系统中的(de)业务(wù)流程和当前状态:

1、集成模式:利用合约描述应用程序接口的客户端-服务器模型;

2、显式共享基础架构:协议、应用程序(xù)合(hé)约和应用(yòng)程序接口定(dìng)义;

3、隐式非共享(xiǎng)基础架构:业务流程(chéng)和(hé)远程状态仍是私有的。

米兰平台-米兰MILAN(中国)


第三(sān)代:分(fèn)布式业务流(liú)程(chéng)

第三代系统(tǒng)集成(chéng)技术是基于(yú)区块链(liàn)技术的(de)一代,并且又向前迈进(jìn)了(le)一(yī)步,但该技(jì)术仍然需(xū)要证明是一个可行的企业级(jí)系统集成架构(gòu)。区块(kuài)链系统集(jí)成技术使用 P2P 协议,并且能够(gòu)在(zài)多个系统之间共享业务流程,这些(xiē)系(xì)统(tǒng)都是由(yóu)去(qù)信(xìn)任的各方控(kòng)制的。之(zhī)前的(de)系统集成技术需要对共享协议和应用程序接口(kǒu)的理解,但这需要依赖(lài)对完整业务(wù)流程及其当前状态(tài)的共同理解,也只有这样才能形成(chéng)有意(yì)义的跨组织分布式业务流程(chéng)网络,并从(cóng)中获得回(huí)报:

1、集成模式(shì):通过与分布式(shì)业务流程形成业务往来,实现多方 P2P 集成;

2、显式共享(xiǎng)基础架构:业务流程及其所(suǒ)需的状态;

3、隐式(shì)非共享基(jī)础架(jià)构:其他非流程相关的状(zhuàng)态。

米兰平台-米兰MILAN(中国)


实际上(shàng),有许多基于区(qū)块链项目采用(yòng)了不同的方法也解决业务集成难(nán)题,在(zài)此我们列举一些 B2B 集成领域里最受欢(huān)迎、也是最有(yǒu)趣的许可开源区块(kuài)链项目:

1、Hyperledger Fabric 是目前最受欢(huān)迎、也是最(zuì)先进的(de)区(qū)块链框(kuàng)架之一,最初由(yóu) IBM 公司开发,现在(zài)已(yǐ)经是 Linux Foundation 项(xiàng)目的一部(bù)分了;

2、Hyperledger Sawtooth 最初(chū)是由(yóu)英特尔公司开(kāi)发的项(xiàng)目(mù),现在也归入(rù)了 Linux Foundation 旗(qí)下分布式项(xiàng)目,它(tā)以可更换的模块化和完整组件而广受欢(huān)迎;

3、Quorum 是一个基(jī)于以太坊区块链的企业级分布式(shì)系(xì)统解决方(fāng)案;

4、Corda 是另一个基于Java虚拟机(jī)中间(jiān)件技术的技术,能够让企业利用合约交易、交换价值。

现阶段(duàn),已经由很多企业/组织使用上述系统框架构建了(le)业务网络,使网络(luò)中(zhōng)的成员组织能(néng)够利用这(zhè)种新型集成模式互(hù)相集成(chéng)和交互。当然(rán),除(chú)了上述提供网(wǎng)络节点(diǎn)的全栈区块(kuài)链项目之外,还(hái)有一些“混合”解决方案(àn)。举个例子,Unibright 项(xiàng)目旨在利用自(zì)动生成的(de)智能合约,将熟(shú)悉的标准(比(bǐ)如(rú) BPMN)中定义的内部业务流(liú)程(chéng)与(yǔ)现(xiàn)有区块链(liàn)网络连接起来。这种(zhǒng)智(zhì)能合(hé)约可以有公有链和私有(yǒu)链(liàn)生成,并且成为企业之间另一个系统(tǒng)集成支柱。

实际上(shàng),区(qū)块链技术已经开始尝试在我(wǒ)们现实生(shēng)活中(zhōng)的很(hěn)多领域里应用。一些公有链(liàn)项目声称将(jiāng)利用这一新(xīn)兴技术来(lái)改(gǎi)变世界(jiè),相比之下,私(sī)有(yǒu)链和许可区块链并没(méi)有做出太多这样的(de)承诺,而是在稳步向前发展。

总结
企业(yè)级(jí)的集成(chéng)往往具(jù)有很多细节上的问题,比如所有系统(tǒng)都是由一家实体所控制(zhì)、参与者之间具有(yǒu)某种程度的(de)信任等等。就目(mù)前而言,这些问题仍然由现代企业服务总线、业(yè)务流程管(guǎn)理和(hé)微(wēi)服务架构(gòu)来解决的。

但是,当我们谈到多方(fāng)参与的(de) B2B 集(jí)成时(shí),和传统(tǒng)企业级集(jí)成所遇到的问题(tí)就不太一样了(le)。这些系(xì)统基(jī)本上会由(yóu)多个企业/组(zǔ)织控(kòng)制,单(dān)独一方无法查(chá)看业务(wù)流程,互相也不信任——在这(zhè)种(zhǒng)场景下,我们看到企业(yè)/组织开始尝试一种全新的(de)、基于区块链的集成技术,这(zhè)种技术(shù)不(bú)仅依(yī)赖于协议与(yǔ)合约的共享,还依(yī)赖于(yú)端(duān)到(dào)端的业(yè)务流程和状态共享。

米兰平台-米兰MILAN(中国)


需要说明的(de)是,“区(qū)块(kuài)链即集成(chéng)”(Blockchain as Integration)这种(zhǒng)趋势与(yǔ)区块链行业(yè)内多年(nián)来不断发展的总体方向(xiàng)是一(yī)致的,即从共享(xiǎng)最低限度的(de)协议,到以合约、应用程(chéng)序(xù)接(jiē)口和现有业务流程和状态(tài)的共享。

这种共享集成基础架构能够(gòu)支持全新的、透明集(jí)成模型——其中,先前那些(xiē)不公开的业(yè)务流程现(xiàn)在将在开源协作模型下被共(gòng)同拥有、共同拟定(dìng)、共同构(gòu)建(jiàn)、共同维(wéi)护、形成标准(zhǔn)化。也(yě)只有在这种情(qíng)况下,才能够让企业(yè)/组织获得激励、共享业务(wù)流程并形成一个互利互益的网(wǎng)络,促进(jìn)联(lián)合创(chuàng)新、标准化(huà)、以及更深层次的集成。
米兰平台-米兰MILAN(中国)
版权申明:本内容来(lái)自(zì)于互联网,属第三(sān)方(fāng)汇集推荐平台(tái)。本文(wén)的版权归原(yuán)作者所有,文章言论不代表链门户的(de)观点,链门(mén)户不承(chéng)担任何(hé)法律责任。如有侵权请(qǐng)联系QQ:3341927519进行反(fǎn)馈。
相关新闻
发表评(píng)论(lùn)

请先 注册/登(dēng)录 后参(cān)与评论(lùn)

    回顶部

    米兰平台-米兰MILAN(中国)

    米兰平台-米兰MILAN(中国)