工作总结:上线篇

文章目录


前言

上线算是我工作中最害怕的事情之一,另外一个事情就是领导叫我(领导有事一般都是给我发消息,不叫我)。上线的过程不亚于参加了一次马拉松,全程心率都很高。但我还是要说,不要过度紧张,保持紧张感就行了。


一、上线流程

上线的整个流程还是很简单的。我们这里上线流程是这样的

1.把已经写好的且经过审查和测试的远程代码分支合并到master,需要看看两个分支的区别是不是这次需要发布的代码。

2.检查master和branch流水线,如果出问题了,先自己看看是什么原因,找不到再去找QA

3.如果master流水线OK,就进行发布

4.在devops平台进行发上线单,通过QA,RD,OP的审查之后,开始执行上线单

5.根据上线单,一步步执行上线单,一般都是灰度发布,先发一台,然后在一台机器上再测试现在的代码有没有问题,没有问题再在全部的机器上进行上线

6.执行上线回归测试。

但是每一步都可能会出问题,尤其是,如果你的这个代码,需要跟其他的项目(比如前端,比如需要从其他的后端项目取数据)进行配合,你就放心吧,上线绝对会出问题。

二、各种问题

流水线问题

根据流水线配置不同,会出现各种各样的问题。下面是我遇到问题的一个盘点。

1.编译问题

我遇到两次编译出现问题,这个不用怀疑,一定是代码哪里出现了问题,看看是不是哪里的代码没有给提交上,或者哪里的代码写的有问题给提交上了。

2.单测问题

单测的代码也是代码兄弟。不要不当回事。大公司对代码的单测覆盖率有要求的,所以对单测代码的质量也要保证。不要写垃圾的单测。在每次上传之前,都要保证单测能过。

具体可以看看我写的单测篇。

3.磁盘空间问题

磁盘空间满了流水线就操作不了了,会报对应的bug,这个找QA解决就行了。

发单问题

我们公司上线,是通过发上线单,然后通过执行上线单来上线。这样说可能比较抽象,你可以理解为二次封装的宝塔。对宝塔再进行了一次封装,不用配IP,不用配nginx,不用配https等等。只用点点点就能上线了,配置在我来之前各种配置就已经配置好了。

发上线唯一会出现的问题就是,你没有把配置选对,然后上面说审查,但是他们忙的很,看都不看一眼就给你过了。

还有就是OP会拷问你,问你各种问题(我觉得OP谨慎是好事),我一般是答不出来,我就甩给我领导。

上线后的问题

前后端合作的情况

如何是前后端合作的上线,我这里一般是后端先上线,然后前端再上线。前后端分离会出现,我目前遇到的最大的问题就是跨域问题或者说玄学问题。

跨域问题可好解决啦,我们后端只需要配置好跨域请求头就好了,难的是,把跨域请求头配置的都对,但是前端还是有跨域问题。汗流浃背了。这种问题,我只能说你等等,等一会就好了。八成是公司你不知道的地方,哪里有问题。

还有就是,在上线之前,一定一定要跟前端沟通清楚,跟PM沟通清楚。问清楚PM想要的是什么,然后前端把他们的开发文档写完之后,后端也一定要看,我们后端把开发文档写完之后,也一定要发给前端看。不清楚哪里就出问题了。

我后面也会写一篇有关职场沟通的。可以关注一下。

后端项目和后端项目合作的情况

这个标题一看可能会比较抽象,怎么会后端和后端合作呢?简单来说就是,我这个项目需要去其他的后端项目拿数据。

为什么会出现这个情况呢?我们组是一个大的项目,然后领导把一个大的项目拆成了几个小项目。这些项目的部分接口就需要相互配合。

最恶心的是,你对别人负责的项目不熟悉,拿不到想要的数据,就会发生各种各样的情况。

记住,如果需要跟别的后端项目配合,一定要留好时间,别人也在上班,也有事情要做。

我也不知道领导为什么不上微服务。虽然现在的代码跟微服务相比是多了一点,但项目的理解程度会好很多。

后端项目和小程序合作的情况

这种情况,你也要做测试,跟领导要小程序相关的权限,然后做测试。

这种情况其实还好。

自己的项目代码的情况(无任何合作)

这种情况就是求之不得,一般上线自己的代码,跟其他没有依赖的,我到目前上线还没遇到过问题。

发单问题

我们公司如果在发单的时候,配置没选对,可能会把机器上的项目给干下线。

亲身经历。对于这种情况,我只能跟你说尽量选对。不然你要撤销本次发单,然后再重新发单上线,接收OP的拷打。

我脸皮有点薄,不善长跟别人沟通,很讨厌别人拷打我的。

相关推荐
vivo互联网技术34 分钟前
vivo 互联网研发效能关键技术与实践
软件测试·devops·cicd·效能提升
lcw_lance39 分钟前
技术中台-核心技术介绍(微服务、云原生、DevOps等)
微服务·云原生·devops
林鸿群3 小时前
go语言实现IP归属地查询
开发语言·golang·ip归属地
不念霉运3 小时前
2025年中国主流DevOps平台对比分析:Gitee、阿里云效与GitLab CE的技术适配与合规实践全景解读
团队开发·代码规范·devops·代码复审
st紫月4 小时前
用vue和go实现登录加密
前端·vue.js·golang
YGGP5 小时前
浅析 Golang 内存管理
golang·内存泄露·内存逃逸
Chandler246 小时前
Go 语言 net/http 包使用:HTTP 服务器、客户端与中间件
服务器·http·golang
Chandler247 小时前
Go语言:json 作用和语法
开发语言·golang·json
不念霉运7 小时前
2025年中国DevOps工具选型指南:主流平台能力横向对比
运维·ci/cd·团队开发·devops
李匠202413 小时前
C++GO语言微服务之图片、短信验证码生成及存储
开发语言·c++·微服务·golang