2017年度盘点丨基础架构演化:从“以资源为中心”到“以应用为中心”的迁移

作者:刘建,搜狗资深架构师,商业平台基础平台负责人,十多年Java相关研发经验,在互联网软件体系结构、分布式计算、面向服务体系结构、用户身份安全等方面有浓厚的兴趣及实践经验。
责编:钱曙光(qianshg@csdn.net)
声明: CSDN专家原创投稿文章,未经授权禁止任何形式的转载。

谈到基础架构,不同的人有不同的理解。一般说来,我们将支撑应用研发部署的底层软硬件的集合叫做基础架构。它不仅涉及到IDC、机房、机架、网络、主机、存储等硬件资源,也涉及到操作系统、系统软件、日志管理、应用管理监控等基础软件资源。基础架构支持了分布式服务、大数据、云计算、机器学习等基础领域,也成为IT类企业提升生产力、降低成本的核心。近些年来,随着虚拟化、容器化等新技术的不断涌现和发展,随着应用开发模式从单体应用、MVC、SOA到微服务化,基础架构领域发生了翻天覆地的变化,其对应用的灵活性和透明性不断提升,也显著提升了研发效率,降低了研发成本。

从IaaS、PaaS到CaaS

IaaS

基础架构涉及IDC、机房、网络、主机等基础资源、机架设计和交付、网络架构设计、数据架构规划、操作系统、系统软件、环境交付和机器报废替换等。早期应用的开发和部署过程中大部分的工作不是关注于应用的研发,而是关注于基础环境的搭建,包括租用或者购买主机、搭建网络设施、部署系统及日志监控等基础软件。其开发部署效率低,整体成本高。IaaS基于虚拟化技术提供一种“随需应变”使用硬件资源的方式,它同时提供访问物理主机、存储和网络硬件等接口,使得用户能够按需创建其需要的虚拟资源,较精细的控制所需的主机资源。通过IaaS,能够屏蔽物理硬件的位置,同时节省了IDC、网络、服务器的维护成本。相较于传统的基础架构,IaaS对应用研发人员提供了一层透明性。然而,IaaS仍是以资源为中心的,IaaS仅通过虚拟机提供了机器等底层硬件资源层级的抽象,虚拟机之上的操作系统,应用软件等都依赖于研发人员自行部署和维护。虽然IaaS扩容相对容易,但研发人员仍需从架构上考虑机器宕机、机器故障、网络故障等诸多因素,从而保障应用的高可用。

PaaS

虽然Iaas通过虚拟化屏蔽了底层硬件资源,然而,对于应用研发来说,还有很多基础性的问题没有解决,比如应用部署、弹性扩缩容、高可用保障、监控、日志等。因此,PaaS应运而生。PaaS在IaaS的基础上构建了一层中间层,提供了完整的应用开发、部署、运行、监控平台,提供了一系列的基础服务:包括缓存服务、数据库服务等。国内外比较流行的PaaS平台包括Amazon Web Service、Google App Engine、阿里云、腾讯云等。同时,PaaS平台也提供了工具或者类库来帮助研发人员创建应用、访问PaaS平台提供的各种服务。PaaS平台支持高可靠、自动扩缩容、故障迁移,运维成本极低,可以随需满足业务发展需求。相对于IaaS,PaaS平台对应用的支持更近了一步。然而,PaaS也存在缺点,主要体现在:

  • 灵活性不够

PaaS 提供的是应用的开发、运行环境,用户看不到底层虚拟机资源,因此一般无法对底层虚拟机资源进行控制。同时,PaaS平台将应用割裂成应用代

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值