天天看点

《PaaS程序设计》一1.4 云的核心技术

本节书摘来自华章出版社《paas程序设计》一书中的第1章,第1.4节,作者 lucas carlson,更多章节内容可以访问云栖社区“华章计算机”公众号查看

对开发者来说,“云”是一个外来术语,并被注以各种解释。云是怎么协助开发者更快更好地完成工作的呢?想要明确知道什么是简单应用、什么会改变我们的生活是很困难的。

对有些人来说,云就是gmail、dropbox这类的服务。其实这些是建立在云上的应用。它们并没有改变开发者的生活。真正改变开发者的生活的是支撑云的核心技术。

基础云技术是虚拟化、基础设施api、devops、应用程序生命周期管理工具以及noops。它们相互支撑组成了新一代云,彼此不可或缺。例如,没有虚拟化就没有基础设施api。

作为开发者,掌握任何一种基础技术都受益匪浅。例如,我们可以直接使用虚拟化。很多devops也是如此,直接管理kvm或者xen,通常虚拟多种操作系统来测试应用。我们可以通过虚拟化提供各种环境来测试应用,不用考虑它是一个软件应用、网络应用还是移动应用。

在虚拟化上使用api接口,很多开发者在亚马逊web服务器以及类似的openstack api上开发,这样可以更快更好。这样他们可以迅速扩展服务器并管理过程和程序包。

但问题是,当服务器在凌晨4点宕机时,开发者们总是第一个被通知的。服务器在凌晨4点宕机是不可避免的事,即便我们采用了虚拟化技术、基础设施api、亚马逊web服务器和cloud foundry。

作为开发者,工作中一半问题是如何获得我们需要的资源,基础设施即服务能解决这个问题。另一半问题是运行和管理我们的应用,这就是平台即服务擅长的。

从开发者的角度,我们可以运用任何核心技术。采用越高层次的技术,我们越可以留更多时间编码。作为开发者,我们可以把时间花在iaas层:可以更好地控制底层设备。现在的趋势是我们需要把时间用在vms上,较少时间放在用户编码上。

在云技术领域里,采用越高层次的技术,越接近paas技术,就越有更多的时间创新。你才有时间成为jason gendron并且开发出自己的产品,围绕用户需求进行各种尝试,研究出下一代google或者facebook的建设方案,完全不用再去担心凌晨4点服务器宕机的事情。

继续阅读