项目实战典型案例11——生产环境重大事故

简介: 项目实战典型案例11——生产环境重大事故

生产环境重大事故

一:背景介绍

对于arpro这个项目。生产环境上布置了两套环境,一套A环境,一套B环境。

这样做的意义是如果线上A环境出现意料之外的问题(A环境大面积崩溃不可用,A环境服务器出现问题等等)我们能够立即切换B环境供用户进行使用。
A环境与B环境是完成一致的。


这一次arpro生产环境出现好几个重大的问题。


1.生产A环境没有及时进行构建,导致生产A环境与生产B环境版本不一致

2.禅道上2022年5月1日的发版日志没有关联需求,导致发版流程上出现疏漏,会影响此后的发版流程。

3.B环境构建异常,没有及时进行处理,导致将影响项目的及时发版。

4.目前线上运行的是B环境,实际应该运行A环境;没有及时做升级的切换。

5.系统跑一段时间,内容占用会随时间的增加而剧增;大约在一周左右时间内存会达到系统不可用(这里的一周时间说的是现在的业务量,可能随着业务量的增加时间会缩短)




二:思路&方案

上面问题1—4都是偏向于生产发版的问题 ,问题5偏向于技术问题。

对于上面的五个问题,我们都需要清楚生产环境不是儿戏需要有足够的责任心。需要对生产环境有一份敬畏之心。

对于问题1-4的思路&方案

在明确生产环境有两套环境的价值和意义;生产环境的重要性的基础上。

流程制度上

  1. 有严格的上线流程,完成一项勾选一项
  2. 有严格的上线审批流程,审批通过之后才能进行后续的上线操作
  3. 有严格的闭环流程(如环境检测,上线后的测试)
  4. 只有具有一定职级的人可以操作生产环境的构建

上线流程示例:




对于问题5的思路&方案

一般的原因是代码中存在不合理的情况,导致创建出了大对象,对象一直存在着引用导致GC无法进行回收,随着时间这些无法被回收的对象越来越多导致内存逐渐上升。


对于这类问题需要具体分析可以通过打印jvm快照的方式生成
dump文件,可以使用jdk1.8自带的内存分析工具Jvisual进行内存分析。寻找照成内存上升的原因。

四:总结

  1. 对生产环境有一份敬畏之心
  2. 通过一定的形式来保证内容
  3. 通过划分角色来进行权限隔离
目录
相关文章
|
8月前
|
人工智能 Cloud Native Java
Java 技术栈企业级应用开发全流程
本指南通过构建企业级电商系统,全面解析现代化Java技术栈实战应用。涵盖Spring Boot 3、微服务架构、云原生部署、服务治理、监控可观测性及AI集成,助开发者掌握全流程开发技能,打造高效可扩展的企业级应用。
487 0
Java 技术栈企业级应用开发全流程
解决办法:fatal error: SDL.h: 没有那个文件或目录
解决办法:fatal error: SDL.h: 没有那个文件或目录
682 0
|
3月前
|
存储 人工智能 自然语言处理
LlamaIndex 深度实战:用《长安的荔枝》学会构建智能问答系统
本文深入浅出地讲解了RAG(检索增强生成)原理与LlamaIndex实战,通过《长安的荔枝》案例,从AI如何“读书”讲起,详解三大关键参数(chunk_size、top_k、overlap)对问答效果的影响,并结合真实实验展示不同配置下的回答质量差异。内容兼顾新手引导与进阶优化,帮助读者快速构建高效的文档问答系统。
627 22
LlamaIndex 深度实战:用《长安的荔枝》学会构建智能问答系统
|
JSON JavaScript 数据格式
Elementui Tree 树形控件删除子节点
Elementui Tree 树形控件删除子节点
452 1
|
8月前
|
C++ Windows
WindowsDLL修复专家,MSVCP**、DLL修复vcruntime**、DLL修复、`.Net Framework`缺失、DirectX类DLL修复、VC运行库修复
Windows DLL修复专家是一款专为解决因DLL文件缺失、版本错误导致的软件或游戏无法运行问题的系统工具。它支持一键扫描和修复各类DLL异常,涵盖MSVCP、vcruntime、.NET Framework、DirectX等多种常见问题。具备自动检测、备份还原功能,确保修复过程安全可靠。适用于软件报错、系统异常及新系统适配场景,降低用户手动修复门槛,提升系统稳定性与兼容性。
315 3
麒麟系统mate-indicators进程占用内存过高问题解决
【10月更文挑战第7天】麒麟系统mate-indicators进程占用内存过高问题解决
1602 2
|
10月前
|
网络协议 Java 网络安全
全平台开源即时通讯IM聊天框架MobileIMSDK的服务端开发指南,支持鸿蒙NEXT
全平台开源即时通讯IM聊天框架MobileIMSDK的服务端开发指南,支持鸿蒙NEXT
673 4
|
存储 监控 调度
云服务器成本优化深度解析与实战案例
本文深入探讨了云服务器成本优化的策略与实践,涵盖基本原则、具体策略及案例分析。基本原则包括以实际需求为导向、动态调整资源、成本控制为核心。具体策略涉及选择合适计费模式、优化资源配置、存储与网络配置、实施资源监控与审计、应用性能优化、利用优惠政策及考虑多云策略。文章还通过电商、制造企业和初创团队的实际案例,展示了云服务器成本优化的有效性,最后展望了未来的发展趋势,包括智能化优化、多云管理和绿色节能。
|
机器学习/深度学习 PyTorch 算法框架/工具
VQ-VAE:矢量量化变分自编码器,离散化特征学习模型
VQ-VAE 是变分自编码器(VAE)的一种改进。这些模型可以用来学习有效的表示。本文将深入研究 VQ-VAE 之前,不过,在这之前我们先讨论一些概率基础和 VAE 架构。
1414 10