案例背景:

今天一大早用户打电话来讲昨天上传的银行的forex payment return file好像没有被处理到,我一听就觉得纳闷,因为昨天晚上operator也没有给我打电话啊(如果有job failure的话,operator会电话通知 officer in charge)。想到事态可能比较严重,所以我立马放下手里的工作,开始紧急处理这个问题。

首先,我去查昨天晚上的job process, 确定相应的 job 没有被trigger, 所以肯定用户所提到的文件确实没有被处理到。

其次,去查文件是否有被传送到unix server 和windows NT server,很快确定文件存在NT server但是没有到达unix server。说明:用户以及外面其他的系统会把文件(voucher,journal等)SFTP 到NT server, 然后在晚上的时候所有的文件会再被FTP到unix server 做处理。到目前为止,初步怀疑是FTP的job 出了问题,在查看FTP job log 后确定问题发生在这里。

到目前为止,我们知道发生了什么问题,那就是昨天晚上所有的文件都没有被处理到,而且有的文件可能已经被新的文件覆盖掉了,所造成的影响是部分付款延迟一天,以及journal晚process一天,asset晚create一天,等等,当然,还有一点是我们的user会收到很多投诉。

跟PM阐明事态严重后,赶紧召开紧急会议,商讨如何应对。我的主张是:

1.告知用户现在有这个问题,以及我们即将采取的措施。

2.所有的文件应该赶紧transfer到unix server, 在确保文件传送无误的情况下把所有的文件 (voucher, journal,bank return file 等等)先process 处理到一定的阶段, 这个过程可能需要4-5个小时。

3.获取SFTP log, 找出那些已经被覆盖(overwriten)的文件,通知用户重新传送过来。

4. 我们必须采取紧急措施,在下一个batch开始之前(晚上8:30)完成所有的recovery action。

有个风格非常细心的同事提出了很多假设性的问题(what if ....),而且提议先拿到文件,分析后再做决定。最后都被我们否决,因为在这样紧急的关头,确实没有那么多的时间给你去讨论,让你去分析,因为时间拖的越久,所造成的影响越大,而且,可能会影响到晚上的night batch,并且,那些假设性的问题发生的概率几乎是微乎极微。最后的事实证明,我们的策略是对的,所有的文件在预定的时间内完成,后面需要面对的,就是用户的刨根问底了。

感悟:

在处理情况的时候,究竟是应该很周密的想到每一种情况还是应该当机立断快刀斩乱麻这完全取决于在什么样的情况下,如果是要设计/更改一个功能,这时候你有足够的时间,那当然是需要很仔细的想到每一个情况,即便发生的概率微乎其微也应当考虑进来,但是如果问题是需要马上就解决的,恐怕就由不得你在哪里深思熟虑了,因为,时间不等人,事故不等人啊。当然,当机立断的前提是你要对整个事件(系统内/系统外)有足够的理解,对自己对解决方案有足够的信心。

PeopleSoft FSCM Production Support 案例分析之一重大紧急事故发生时的应对策略的更多相关文章

  1. PeopleSoft FSCM Production Support 案例分析

    PeopleSoft FSCM Production Support 案例分析 2010年的时候曾建言博客园开辟Oracle ERP模块供大家交流,博客园如约开辟Oracle ERP 模块,而我后来却 ...

  2. ORA-04031错误导致宕机案例分析

    今天遇到一起ORACLE数据库宕机案例,下面是对这起数据库宕机案例的原因进行分析.解读.分析过程中顺便记录一下这个案例的前因后果,攒点经验值,培养一下分析.解决问题的能力. 案例环境:   操作系统 ...

  3. 18.jvm调优工具及案例分析

    目标: Jmap.Jstack.Jinfo详解 JvisualVm调优工具实战 JVM内存或CPU飙高如何定位 JState命令预估JVM运行情况 系统频繁Full GC导致系统卡顿实战调优 内存泄漏 ...

  4. ENode框架Conference案例分析系列之 - 文章索引

    ENode框架Conference案例分析系列之 - 业务简介 ENode框架Conference案例分析系列之 - 上下文划分和领域建模 ENode框架Conference案例分析系列之 - 架构设 ...

  5. ENode框架Conference案例分析系列之 - 事件溯源如何处理重构问题

    前言 本文可能对大多数不太了解ENode的朋友来说,理解起来比较费劲,这篇文章主要讲思路,而不是一上来就讲结果.我写文章,总是希望能把自己的思考过程尽量能表达出来,能让大家知道每一个设计背后的思考的东 ...

  6. SQL性能优化案例分析

    这段时间做一个SQL性能优化的案例分析, 整理了一下过往的案例,发现一个比较有意思的,拿出来给大家分享. 这个项目是我在项目开展2期的时候才加入的, 之前一期是个金融内部信息门户, 里面有个功能是收集 ...

  7. CSS3-3D制作案例分析实战

    一.前言 上一节,介绍了基础的CSS3 3D动画原理实现,也举了一个小小的例子来演示,但是有朋友跟我私信说想看看一些关于CSS3 3D的实例,所以在这里为了满足一下大家的需求,同时也为了以后能够更好的 ...

  8. 实时控制软件设计第一周作业-汽车ABS软件系统案例分析

    汽车ABS软件系统案例分析 ABS 通过控制作用于车轮制动分泵上的制动管路压力,使汽车在紧急刹车时车轮不会抱死,这样就能使汽车在紧急制动时仍能保持较好的方向稳定性. ABS系统一般是在普通制动系统基础 ...

  9. 个人作业-Week2 案例分析

    微软必应词典客户端的案例分析 第一部分 调研,评测 1)bug: 运行平台:iOS 10.0.2 必应词典版本:4.2.2 1. bug标题:词库加载错误 bug详细描述:学习界面中的经典词库出国考试 ...

随机推荐

  1. webpack 基本功能和原理

    依赖管理:方便引用第三方模块.让模块更容易复用.避免全局注入导致的冲突.避免重复加载或加载不需要的模块. 合并代码:把各个分散的模块集中打包成大文件,减少HTTP的请求链接数,配合UglifyJS可以 ...

  2. Hue离线安装

    参考 https://blog.csdn.net/xuxudede1989/article/details/50359023 http://cloudera.github.io/hue/latest/ ...

  3. swift日期操作

    简介:本文将介绍一些关于swift中对于日期的格式化与获取,支持swift4.0 extension Date { //格式化日期 func getDateString() -> String{ ...

  4. 执行多个Sql脚本,Sqlplus

    1.先制作需要执行的Sql文件list CMD 中输入[dir E:\FolderName >E:\ExcuteSqlList.txt ] 2.根据ExcuteSqlList.txt 中的文件名 ...

  5. vue-cli目录结构介绍002

    总体框架 一个vue-cli的项目结构如下,其中src文件夹是需要掌握的,所以本文也重点讲解其中的文件,至于其他相关文件,了解一下即可. 文件结构细分 1.build——[webpack配置] bui ...

  6. 一种Unity2D多分辨率屏幕适配方案

    http://www.cnblogs.com/flyFreeZn/p/4073655.html 此文将阐述一种简单有效的Unity2D多分辨率屏幕适配方案,该方案适用于基于原生开发的Unity2D游戏 ...

  7. Python Matplotlib 中对于 bar 显示时间的问题

    参考: 官方教程: http://matplotlib.org/1.3.1/users/recipes.html http://stackoverflow.com/questions/13515471 ...

  8. 使用命令动态更新JAR包中的文件

    动态更新JAR包中的文件,经本人实际测试可正常执行! 一.查询jar包中要替换的文件位置 jar  -tvf  gateway.jar  |  grep  topjui.config.js 二.在当前 ...

  9. MyBatist庖丁解牛(二)

    站在巨人的肩膀上 https://blog.csdn.net/xiaokang123456kao/article/details/76228684 一.概述 我们知道,Mybatis实现增删改查需要进 ...

  10. elasticsearch 备份和恢复

    curl   : http://keenwon.com/1393.html During snapshot initialization, information about all previous ...