ES索引误删的名场面

news2024/12/23 9:29:57

慌了3秒,果断发个邮件;


01


最近,在版本发布时;

ES线上未备份的索引,被当场「误删」了;

对于新手来说,妥妥的社死名场面;

对于老手来说,慌它3秒表示一下态度;

当时的情况也不复杂;

某「个别」队友在处理动态索引的字段问题时,反复重新构建结构和数据;

为了严谨;

还在自个本地环境不断的测试;

万事皆因忙中错;

忙着忙着,本地环境和线上环境就混了,手一抖,生产环境的数据跟着就没了;

当场傻楞了3秒,接着就是一句国粹脱口而出;

这一幕,属实有点似曾相识;


02


人祸横跳出来的时候;

慌没用,自责没用,甩锅更没用;

有用的操作就是团队静心找补,快速把问题解决好,不然都得跟着耗时间;

【首先】客观的说明一下项目情况;

体量很小的项目,几个「资深」的码农在三心二意应付着,然后就有老六不按常理出牌,事后还狡辩说锻炼了团队的应急能力;

【再来】聊聊当时每个人的应对;

  • 项目经理:邮件通知相关人员,版本发布+结构模型和数据升级,并且禁用了相关模块;
  • 当事人甲:平复情绪,稳住完成索引上线;
  • 围观人甲:拖出线程池脚本,快速完成几千条索引条数据的重建;
  • 运维同学:完成服务的最终升级,备份相关索引;

【纵观】全程,主打一手:若无其事,一本正经;

此处,细思极恐;

如果不是项目不值一提,这些个参与者弄不好还值得开会表扬一下;

职场上的队友要都是这般梦幻,一定要珍惜;


03


客观来说,项目本身「规格」很低;

但是,这种有开发介入,发布还在临时调试的情况本身就不常见;

在实际情况中;

虽然版本发布,有严谨的执行步骤,依然避不开个别老六灵光乍现的骚操作;

结果就是,和手搓的BUG正面对线;

这种要是出现在公司系统级的项目中,必然是得祭出点什么,取决于业务模块和影响面;

必须要郑重提醒;

不能轻易用手动的方式执行删除动作,可以用流程管理的方式实现;

这样整体可控,也有利于测试验收;


04


虽然索引删除的场面比较尴尬;

但是经过实践考验的应对流程,值得反思和总结;

不怕一万,就怕下一次的一万;

至于哪里能值得借鉴,这得看实际情况;

关于索引删除和重建的问题,在以前的文章中有提过,这里更多是记录一下处理思路;「参考文尾」

在这里插入图片描述

  • 【1】快速下线相关功能模块,问题影响面广会增加复杂度,当时绝对在5分钟内下线;
  • 【2】索引数据是基于消息队列调度的,并且可以暂停流程执行,方便处理索引结构;
  • 【3】基于线程池高效的实现索引数据恢复,(没实际对比过,经常倒腾数据用顺手的工具脚本);
  • 【4】运维进行索引备份,增强数据安全;

BUG对线过程,半个小时内就处理完毕了;

这里对于团队的人来说,每个人都迅速找准解决问题的切入点,顺畅的合作,准确并高效的解决;

项目负责人说,他那会去给客户道歉的话都想好了;

可惜,没给他兜底表演的机会;


05


最后总结两句;

虽然发布故障有点出其不意,但是团队在处理上还算体面妥当

所以,魔幻的职场不重要,重要的是有魔幻的队友。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python3,100行代码,写一段新年祝福视频,为新年喝彩。

新年祝福 1、引言2、代码示例2.1 思路2.2 介绍2.2.1 画布2.2.2 用法 2.3 实例 3、总结 1、引言 小屌丝:鱼哥, 这2023年马上就结束了, 是不是要表示表示。 小鱼:我也在思考这个事情。 小屌丝:这还需要思考?…

kubernetesr安全篇之云原生安全概述

云原生 4C 安全模型 云原生 4C 安全模型,是指在四个层面上考虑云原生的安全: Cloud(云或基础设施层)Cluster(Kubernetes 集群层)Container(容器层)Code(代码层&#xf…

modelsim使用技巧

Modelsim关闭Add items to the Project后,该如何添加existing file: 在project页面下,右键选择add to project-add existing file 设置modelsim的仿真波形时间单位: 打开Modelsim后,在Wave-Wave Preferences后&#…

从零开始学习Web自动化:用Python和Selenium实现网站登录功能!

Web自动化测试实战项目:使用Selenium和Python完成网站登录功能的自动化测试 本文将介绍如何使用Selenium和Python编写自动化测试脚本,对网站登录功能进行测试。我们将通过模拟用户在网站上输入用户名和密码,并点击登录按钮,来检验…

JavaWeb编程语言—登录校验

一、前言&简介 前言:小编的上一篇文章“JavaWeb编程语言—登录功能实现”,介绍了如何通过Java代码实现通过接收前端传来的账号、密码信息来登录后端服务器,但是没有实现登录校验功能,这代表着用户不需要登录也能直接访问服务器…

设计模式 原型模式 与 Spring 原型模式源码解析(包含Bean的创建过程)

原型模式 原型模式(Prototype模式)是指:用原型实例指定创建对象的种类,并且通过拷贝这些原型,创建新的对象。 原型模式是一种创建型设计模式,允许一个对象再创建另外一个可定制的对象,无需知道如何创建的细节。 工作原…

技术分享-Jenkins

持续集成及Jenkins介绍 软件开发生命周期叫SDLC(Software Development Life Cycle),集合了计划、开发、测试、部署过程。 在平常的开发过程中, 需要频繁地(一天多次)将代码集成到主干,这个叫持…

电子烟单片机方案开发,32位单片机PY32F030电子烟解决方案

电子烟是一种低压的微电子雾化设备。可以通过加热液体产生雾状物质,供用户吸入使用的新型电子产品。它是由微控制器(MCU)、超声波雾化发生器、充电管理IC、锂离子电池、发热棒等器件构成,主要用于替代传统香烟和戒烟,与…

一文读懂什么是智能工厂?

引言 在当今快速变革的制造业中,智能工厂如一盏明灯,照亮着未来生产的道路。它们不仅代表着技术的进步,更是制造业向前迈进的里程碑。智能工厂利用先进的技术和创新方法,将传统工厂转化为高度自动化、数字化和智能化的生产中心。…

13英寸MacBook Pro停产后 Touch Bar功能被废弃

新款M3 MacBook Pro的发布标志着苹果13英寸MacBook Pro正式停产。这款13英寸MacBook Pro是最后一款搭载Touch Bar的苹果笔记本,这意味着苹果已经放弃了使用Touch Bar。 Touch Bar是一块OLED触控显示屏,位于MacBook Pro键盘的顶部。尽管苹果对它抱有很高的…

MyBatis的查询方法!!!

准备工作:1.创建一个maven工程,然后将pojo类导入到项目中去。 2.导入依赖到pom.xml文件中 3.在resources中创建log4j.properites和mybatis-config.xml 4.创建UserMapper接口和UserMapper.xml文件 5.创建测试类MyBatisTest 1.创建Maven工程,还…

蓝桥杯嵌入式——串口

CUBE里配置成异步模式,设置波特率,打开中断(先配置LCD再配置串口): 串口发送 main.c #include "string.h" char temp[20]; sprintf(temp,"Hello World\r\n"); HAL_UART_Transmit(&huart1,(…

绝地求生是国际服吗?

绝地求生(PlayerUnknowns Battlegrounds,简称PUBG)是一款多人在线的生存竞技类游戏,由韩国的蓝洞公司开发和发行。该游戏于2017年正式发布,以其创新的游戏模式和激烈的战斗场景迅速走红全球,并成为全球最具…

魔众文库系统v5.8.0版本发布:水印、分类与移动端升级,打造更高效文档管理体验

魔众文库系统迎来了全新的v5.8.0版本更新!此次更新不仅对水印功能进行了升级,还新增了辅助分类样式,同时优化了移动端体验。让我们一起来看看这次更新的亮点吧! 一、水印功能全新升级 在v5.8.0版本中,魔众文库系统的…

Java实现一个在windows环境下的文件搜索引擎

以下是一个简单的Java实现的Windows文件搜索引擎的示例代码: import java.io.File; import java.util.ArrayList; import java.util.List;public class FileSearchEngine {public static void main(String[] args) {String searchDirectory "C:/"; // …

element plus 日期范围 自定义内容

问题: 按照官网上的自定义内容示例,修改日期选择器没有问题,如果修改日期范围选择器,修改后会丢失日期范围选择时的样式。 解决: 从F12中不难看出日期范围的选择样式来自于.el-date-table-cell 而示例中写的是.cell&…

23--数据结构简述

常见的数据结构 数据存储的常用结构有:栈、队列、数组、链表和红黑树。 1、栈 特点:先进后出 2、队列 特点:先进先出 3、数组 数组特点:查询快 , 增删慢 整形数组: 对象数组: 4、链表 链…

案例分享|企业为什么要选择数字化转型?

数字化在现代社会中扮演着重要的角色,成为企业转型的必由之路。随着科技的发展和信息化的进程,越来越多的企业开始拥抱数字化转型,以应对市场的变化和竞争的压力。数字化带来了诸多好处,不仅提高了企业的效率和生产力,…

阿里云登录镜像仓库报错: Error response from daemon: Get https://

阿里云登录镜像仓库报错: Error response from daemon: Get https:// 1. 故障现象 开发反应自用笔记本连接镜像仓库是正常的,但通过服务器连接镜像仓库一直失败. 报错信息如下: Error response from daemon: Get https://registry.cn-hangzhou.aliyuncs.com/v2/: unauthoriz…

力扣刷题记录(16)LeetCode:62、63、343、96

目录 62. 不同路径 63. 不同路径 II 343. 整数拆分 96. 不同的二叉搜索树 总结 这题比较简单,直接声明一个二维数组来保存到达该点有几种路径。到达当前点的方法由当前点的左边格子和右边格子决定。 class Solution { public:int uniquePaths(int m, int n)…