专栏首页IT笔记SVN自动化部署全流程之架构之美

SVN自动化部署全流程之架构之美

公司一直没有一个完善的部署流程,基本都是通过上线打包以后SSH手动拖拽部署项目。

当然网上也有现成的持续集成工具,比如jenkins。Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: 1、持续的软件版本发布/测试项目。 2、监控外部调用执行的工作。

尽管jenkins有很丰富的功能。然而,暂时并没用使用倒它,这是后话,以后再谈。

上图,是一个生产环境上线的一个基本流程图。当然,这里忽略了测试环境的流程。

一、开发人员提交代码到SVN项目分支

二、SVN服务器执行代码检出功能,并使用rsync同步至生产环境服务器A(线上测试环境)

三、服务器A使用ANT以及shell脚本执行打包、备份、部署、重启操作

四、线上测试环境进行UI功能的测试

五、测试无误,服务器A使用rsync推送代码至线上集群服务器B和服务器C(事先备份)

六、测试人员进行简单的测试即可

注意完善使用说明

  • 步骤二中,其实可以用到svn的钩子功能,但是目前使用的脚本手动执行,同步代码库到生产环境。
  • 还有所谓的线上测试环境,是为了真实模拟生产环境,部署以及测试不至于影响正式环境,测试无误后再同步代码。
  • 基本解决的问题,脚本化部署,虽然有少量人工参与,但是免去了以前部署人员对照目录,拖拽的问题(少部署,漏部署,集群下复制,参数漏改的问题),最主要的还是TM网速问题。
  • 由于增加了线上测试环境,避免了部分功能回滚麻烦的问题。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Nginx学习之负载均衡

    负载均衡 负载均衡 建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性...

    小柒2012
  • Caused by: java.net.UnknownHostException: openapi.alipay.com

    支付宝下单,openapi.alipay.com就是传说中的支付宝网关名。 所有的所有配置好以后,包括pid、appid以及RSA私钥、公钥和支付宝公钥。 支付...

    小柒2012
  • Docker学习之搭建MySql容器服务

    MySQL 5.6 SQL数据库服务器Docker镜像,此容器映像包含用于OpenShift的MySQL 5.6 SQL数据库服务器和一般用法。用户可以选择RH...

    小柒2012
  • 十分钟入门Nginx基本功能

    本文主要介绍一些Nginx的最基本功能以及简单配置,但不包括Nginx的安装部署以及实现原理。废话不多,直接开始。

    秃头哥编程
  • [转]Nginx基本功能极速入门

    本文主要介绍一些Nginx的最基本功能以及简单配置,但不包括Nginx的安装部署以及实现原理。废话不多,直接开始。

    Esofar
  • 如何识别服务器是否有遭受DDOS流量攻击以及防御DDOS攻击的方法?

    对于基本不接触安全的用户,咱们先来说说什么是DDOS攻击吧!DDOS攻击是一种针对目标系统的恶意网络攻击行为,经常会对被攻击者得业务无法正常访问...

    墨者安全筱娜
  • Linux基础知识第一讲,基本目录结构与基本命令

    废话也不多说, Windows是在同一时间只能一个用户使用.所以有了盘符概念. E:\文件夹\.... Linux是支持多用户使用的.所以没有盘符概念.有跟...

    IBinary
  • 176条DevOps人员常用的linux命令速查表

    马哥linux运维
  • 176条DevOps人员常用的linux命令速查表

    线上查询及帮助命令 文件和目录操作命令 查看文件及内容处理命令 文件压缩及解压缩命令 信息显示命令 搜索文件命令 用户管理命令 基础网络操作命令 深入网络...

    小小科
  • 176条DevOps人员常用的linux命令速查表,收藏了慢慢看

    用户1634449

扫码关注云+社区

领取腾讯云代金券