优势:
云开发的优势之一就是规模经济。利用云计算供应商提供的基础设施,同在单一的企业内开发相比,开发者能够提供更好,更便宜和更可靠的应用。如果需要,应用能够利用云的全部资源而无须要求公司投资类似的物理资源。
说到成本,由于云服务遵循一对多的模型,与单独的桌面程序部署相比,成本极大地降低了。云应用通常是“租用的”,以每用户为基础计价,而不是购买或许可软件程序(每个桌面一个)的物理拷贝。它更像是订阅模型而不是资产购买(和随之而来的贬值)模型,这意味着更少的前期投资和一个更可预知的月度业务费用流。
IT部门喜欢云应用是因为所有的管理活动都经由一个中央位置而不是从单独的站点或工作站来管理。这使得员工能够通过Web来远程访问应用。其他的好处包括用需要的软件快速装备用户(称为“快速供应”),当更多的用户导致系统重负时添加更多计算资源(自动扩展)。当你需要更多的存储空间或带宽时,公司只需要从云中添加另外一个虚拟服务器。这比在自己的数据中心购买、安装和配置一个新的服务器容易得多。
对开发者而言,升级一个云应用比传统的桌面软件更容易。只需要升级集中的应用程序,应用特征就能快速顺利地得到更新,而不必手工升级组织内每台台式机上的单独应用。有了云服务,一个改变就能影响运行应用的每一个用户,这大大降低了开发者的工作量。
缺点:
也许人们所意识到的云开发最大的不足就是给所有基于web的应用带来麻烦的问题:它安全吗?基于web的应用长时间以来就被认为具有潜在的安全风险。由于这一原因,许多公司宁愿将应用、数据和IT操作保持在自己的掌控之下。
也就是说,利用云托管的应用和存储在少数情况下会产生数据丢失。尽管可以说,一个大的云托管公司可能比一般的企业有更好的数据安全和备份的工具。然而,在任何情况下,即便是感知到的来自关键数据和服务异地托管的安全威胁也可能阻止一些公司这么做。
另外一个潜在的不足就是云计算宿主离线所导致的事件。尽管多数公司说这是不可能的,但它确实发生了,亚马逊的EC2业务在2008年2月15日经受了一次大规模的服务中止,并抹去了一些客户应用数据。(该次业务中止由一个软件部署所引起,它错误地终止了数量未知的用户实例。)对那些需要可靠和安全平台的客户来说,平台故障和数据消失就像被粗鲁地唤醒一样。更进一步讲,如果一个公司依赖于第三方的云平台来存放数据而没有其他的物理备份,该数据可能处于危险之中。