日常问题: 上线确认

news/2024/4/25 19:03:08/文章来源:https://www.cnblogs.com/woshimrf/p/16633045.html

作为开发,手头没事的时候,担心自己没参与大项目,年终没产出。而真正需求到来的时候,却是狂风暴雨一般,密集且时间紧迫。在紧锣密鼓996之后,终于迎来了上线。 但这一天不太顺利。

背景

xxx正式上线。上线前,方案强调要开发把所有配置都给到他,他要确认下。当时觉得有问题,开发的配置干嘛要给到他们。

开始正式验证数据的时候,第一个接口就404了。于是所有人都突然黑人问号了。客户心情瞬间不信任了。问这边啥情况。这边说需要调查。出问题模块的小组正在开会。又说不是变更时间段,要晚上9点后才可以做变更。客户当场不干了。于是老板们都加入了会议。

过程曲折

网络代理配置

压力之下,问题还需要一步步定位。半小时后确认是香港代理节点没配置转发。原方案设计是北美访问香港,香港代理到深圳。深圳这边倒是都配置好了。结果忘记香港代理配置了。

很快问题修复。流程可以继续验证了。但客户的信任出现了裂痕,他认为我们的系统不敢完全相信。之所以要各种配置方案,测试方案,就是前期合作中也多次出现过问题。所以客户在要求提供各种开发相关的资料,以此来证明我们做好了。这才明白为啥业务方会要我们开发设计的细节配置了。

后续还有更多流程,更多配置。于是大家自己也不敢保证没问题了。又开始拉着checklist检查清单挨着对。网络也挨着ping telnet。台风天,还是搞到很晚。

内部网络联通

回家后,同事接到电话要求第二天8点前到公司,因为有个功能是早上8点的。提前做好准备。然后他也想再确认下配置有没有问题。于是发现该服务sftp请求的地址网络不通。又是黑人问号脸。好像是没有开墙?于是,大晚上打值班的运维电话让帮忙开通网络。

数据安全和记录痕迹

第二天,他很早到公司。8点了,查看具体情况, 截图实际验证结果。

结果,说内容不对。

客户也发现问题了。

现在也不知道文件是谁放上去的。

最后确定是测试环境的文件。没查出个结果。

负责文件的小组说,早就是让xxx客户改密码了,他们没改。问客户,客户说他们没放文件。而我们这边也都说没。也没办法调查,因为机器环境在客户那里。

还好之前有设计异常方案,通过其他渠道修改了文件配置。至于文件究竟是谁放的,我们只能猜测是客户自己的人搞的。但他们否认,我们也无法举证。只能继续验证了。

设计方案和实际场景

中午去肯德基吃饭。吃到一半,打电话过来。xxx报错了。于是赶紧排队等电梯回去查看。测试根据报错,确认是创建人字段超长了(还好把错误一路传到了前端)。看下配置,数据库表中创建人字段长度是10位?哦,当时可能按工号设计的,结果用户是外国人,拿手机号当做用户名了。

打电话给运维,改。

改的时候也有点曲折,客户现场等,问需要多久,开发回方案说5分钟,方案回客户10分钟。结果6分钟的时候,开发还没改好脚本。着急的时候越容易出错,他自己在写sql。我旁边看着,想,如果是我,我会用工具修改生成sql后,复制。

在客户催了2遍后,改完了。然后流程回滚,重新验证。(还好,之前设计的方案支持错误中断回滚,否则只能运维改数据了)

到这里,还没验证完,但是,陆陆续续出现不少问题了。

复盘

  1. 敬畏生产,清单多次验证是需要的
  2. 数据安全和历史痕迹是需要的,除了防止出错,更多的是可以找到谁来背锅
  3. 设计方案除了需要评审,需要有经得住考验的、可以拿来即用的方案库,而不是每次又重新来。人力毕竟容易出错,复制就不会。

最后,上线方案要设计验证方案。总不能拿客户当测试。破裂的信任,要想修好,需要付出更多的努力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_2905.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第一个代码Hello World!

HelloWorld新建一个文件夹,存放代码新建一个Java文件 文件后缀为.java名为Hello.java[注意]要显示系统后缀名编写代码 public class Hello{ public static void main(String[] arge){ System.out.print("Hello,World!"); }} 打开cmd 路径需要是Hello.j…

Linux

1、关机命令命令 说明sync 将数据由内存同步到硬盘中shutdown 关机shutdown -h 10 10分钟后关机shutdown -h now 立马关机shutdown -h 20:25 指定时间关机shutdown -h +10 10分钟后关机shutdown -r now 系统立马重启shutdown -r +10 10分钟后重启reboot 重启,等于shutdown -r …

线性布局LinearLayout

线性布局中的下级视图有两种排列方式当orientation属性为horizontal时,线性布局中的下级视图在水平方向上从左往右排列 当orientation属性为vetical时,线性布局中的下级视图在垂直方向上从上往下排列线性布局的权重 概念:线性布局的权重,用来表示线性布局中各视图所占比例大…

NC50439 tokitsukaze and Soldier

在一个游戏中,tokitsukaze需要在n个士兵中选出一些士兵组成一个团去打副本。 第i个士兵的战力为v[i],团的战力是团内所有士兵的战力之和。 但是这些士兵有特殊的要求:如果选了第i个士兵,这个士兵希望团的人数不超过s[i]。(如果不选第i个士兵,就没有这个限制。) tokitsukaz…

Dos命令

打开cmdwin+r ->cmd 以管理员身份运行win->windows系统->命令提示符->右键->更多->以管理员身份运行 常用的Dos命令 盘符切换 输入D: 切到D盘 查看当前目录下的所有文件 dir 切换目录 cd (change directory) cd msicheng 从Users文件夹进入其子文件夹msiche…

个人网盘搭建——搭建Cloudreve并对接onedrive

前言 搭建这个主要是为了方便自己备份,顺便可以水一下文章(bushi) 其次是自己有好几个微软的全局账号吃灰,还是想稍微利用一下的,如果有人要子号可以来联系哦,好心的我应该会给你的吧 由于个人使用,不会介绍很难的安装方法。下面会介绍宝塔简单快速的安装方法。后续也许…

Spring学习笔记(三)——Spring依赖注入

1.Spring Bean属性注入的几种方式 1.1构造函数注入 使用构造函数实现属性注入大致步骤如下:在 Bean 中添加一个有参构造函数,构造函数内的每一个参数代表一个需要注入的属性; 在 Spring 的 XML 配置文件中,通过 <beans> 及其子元素 <bean> 对 Bean 进行定义; …

动态规划算法(背包问题)

1.应用场景-背包问题 背包问题:有一个背包,容量为4磅 ,现有如下物品1)要求达到的目标为装入的背包的总价值最大,并且重量不超出 2)要求装入的物品不能重复 2.动态规划算法介绍 1)动态规划(Dynamic Programming)算法的核心思想是:将大问题划分为小问题进行解决,从而一步步…

开启apache服务器gzip压缩

开启apache服务器gzip压缩-百度经验 https://jingyan.baidu.com/article/db55b609a7bc234ba20a2f7e.html 从服务端优化来说,通过对服务端做压缩配置可以大大减小文本文件的体积,从而使加载文本的速度成倍的加快。目前比较通用的压缩方法是启用gzip压缩。它会把浏览器请求的页…

Linux修改主机静态IP

通过VIM编辑器打开主机配置文件夹vim /etc/sysconfig/network-scripts/ifcfg-ens33修改IP地址为静态地址BOOTPROTO="static"添加静态IP地址和网关IP 地址 IPADDR=192.168.244.100 网关 GATEWAY=192.168.244.2 域名解析器 DNS1=192.168.244.2网络重启service network …

点击按钮收藏

分析 后台代码RouteServlet类:/*** 添加收藏* @param request* @param response* @throws ServletException* @throws IOException*/public void addFavorite(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//1、获取线…

前端5JQ

js获取用户输入 JS类属性操作 JS样式操作 事件 JS事件案例 JQuery类库 JQuery基本使用 基本筛选器(了解) 表单筛选器Js获取用户输入 普通数据(输入,选择) ​ 标签对象.value 获取文件数据的时候: 标签对象.value只能获取到文件路径,而标签对象.files结果是一个数组,可以通…

前端Day10

视口(viewport):浏览器显示页面内容的屏幕区域。分为布局视口、视觉视口、理想视口。 布局视口: 视觉视口: 理想视口: meta视口标签: width=device-width:布局视口宽度为当前设备宽度* user-scalable=no:不允许用户缩放 二倍图: 1.物理像素比: ①物理像素:即分辨…

分布式系统的session共享问题

目前大多数大型网站的服务器都采用了分布式服务集群的部署方式。所谓集群,就是让一组计算机服务器协同工作,解决大并发,大数据量瓶颈问题。但是在服务集群中,session共享往往是一个比较头疼的问题。因为session是在服务器端保存的,如果用户跳转到其他服务器的话,session就…

网络network

网络network 基础network模型 OSI七层模型,一层一层封装数据帧(添加报文头),传过去之后再一层一层解封装(解封装掉报文头) 应用层:应用软件层面业务端口,例如http/https,ftp,sftp,smtp(25),除了在四层TCP IP+端口号的方式进行外,还需要检查http/https的url,cook…

python中的多线程与多进程

线程概念: 线程也叫轻量级进程,是操作系统能够进行运算调度的最小单位,它被包涵在进程之中,是进程中的实际运作单位。 线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,但它可与同属一个进程的其他线程共享进程所拥有的全部资源。一个线程可以创建和撤销另一…

从设计到代码(第 3 天)

从设计到代码(第 3 天) 我最近正在开发一门课程,名为 三周内完成三个网页设计 .最初它是一个为期 3 周的研讨会材料,旨在成为一个包含许多实践的动手密集型研讨会。主要目标是教没有太多开发经验的人使用 HTML 和 CSS 来重现专业的设计模型——这就是为什么它被称为从设计到…

力扣507(java)-完美数(简单)

题目: 对于一个 正整数,如果它和除了它自身以外的所有 正因子 之和相等,我们称它为 「完美数」。 给定一个 整数 n, 如果是完美数,返回 true;否则返回 false。示例 1: 输入:num = 28输出:true解释:28 = 1 + 2 + 4 + 7 + 141, 2, 4, 7和 14 是 28 的所有正因子。示例 …

仅Intel电脑可用:设计2D/3D文档绘图Autodesk AutoCAD 2021

Autodesk AutoCAD 2021是Mac上的二维和三维CAD设计软件,用于产品衍生式设计,创建设计方案,三维模型参数化,建模部件组织,创建制作清晰工程图,设计自动化配置等,AutoCAD 2021增强了针对草图的命令设计,简化流程,改进各种性能,转化探索更强大的设计。​编辑切换为居中 …

Echarts与ajax数据的动态交互

初学Echarts,Echarts的官网示例中配置项的数据需要用到js数组来传递数据,所以当我们从后端查询到数据后,往往需要通过ajax来进行数据交互。 这是官方示例的配置项。<script type="text/javascript">// 基于准备好的dom,初始化echarts实例var myChart = ech…