论文部分内容阅读
随着软件体系结构的快速发展,传统的单体架构很难支持当今社会的软件开发应用。自Docker问世以来,微服务也得到了快速的发展,企业、组织等纷纷使用微服务架构进行开发。通过微服务架构体系思想将电子商务平台进行微服务化拆分,能够有效的降低不断迭代开发带来的复杂度。同时使用Docker为微服务化电子商务平台做云容器部署,更能够简化部署的过程,提供良好的隔离机制。为了管理数以万计的容器应用,各种容器编排框架应运而生,其中,容器调度过程中带来的能耗高、资源利用率低等问题非常显著。研究合理的容器放置能有效的减缓此类问题。为了研究上述内容,本文以电子商务平台为背景,针对其架构与容器技术目前存在的一些问题,完成了以下的工作:(1)综述了微服务架构以及研究了微服务之间的通信、服务部署以及服务发现等内容,并详细介绍了Docker容器技术,对Docker作了简单的介绍,包括Docker容器的功能与组件等。然后分析了Docker优点,为什么Docker与微服务架构如此契合。介绍了目前流行的容器编排部署技术。(2)针对目前容器编排框架或技术在微服务化应用的容器编排过程中没有考虑容器镜像复用以及只考虑CPU能耗的问题,本文依据容器基础镜像可共享这一理论基础,同时以CPU、内存和带宽三个资源目标为容器选择放置的因素,提出一个基于镜像复用的多目标资源容器放置算法予以解决目前微服务化应用容器编排存在的问题。(3)针对单体架构已不能满足电子商务平台需求的问题,设计出一套微服务架构体系的电子商务平台,然后对平台进行容器化部署。首先对电子商务平台进行微服务的拆分,接着建立电子商务平台的微服务架构,然后对电子商务平台进行容器化,最后基于镜像复用的多目标资源容器放置算法对电子商务平台的容器进行了部署。(4)实验分析了电子商务平台的容器通过基于镜像复用的多目标资源容器放置算法部署到云容器的资源消耗情况。验证了该策略能够在云环境中为电子商务平台提供支持。本文通过对微服务架构、容器化部署和容器放置算法的研究,并在电子商务平台上进行应用,将有助于电子商务平台的发展。