当前位置:网站首页>Continuous (integration -- & gt; delivery -- & gt; deployment)
Continuous (integration -- & gt; delivery -- & gt; deployment)
2022-07-28 13:41:00 【51CTO】
General process of software development

It can be seen from the above figure 「 Continuous integration (Continuous Integration)」、「 Continuous delivery (Continuous Delivery)」 and 「 Continuous deployment (Continuous Deployment)」 The difference between these three concepts is based on the persistence of implementation in the software development process , It is divided according to the different stages of Automation .
1. Continuous integration :
Continuous integration (Continuous integration), abbreviation CI
Continuous integration refers to the delivery of the part of software personal development to the whole part of software , Integrate frequently to find errors faster .

CI You need to have these :
- Comprehensive automated testing . This is continuous integration of practice & The foundation of continuous deployment , meanwhile , Choosing the right automated testing tool is also extremely important ;
- Flexible infrastructure . Containers , The existence of virtual machines allows developers and QA People don't have to go through a lot of trouble ;
- Version control tools . Such as Git,CVS,SVN etc. ;
- Tools for automated build and software release processes , Such as Jenkins,flow.ci;
- feedback mechanism . Such as building / The failure of the test , Can quickly feedback to the relevant person in charge , To get a more stable version as soon as possible .
The benefits of continuous integration
- “ Fast failure ”, Testing without risk to the product , And respond quickly ;
- Minimize risk , Reduce the cost of fixing error code ;
- Automate repetitive manual processes , Let engineers focus more on code ;
- Keep deploying frequently , Quickly build deployable Software ;
- Improve the visibility of the project , Make it easy for team members to understand the progress and maturity of the project ;
- Enhance developers' confidence in software products , Help build a better engineer culture .
2. Continuous delivery :
Continuous delivery (Continuous delivery) refer to , Frequently put new versions of the software , Deliver to quality team or user , For review . If the review is passed , The code goes into production .
Continuous delivery can be seen as the next step of continuous integration . It emphasizes , No matter how it's updated , Software can be delivered anytime, anywhere .
Continuous delivery is based on continuous integration , Deploy the integrated code to a more realistic environment 「 Class production environment 」(production-like environments) in . Continuous delivery takes precedence over software deployment throughout the product lifecycle , Built on a high level of automation and continuous integration .

The benefits of continuous delivery
The advantages of continuous delivery and continuous integration are very similar :
- Fast release . Be able to respond to business needs , And realize software value faster .
- code -> test -> go online -> Frequent iterations of delivery shorten , And get quick feedback ;
- High quality software release standards . Standardize the whole delivery process 、 repeatable 、 reliable ,
- Visualization of the progress of the whole delivery process , Make it easier for team members to understand project maturity ;
- A more advanced way of teamwork . From demand analysis 、 The user experience of the product is interaction Design 、 Development 、 test 、 O & M and other roles cooperate closely , Compared to the traditional waterfall software team , Less waste .
3. Continuous deployment :
Continuous deployment is when the delivered code passes the review , Automatically deploy to the production environment . Continuous deployment is the highest stage of continuous delivery . It means , All changes that have passed a series of automated tests will be automatically deployed to the production environment . It can also be called “Continuous Release”.

Continuous deployment is an ideal workflow
“ Developers submit code , Continuous integration server to get code , Perform unit tests , Decide whether to deploy to the rehearsal environment based on the test results , If successfully deployed to the rehearsal environment , Conduct the overall acceptance test , If the test passes , Automatically deploy to the production environment , The whole process is automatic and efficient .”
The benefits of continuous deployment
The main benefits of continuous deployment are , New capabilities can be deployed relatively independently , And can quickly collect feedback from real users .
Continuous integration (Continuous Integration)、 Continuous delivery (Continuous Delivery) and Continuous deployment (Continuous Deployment) Provides an excellent DevOps Environmental Science , For the whole team , The benefits go hand in hand with the challenges . in any case , Frequent deployment 、 Rapid delivery and test process automation will become an important part of software engineering in the future .
DevOps:Development and Operations The combination of , You can put DevOps As the development of ( Software Engineering )、 Technical operations and quality assurance (QA) The intersection of the three .

Reference article :
http://www.jianshu.com/p/2c6ebe34744a
http://www.ruanyifeng.com/blog/2015/09/continuous-integration.html

author : Lingyejun
If you like or want to see more of my articles , My official account of WeChat 《 Lingyejun 》.
Please keep the source and signature when reprinting the article , Otherwise, the right to pursue legal responsibility is reserved .
边栏推荐
- FFT wave simulation
- Use non recursive method to realize layer traversal, preorder traversal, middle order traversal and post order traversal in binary tree
- 如何配置adb环境变量(环境变量在哪打开)
- 数据库系统原理与应用教程(061)—— MySQL 练习题:操作题 21-31(五)
- Countdown 2 days! 2022 China Computing Conference: Mobile cloud invites you to meet with computing network for innovative development
- C language: merge sort
- .NET桌面开发的一些思考
- Debezium系列之:2.0.0.Beta1的重大变化和新特性
- LyScript 获取上一条与下一条指令
- I'm bald! Who should I choose for unique index or general index?
猜你喜欢

Beyond istio OSS -- current situation and future of istio Service Grid

Have a part of the game, after NFT is disabled in my world

111. SAP UI5 FileUploader 控件实现本地文件上传,接收服务器端的响应时遇到跨域访问错误

Have you seen the management area decoupling architecture? Can help customers solve big problems

火山石投资章苏阳:硬科技,下一个10年相对确定的答案

Form for real-time custom verification

Night God simulator packet capturing wechat applet

I miss the year of "losing" Li Ziqi

Leetcdoe-342. Power of 4

夜神模拟器抓包微信小程序
随机推荐
IP电话系统和VoIP系统使用指南
Jar package
沾上趣店,都得道歉?
我抄底了被清算的NFT,却被OpenSea上了锁
Three men "running away" from high positions in the mobile phone factory
Cesium pit -- pit used by various API calls and API itself
What if the server cannot be connected (the original server cannot find the target resource)
MySQL practice -- master-slave replication
C language: quick sorting of sequential storage structure
酷炫操作预热!代码实现小星球特效
FFT海浪模拟
蓝桥集训(附加面试题)第七天
如何配置adb环境变量(环境变量在哪打开)
Half wave rectification light LED
国产API管理工具Eolink太好用了,打造高效的研发利器
Have you seen the management area decoupling architecture? Can help customers solve big problems
Dry goods -- encapsulated anti shake and throttling method in the project
Intra prediction and transform kernel selection based on Neural Network
Using auto.js to realize fifaol3 brush teaching assistant
SQL每日一练(牛客新题库)——第4天:高级操作符