前言
毕业以来,还算顺利的进入一家互联网公司,从事Java后端的开发。一路走来将近八年的光景,期间经历过刚毕业工作的狂喜,也遇到过因工作失误而受到的打击。我觉得这都是一种历练,经过这些磨砺,算是学到了不少东西,同时我自己也探索了很多的学习方法,总结了很多心得体会,并且对面试这块也做了一些研究和相应的准备。希望分享出来能帮到更多朋友们的学习、面试,为金九银十做准备。
容器化时代来了
虚拟化技术已经走过了三个时代,没有容器化技术的演进就不会有 Docker 技术的诞生。
(1)物理机时代:多个应用程序可能会跑在一台机器上。
(2)虚拟机时代:一台物理机器安装多个虚拟机(VM),一个虚拟机跑多个程序。
(3)容器化时代:一台物理机安装多个容器实例(container),一个容器跑多个程序。
容器化解决了软件开发过程中一个令人非常头疼的问题,用一段对话描述:
测试人员:你这个功能有问题。
开发人员:我本地是好的啊。
开发人员编写代码,在自己本地环境测试完成后,将代码部署到测试或生产环境中,经常会遇到各种各样的问题。明明本地完美运行的代码为什么部署后出现很多 bug,原因有很多:不同的操作系统、不同的依赖库等,总结一句话就是因