1、PaaS平台前端
1.PaaS平台概述linux
PaaS,即platform as service,翻译为:平台即服务。docker
PaaS是一种云服务,它提供了应用程序的开发和运行环境,借助于PaaS服务,你无须过多的考虑底层硬件,并能够方便的使用不少在构建应用时的必要服务,好比安全认证等。数据库
PaaS 旨在支持 Web 应用程序的完整生命周期:生成、测试、部署、管理和更新。安全
PaaS 让你无需购买和管理软件许可证、应用程序基础结构和中间件或开发工具和其余资源,从而避免了开支和复杂操做。你管理本身开发的应用程序和服务,剩余事项通常由云服务提供商负责。并发
2.PaaS平台的局限性负载均衡
3.Docker框架
能够理解为新一代的PaaS平台,Docker也被称为第三代Paas平台。分布式
2、项目环境问题工具
在咱们开发一个产品过程当中,通常都经历这么几个过程:
首先,产品定位,收集并肯定需求;其次,产品专员制做原型界面;紧接着,研发人员根据原型需求进行技术选型以及环境搭建;最后,测试经过部署上线。
在这个流程中,不一样的环境部署对于项目自己的正常运行风险是未知的:
以上的简单例子无不体现不一样的环境,执行相同的代码,产生的结果迥然不一样,这就是环境带来的未知风险 !
除了环境不一样带来的未知风险,咱们还可能碰到为不一样的人配置相同的开发或测试环境等等,想一想就很是的烦 !!!
3、docker
1.什么是docker
引自知乎上的解释:https://www.zhihu.com/question/28300645/answer/320388231
顾名思义,Docker为集装箱,Docker在实际应用中亦起集装箱之用——将开发、运行环境打包,方便开发环境布置以及运行环境部署,能够较好地减小环境部署的时间,并且在电脑上每一个Docker容器能够工做而互不影响。
与传统方式相比,它有如下优势:
①、开盒即用
Docker其实就像一份外卖,你拿来就能够直接食用,不须要特别的加工,能够节省大量的时间,而实际上这也是环境部署问题,传统的常看法决方案还为VM(Virtual machine,虚拟机)。
②、运行效率高
和其余解决方案相比,Docker像穿着薄手套吃炸鸡,其余则是像穿着厚手套吃炸鸡。虽然能达到同样的效果,可是却能更为方便快捷。
VM有着一个较为致命的缺点,那就是虚拟机须要将系统内核进行虚拟,每每须要消耗大量的资源。而在Docker中则相反,你能想象树莓派2上能运行2499个Docker容器吗?
不过安全性问题的确存在,在目前状况下,亚马逊(没记错吧)的解决方案是每一个虚拟机中单独运行一个Docker,以保证环境安全性。
③、环境独立
这儿又能够拿集装箱类比了,在集装箱里,每一个箱子能够放的东西相互独立,互不影响。就算你装一箱子毛线和一箱子猫,猫也弄不乱另外一个箱子的毛线。
如同VM,在同一台计算机中,能够运行多个Docker,它们互不影响,独立工做。
④、可二次开发
就和大多数饭店都是买东西来加工同样,使用Docker可让你拿别人作的半成品进一步加工,进而得出你须要成品。固然,你的成品也能够本身使用,或交由他人进一步加工。
在Docker中,每一个人均可以将别人作好的image(镜像,只读)拿来进一步配置,进而获得本身所须要的环境(Docker官网上也会提供不少image的),也能够将本身配置好的环境封装成image发布交由他人使用。
⑤、可快速配置
如同各类傻瓜相机,稍微调节就可一键操做,省时省力(虽然傻瓜相机效果没那么好,但在Docker中并不会影响实际效果)。
经过Dockerfile能够快速生成所需环境,配置极其方便。
⑥、自带分布式集群管理
一个专业知识再强的工程师,在实际建筑时效率也比不上一群民工(并无贬低之意)。
自带分布式集群能够经过分布式计算提升总的运算能力,亦可用于负载均衡。