目标系统应当为真正的云计算系统。换句话说,他们应当提供现有应用所没有的新功能。例如:
机器寻址。无需人参与的访问、分配和使用云服务、机器至机器的能力
多租户。能够同时支持大量外部云服务用户,确保性能一致,保证租户不会相互干扰。
基于使用的计费。能够监控授权用户的云服务使用情况,根据使用情况进行计费。
高级安全性。包括能够管理安全使用方式和基于身份的方式。
为新的或现有的应用创建云服务有三个基本的方法。它们的规模分为小、中、大。
在小型云服务方案中,我们仅具体化应用的一小部分,通常是那些执行如数据有效性操作的服务。几乎只需要创建一个Web服务。这个Web服务有一个被良好定义的接口,以接受云服务客户的数据、应用所连接的数据库中的有效数据,然后将状态反馈给客户。例如,客户通过开放的互联网使用Web服务确认一个订单。为了说明问题,我们创建一个Validate_ Order()的服务。该服务会做以下工作:
启动服务记录服务
与客户的使用情况
[page] 记录时间
接受订单号
确认订单号
在数据库中查找订单号
反馈状态,有效或无效
记录时间
关闭服务
当然,你需要保证你能够通过多用户/多租户方法做这个。这意味着你必须为所有的用户平均分配,保护用户流程。此外,你还需要利用按使用量收费的计费系统追踪使用情况,无论你是否对这一服务收费。
在部署这种小型解决方案中你能够使用不同的技术,包括在独立处理空间内运行的外部程序。这些外部程序不与核心应用挂钩,可能只需要稍做修改,甚至不需要进行修改。或许服务可能与应用结合紧密,需要对核心程序进行一些修改。它们没有固定的解决方案或是最佳实践。你需要根据具体情况调整每一个云服务。
一旦你创建了这种服务,你需要与相关的WSDL相连,以及选择了一个通信方法,这通常被称为REST(表述性状态转移)。客户应当能够通过URL访问服务,因此必须了解如何通过读取WSDL调用服务,以及如何使用REST调用服务。
[page] 在中型云服务解决方案中,我们通常会面对许多不同的云服务,它们提供了许多不同类型的功能。你可以认为它们的规模是小型云服务解决方案的5至10倍。它们拥有更多可被云服务客户访问的并行云服务。这意味着你需要应对更多的并行和多租户问题。
在大型云服务解决方案中,我们通常要应对数百,甚至是数千个被具体化和托管的云服务。这类云服务可能每天会被数千个用户所使用。这些用户的访问方式和目的都不尽相同。我们所面对的挑战并不是服务的具体化,而是这些云服务的并行管理,让其长期处于良好的运行状态。换句话说,核心目标是扩展性与稳定性。
在中型与大型云服务解决方案中,你需要对核心应用进行更多系统性重新设计,包括修改核心数据库和计算服务(见图2)。你只能在两种办法中选择一个。
1、附加软件提供了云能力。实际上,中间件将原生的应用服务转变为了云服务,并通过产品预先设置的功能管理这些服务。目前市场上已经出现了这类产品,它们通常被称为“云能力软件”。
2、彻底从头重新编写应用。重新编写的应用将满足云服务的需要,包括支持多租户。这实际上是一个重新创建应用的机会,或许可以使用更新的编程语言或数据库技术。与在老代码上编写相比,更新的编程语言或数据库技术的成本会更低。
最后,在考虑应用架构、云服务具体化与管理时,你需要考虑使用的标准。这里的大多数标准都与Web相关,例如WSDL、SOAP、REST等。当然,部分标准是在云计算领域中新出现的,包括安全标准和管理标准。应当在项目开始前就考虑好适合你的云服务的最佳标准与解决方案。

(编辑:开发网_开封站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|