我们与28位分别来自23家企业的高管人员进行了交流,希望了解这些负责立足于云环境进行应用程序开发与部署的技术领导者如何看待相关议题。
而在被问及“云应用的未来发展方向”时,他们给出了以下观点:
◆ 始终着眼于更大、更快且更新等原则性诉求(举例来说,100 mbps对于视频流负载而言仍然不够强劲)。应用对速度的需求始终领先于基础设施的供应能力。我们将迎接由物联网带来的完整视频、音频与数据流连接。每台设备都交联网并不断进行通信。云设施需要进行持续规模扩展。下一步在于摆脱所谓可扩展能力束缚,以几乎无限的方式建立连接及物联网体系。
◆ 应用将基于内部与云环境。我们该如何在内部条件下实现可扩展性?安全是其中一大重要因素。一款应用该如何在云环境中运行,同时自其它位置读取数据?容器技术的出现令这种诉求变得易于实现。我们面对着越来越多的用例,包括云数据库等等。我们坚信Docker在单一软件应用中的良好表现,并希望将其逐步引入数据应用当中。
◆ 基础设施层中的诸多要素正在快速转变。我们将看到例如于应用12因素之类的标准迅速出现。Docker也是一项类似的技术成果。工具层面的发展将有所放缓。堆栈将凭借着可移动组件数量减少而得到简化。开发人员不需要关注Docker或者Rocket本身。小型企业开始快速采用这些技术。在未来12个月内,大量存在交集的技术将销声匿迹。软件定义存储将成为这一切的实现基础,并定义标准构建块间的接口,从而消除目前的混乱态势。
◆ 创新与定制化速度将不断加快。未来的应用将无需操作系统即可运行。这些应用将运行在dinManage或者OpenStack之上。更多基于云与HTML的应用将实现设备中立性。应用将100%以Web为基础。浏览器将成为实际桌面系统,因为90%的应用已经实现基于Web——包括企业与个人环境。应用将具备自我识别能力并了解与之相关的安全状态与软件包。在线听写功能使得计算机能够理解用户的口头表达。设备中立性使得硬件不再成为软件运行的约束条件。
◆ 更多DevOps与容器方案得到部署与发展。移动设备上的大部分计算能力被转移至云端。最终,我们将以容器方式在移动设备上运行计算负载。
◆ 算法即应用。按需调用。以数据处理为中心。利用Java或者.Net构建下一代平台使得开发人员能够更为灵活地通过自动化质量与测试控制机制实现持续开发。
◆ 未来就在当下。云应用主导IT。分析与数据将改进客户满意度。通过自有资产提供更出色的用户体验。云应用将创建出以价值为主导的使用感受。IBM公司目前还无法利用云实现收益。Airbnb与Uber以无资产方式建立起良好的体验。创新创造财富。
◆ 云平台将代表一切。安全性与集成工作不再成为阻碍。云即一切,这种新型平台将承载用户的全部使用需求。平台重构后的体验能够对基础设施需求进行审视,从而构建起富功能与出色的用户体验。
◆ 未来一片光明,且产品上市周期将大幅缩短。我们需要解决方案以监控业务体系中的一切。
◆ 云应用生态系统并不简单,由于人们将更多要素添加进来但又疏于管理,其复杂性将因此快速提升。基于微服务架构的应用将占据主导。虚拟机复杂性提升。更灵活且更具扩展性。需要自动化工具对这一切进行管理。相关厂商与规范数量将大幅增加。多种容器格式的兴起将提升复杂性水平。CMCS——即如何对基础进行编排变得至关重要。需要以理智方式处理倡议以控制复杂性的无限提升。
◆ 选择是最核心的关键词。着眼于构建平台中立性方案。当大家对传统平台进行重写以保证其运行在云环境中时,我们当然不愿继续保留其中的锁定性因素。容器技术等构建方案能够有效克服供应商锁定难题。
◆ 混合趋势——应用能够从单一云转移至多家厂商的云平台当中,这意味着大家可以为特定应用选择最合适的运行环境。设计出能够跨越不同云环境的应用。我们目前才刚刚开始考虑应用的混合能力。我们需要了解为什么有必要将某款应用运行在云中。明确什么、为什么与哪里这几大关键问题,包括为什么做出这项决策、如何避免将应用的运行环境作为首要依据——换言之,应用应当具有足够的弹性以实现任何位置运行。
◆ 绝大多数应用都将运行在云当中。澳大利亚的Sun Corp是一家云层面的依靠国际金融服务供应商,其出色的表现也令其它同类企业开始怀疑,自己为什么不能将业务交由云环境打理。AWS目前的规模已经超过红帽与VMware的总和——这意味着开发人员迎来了史无前例的资源民主化进程。企业开始利用软件资产实现竞争差异性。
◆ Amazon Lambda趋势仍将继续。不用担心服务器或者软件层,只需要认真编写逻辑并加以部署即可——可用即服务。与微服务趋势紧密同步。高度专业化且代码量更少。我们不需要考虑服务器或者运营方面的问题。我们只需要简单的拖拽即可实现移动应用中的函数调用。
◆ 随着安全性与定制化能力的逐步提高,客户对于公有云将更具信心。公有与私有云将继续并存。如果数据被托管在其它云中,数据挖掘方面的挑战也将不复存在。
◆ 着眼于未来,智能化应用意味着态势感知与可预测分析的结合。例如,一位大夫可通过传感器利用自己手中的iPad查看病人体征,并通过用药协议与大数据分析立足于数百万种同类病例为病人提供诊疗建议。
◆ 平台即服务负责处理应用的运行、实现与管理工作。其操作难度将进一步下降。这使得开发人员能够将精力集中在代码编写方面。
◆ 开发者与创新者能够更顺畅地查看一切,并有能力立足于各个行业对市场加以改变。机器与人推动云应用发展,而应用则将开始学习使用状况并据此进行配置。情报与支持能力将大幅增强。可穿戴设备的发展将转变我们对于应用的理解方式。未来将有更多与个人数据收集相关的安全保障、信任与法规性手段出台。云应用将以多种无缝化方式颠覆业务流程。协作将成为销售、人力资源、财务、ERP的核心定位,旨在以成本更低且更迅速的方式实现价值创造。
◆ 架构能够了解微服务与应用之间的API连接。基于SaaS以及面向数据库、负载均衡、编排以及协作(Kubernetes与Swarm)等各类元素的管理将进一步完善这种发展趋势。从云服务中寻求最符合应用要求的资源与技术成果。无需内部持有并维护硬件及软件能够显著降低运营成本,但这同时意味着我们需要转变对应用的管理思路。在管理TB乃至PB级别的数据时,我们不必建立如过去般庞大的管理团队。SaaS永远具备成本优势。
◆ 更多应用出于经济原因以及集成化平台、开放API、提取数据乃至跨平台服务执行等因素而迁移至云端。平台与集成机制将迎来更理想的开放性水平。人们将熟知如何以安全、冗余以及备份手段开发基于云的应用架构。人们希望利用服务水平协议(简称SLA)解决风险管理需求,而非凭借业务持续规划。如何实现迁移?通过提升容量、弹性与应用安全及冗余需求缓解破坏性风险。
◆ 云应用(SaaS)与第三方外部托管(IaaS)。在这两种情况下,用户与应用将更具分布特性,并需要透彻理解跨地理位置交付带来的应用体验影响。利用Docker与集群管理器(例如Kubernetes与Apache MesoX)实现微服务原则。我们需要了解谁提供服务、谁负责监控,同时对多种服务所共享的开源代码或者Lambda等产品加以解析。服务可用性与应用架构交付必须得到保障。网络发展将在托管服务的集成工作中占据重要地位。如今这项工作由API实现,未来则可通过更多立足于其基本原则的微服务完成——微服务作为小型容器,能够以小规模增量形式衡量应用不同元素的性能水平。
总体而言,应用将继续朝着轻量化、移动友好性以及微服务部署模式方向发展。单一整体应用的日子已经过去,未来大量新型云部署工作都将借由轻量化脚本语言与面向服务机制实现。目前与未来的云体系将需要支持多种语言及部署模式,从而同时承载新型与旧有应用。
大家对于云应用的未来发展又有哪些见解?请在评论栏中与我们共享。
原文标题:The Future of Cloud-Based Applications
【51CTO.com独家译稿,合作站点转载请注明来源】