honmaple
V2EX  ›  问与答

部署应用怎样保证不出错?

  •  
  •   honmaple · Feb 26, 2016 via Android · 2332 views
    This topic created in 3912 days ago, the information mentioned may be changed or developed.
    如果更改了代码,比如数据库需要增加几个字段, redis 的 key 由 hset 成了 set ,需要启动或安装某些服务和模块等,这时应该怎么做(顺序是怎样的),总不能关掉应用吧,如果正在运行的应用与刚设置的服务有冲突怎么办?

    话说大家是怎么重新部署的,我是设置好需要的服务和数据,备份好原代码,简单粗暴的直接上传覆盖到原文件夹,然后重启应用(所以经常出错)
    14 replies  •  2016-02-26 14:01:33 +08:00
    O21
    O21
    Feb 26, 2016
    1
    反正先备份肯定没错。
    maskerTUI
    maskerTUI
    Feb 26, 2016 via Android
    2
    备份——模拟测试——生产环境更改
    codevn
    codevn
    Feb 26, 2016
    3
    脑子抽风起来,怎么也挡不住。。。
    ericls
    ericls
    Feb 26, 2016 via iPhone
    4
    tdd 加 ci
    x86
    x86
    Feb 26, 2016❤️3
    5
    部署的时候
    just4test
    just4test
    Feb 26, 2016 via Android
    6
    新应用跑起来 流量导过去 关掉旧应用。
    生产级环境像改 key 这种事儿就不该干。
    caixiexin
    caixiexin
    Feb 26, 2016 via Android
    7
    需要持续集成工具如 Jenkins ,配合版本管理如 svn
    尽量避免手改生产环境,刚开始可能比较麻烦,要写部署脚本,但后续工作就轻松多了
    imyip
    imyip
    Feb 26, 2016 via Android
    8
    祈求神灵保佑
    honmaple
    honmaple
    OP
    Feb 26, 2016
    9
    @maskerTUI 模拟测试是怎样的,用虚拟机?
    honmaple
    honmaple
    OP
    Feb 26, 2016
    10
    @x86 这太夸张了吧
    honmaple
    honmaple
    OP
    Feb 26, 2016
    11
    @just4test 昨天我就顺手改了一个 key ,结果一下午的 500,还好是我的个人网站
    honmaple
    honmaple
    OP
    Feb 26, 2016
    12
    @caixiexin thx ,我去搜搜看,以前没接触过
    julyclyde
    julyclyde
    Feb 26, 2016
    13
    先改为 try 新的 except 旧的
    然后改数据库结构
    然后再改为只执行新的
    543400
    543400
    Feb 26, 2016
    14
    有强迫症的程序员一般不会出错的
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2397 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 12:43 · PVG 20:43 · LAX 04:43 · JFK 07:43
    ♥ Do have faith in what you're doing.