当您决定部署云设置时,您遇到的架构/实施问题是什么?您是如何解决这些问题的?
一些例子包括:
答案 0 :(得分:0)
我遇到的最大问题是当地的后备。在典型的云场景中,您将曾经存在于传统数据存储(数据库,文件系统等)中的资源转移到API背后的某些内容,而这些资源无法在本地轻松复制。对于我们的应用程序,我们将一些典型的队列从MySQL移到Amazon's SQS。问题:
目前,亚马逊每10,000次SQS请求收费0.01美元,这笔费用似乎非常小,但在本地开发时(或者对于您的测试服务器,假设您有一个单独的开发),绝对没有理由付费。
如果您没有本地队列回退,则每个开发/测试环境需要一个单独的队列。你真的不希望来自不同队列的消息混淆起来。
没有一种简单的方法可以为我们的环境本地模拟SQS(我知道)。
在架构上,我用简单的adapters来处理向SQS的过渡:
当我们将图像移动到S3并使用文件系统本地回退时,相同的架构(或多或少)工作得非常好。简单,小巧,易于解释,更重要的是,它有效。如果要将应用程序迁移到云端,您可能会为后端服务编写相当多的适配器,除了拥有简单的回退机制之外,您不希望将供应商锁定到特定服务。
显然,如果您正在构建一个考虑了云的应用程序,您可能不一定需要本地回退,特别是如果您的平台有一种模拟云环境的简单方法。像Stratosphere这样的东西,如果您正在开发.Net / Mono,或者您正在定位亚马逊的服务。但是如果你有一个成熟的应用程序,你已经在本地设置了基础设施,继续使用它会更有意义。
如果您将云用作精美的数据存储,那么云“开销”并不是您需要担心的问题。但是,如果您正在寻找云计算,那么没有答案,它总是取决于您正在做什么。
一些相关问题: