云计算服务的可扩展性、弹性与成本效益解析
1. 软件系统面临的挑战与新方法需求
在当今数字化时代,软件系统面临着诸多挑战,特别是在可扩展性方面。例如,美国政府的医疗保健系统在用户试图收集健康保险信息的最初几周内,因负载过大而崩溃,官员们未能对系统进行足够的负载测试。在线游戏或具有在线授权组件的游戏在新游戏或附加组件发布的那一周也经常面临可扩展性问题,像《魔兽世界》这样经验丰富的游戏也不例外。
传统的软件开发中,测试是确保系统符合要求的常用技术,但往往侧重于功能正确性,而忽略了额外功能属性。为了解决这些额外功能问题,需要特殊类型的测试,如负载或分期测试。然而,这些测试在实践中往往很复杂,因为要测试高负载或重工作条件下的系统,首先需要创建这些条件,而这需要大量资源。此外,需求规格本身也可能是问题的一部分,功能需求通常详细规定,而额外功能属性要么缺失,要么表述模糊,无法进行系统工程设计和测试。
为了解决这些问题,需要新的工程方法。有一种方法通过明确考虑可扩展性、弹性和效率要求,并提供验证其实现的方法,无论是使用开发中系统的模型还是实际实现,都能从一开始就以满足要求的方式实现云计算应用程序。这主要是通过在软件开发过程中引入以前未集成的工程原则来实现的,特别是在开发过程早期分析系统设计,并在后期进行检查,从而预测开发工作的成功并避免意外情况。
2. 云计算时代的软件特点
随着计算硬件、高速网络、Web 编程、分布式和并行计算等技术的快速发展,云计算已成为商业现实,并迅速成为未来十年的新计算范式。其主要思想是将计算能力、存储容量和网络资源视为可以像能源一样利用的资源,由专业公司提供,而资源用户无需了解这些资源的实际获取方式和位置。
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



