基础 - 介绍

  • 作者:KK

  • 发表日期:2016.12.7


介绍

持续集成是一个概念,实现持续集成的软件有很多;也就像编程语言是一个概念或类别什么的,但具体的编程语言也有很多

Jenkins是个很实用的持续集成软件,它可以实现自动监控服务器与站点的运行状态、自动检查项目代码、自动运行单元测试、与预期不符合时自动邮件/短信等方式报警、向你报告项目的健康状态、方便的提测与上线操作等

一般的中小型公司都没有使用Jenkins,据我观察,其实并不是因为中小公司不适合使用,而是因为他们不知道有这种神器,又觉得很高大上,学习很麻烦,所以就不用了,甚至有的人觉得可能是中大型公司才应该用的!其实他们都吃了大亏!绝对是谁用谁受益啊!


比系统定时好的地方

你可能会想到,我上面介绍的那些功能,完全可以直接写个程序,在系统里设置个定时执行也可以啊

还要用Jenkins?其实它的好处在于:

  1. 它除了定时执行,还能提供可视化平台让你手动触发立即执行,如果用系统定时执行,那你还要手动去敲命令运行你的程序是不是,重点是你要手动敲命令,而且它能一次性运行很多命令

  2. 它可以在运行结果不符合预期的时候自动发邮件或短信给你,但不需要你写发邮件程序,Jenkins自带。重点是你将会有很多定时执行的程序,不可能每个程序都写发邮件发短信的代码,而且编程语言也可能不同

  3. 它可以记下运行的历史,某年某月某日哪分哪秒运行了,输出了什么成功或错误信息,成功还是失败,都可以追查

  4. 它提供了一个用户系统,实现不同用户拥有不同项目甚至不同操作的功能,高级用户可以操作所有项目所有配置等,但低级用户只能触发运行等

最后简单地说它就是让你预定义的事情无人值守运行,节省了大量人工时间成本


我作为PHP领域的WEB开发者,用到的功能点与知识点并不是非常多,但是听说Java和C++的项目使用的知识点和功能深度都比我所学的更深入

很多大公司都在用Jenkins,而学习成本嘛,半天就能把它上手,只要花点时间部署配置一次,它就能长期地天天自动为你的项目带来好处,何乐而不为?


它的旧版本软件叫Hudson,由于跟别人的产品名称冲突,输了官司所以只好改名,而上网搜索Hudson教程还是有资料的,不过可能是比较旧版的了,现在新的文章都用Jenkins一词来描述这个软件