应用云化技术架构

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wangfengwf/article/details/51871874
    什么是云化,这个词讨论起来比较的宽泛,市面上各种关于云化的书籍基本上都是从商业角度来论述的。那么从技术人员角度去理解云化,更多的就是将分布式化的计算环境,当然随着技术的发展,未来还会有更多关于技术方向上的称呼或者概念出现。借用最近华为对推进全面云化的总结,列出云计算几个技术特征。然后简单分析下各个领域目前正在做的事情,也是本人近期工作中重点研究的内容。
    1.所有的计算机都资源池化,实现计算资源共享。当然这里的计算资源可能还包括网络、IO、存储等。
    2.所有的应用都分布式化,分布式计算是支撑大规模系统的基础。只有分布式化,才可能实现动态的扩展和灵活的故障接管等。
    3.所有应用系统全自动化,全自动化是应用云计算追求的最终目标,只有实现应用系统运维、故障处理的全自动化,才能减少人工干预,提升应用系统运行效率。

1.计算能力资源池化
    在这个领域尤其所在的电信行业,早期计算机投入应用系统支撑都是一些微软的服务器,那时候应用主要以单机部署为主。后来第二个阶段,开始引入IBM、SUN等公司的Unix系统的小型机,这个时候机器层面管理还主要由专业供应商提供一些管理系统。
    虚拟化技术开始流行之后,就开始考虑将这些小型机进行虚拟化,此时正巧遇上国内去IOE化的大潮。因此,很多省份公司支撑的机器群都纷纷迁移至X86服务器,然后进行虚拟化。虚拟化有一个鲜明特征就是计算资源重组并且按照一定管理软件进行重分。
    随着应用层面技术的发展,这两年互联网技术架构中,服务的架构成为了主流,并且微服务模式更是备受推崇。各个领域里面也在配合技术架构进行转型。微服务技术架构是为了让计算利用资源更加充分合理。
    虚拟化技术让底层计算机资源实现了重组划分,那么容器技术的流行,就是为了计算资源更加细化管理和调度。应用层面越来越技术组件化,化大为小,彼此隔离,横向扩展。计算层容器化,Docker化就越来越重要。因为Docker化的容器打破了虚拟技术中资源共享模式,容器中不再有操作系统这样重量级的管理系统。而是通过一组进程,与底层计算机OS开放的API对接,实现计算资源的共享和重组。
    容器化技术,应该说是近期在整个软件领域都比较热门的方向,至少在这几年,会有非常多的应用系统的尝试迁移至容器化。目前本人参与的后台进程的调度平台,就是将后台进程迁移至Docker容器部署,实现计算资源动态扩容,为应用调度的动态扩容实现提供基础。

2.软件分布式化
    应用分布式化在软件领域有非常多的实践,通常在一个典型的面向服务的系统中,存在分布式服务、分布式事件,批量任务调度这类应用云化的实践。
    分布式服务,通过分布式一致性的协调技术组件,实现服务的在线注册、发现、访问。通过服务治理,统一管理对外开放的服务信息和访问方式。
    分布式事件框架,对于分布式类应用,通过消息组件实现发布订阅等模式的分布式处理,提升大规模计算请求的处理效率。
    批量任务调度框架,对于后台批量计算处理类的任务,需要统一管理,调度来实现批量任务并发处理,动态扩容等能力。

3.应用自动化管理
    分布式应用系统,因为应用管理难度增加,因此整个系统大管理平台不可缺少,大管理平台包括各类配置信息统一管理、资源、应用监控管理,动态调度扩容等管理,故障接管等统一监控管理。

    本文先简单的总结一下近期从事的技术架构方面的事情,后面会就每个领域,正在做的一些项目进行个人理解的观点分享。
   


阅读更多

扫码向博主提问

布衣1983

12年多大规模应用实时系统研发经验
去开通我的Chat快问
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页