SCPPO(十):网站发布中的问题锦集—手动发布网站

【前言】

       现在做的项目是个维护性的项目,我们是第三期的末尾,最近正忙着验收。当然在验收前会有些功能需要修改,另外也会有新的需求需要实现;再加之最近有企业核对数据等等,所以网站的发布变成主要的工作之一。当然自己也有幸被组长多安排其中一个网站发布的职责(本项目中共有两个网站);所以有了今天的这次成长经历。

       郑重声明:本人主要职责还是开发,只不过开发人员较少(加上组长共四个人),所以也有幸担任运维这个角色。

【我们网站的发布】

       在进入今天主题之前,必须给大家交代一下我们项目中的网站是如何发布的,这样大家在接下来的主题中才会明白问题的来源。

       我们项目发布的方式比较low,没有使用类似于Jenkins的持续集成的软件,而是采取比较原始的手动拷贝方式;发布过网站的朋友都知道,其中会蕴藏一个经常出现问题—版本控制问题,由于开发人员多个,大家你也放我也放,经常会出现版本冲突问题,我们现在的解决办法是每个项目安排一个人来进行统一发布,其他的人不能私自发布。

     发布流程:

     A.老规矩先来张整体示意图:

 

     B.发步流程的具体实现:

     第一步:在TFS上获取最新代码。

 

     第二步:本地运行起来进行新功能的测试(此步不再截图演示)

     第三步:在本地上进行网站发布

     第四步:查看需要部署的文件

        (1)如果改动MVC中的Controller层或B层D层的东西需要查看发布中的bin文件夹

        (2)如果改动界面需要对应相应的文件夹找到该界面 

     

  

     第五步:备份服务器上的文件(将服务器上对应的文件夹有改动的地方复制到别的地方)         

     第六步:将本地发布好的需要部署的文件覆盖掉服务器上的文件(切记在覆盖之前确保做好相关备份,不然一旦覆盖后出问题就恢复不到原来版本)

     第七步:测试发布好的网站的新加的功能

【经常遇到问题及解决方案】

     (1)人操作时容易乱,刚开始大家都有部署的权限,这样经常会发现网站起不来或有问题,最后查到的原因是只部署自己知道部署的地方,但是其他人改的东西没部署上。

      解决之道:一个项目专门安排一个人负责部署,大家有需要部署功能给这个人说。

     (2)在部署其他人的功能时漏部署文件(尤其是界面文件,和一些配置文件)。

       解决之道:通过TFS查看修改的历史来解决。

     (3)在(1)中由同一个人统一部署避免了多人操作没法保障问题,但是也带来一个问题:当部署这个人请假,而新做出的功能需要部署时,该怎么办?

       解决之道:由需要测试功能开发人员代替部署人部署进行测试。

     (4)在(3)的情况下又会有新问题的情况出现—新功能人的一些引用DLL和服务器上的不一致。

       解决之道:由于篇幅原因,大家敬请看小编的下篇博文《SCPPO:网站发布中的问题锦集—ReportViewer版本问题

【总结】

       在网站发布的过程中也遇到好多奇葩的问题,很多时候在本地发布没问题,发布到服务器上就会出各种意想不到的问题,毕竟开发环境和线上环境有很多不同的地方,这时候如何快速的排查出问题的所在也是一种能力。很庆幸有这样接触线上环境的机会,同时又向全栈工程师迈进了一大步。

当年的春天 CSDN认证博客专家 分布式 Spring Redis
6年Java互联网研发经验,坐标北京;擅长微服务和中间件。
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 博客之星2020 设计师:CY__0809 返回首页
实付 9.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值