【工作感悟】——xyb项目部署

【前言】

           接手xyb项目维护有一段时间了,除了熟悉业务需求和开发环境外,还没有进行新需求的开发。前几天突然接到一个任务,要去发改委给他们部署一版最新的系统。本来事情也不大,也没有很难。但是本来是大屈、我和红,我们一点也没担心,结果大屈走不开,就剩下我和红了。我俩一点外出部署的经验都没有,对这个项目又不熟悉,顿时觉得事情越来越难办了。没办法,扛得起来要扛,扛不起来也要扛!


【部署】

          【1、明确需求】

           首先,所接到的“任务”是由第三个人传过来的,我们不能简单的认为他说的就是客户想要的。因此,我们再次联系客户,确定客户需求,并商定出具体部署时间,让客户提前安排时间。由于对原项目并不了解,也没有找到之前的部署记录,所以我们还要联系之前的维护人员,询问部署相关问题和注意事项等。可见,文档是多么的重要啊!即使当时只是简单的记录,现在来看,也是十分珍贵啊!



          【2、列出待办】

         之前没有部署经验,我们两个小女子真的在这方面是个小小白,不能准确判断一先做什么、二再做什么、三最后做什么。因此,我们也有我们的办法,那就是把所有能想到的待办全部列出来,这样至少不会有遗漏的情况发生。一个项目从本地到客户那里成功访问需要做的全部列出来,然后再去看哪些是我们需要做的,哪些不需要我们做。比如:发布成功后,如何挂到外网上,这件待办不是我们的任务,然后把这项划掉,暂时可不安排了解这方面的内容,如果感兴趣业余时间可以了解。



         【3、分配任务】

        人员少了,任务分配也好做多了,不是你做就是我做。查看列出的待办事项,划掉不是我们职责范围内的事情之后,所要做的事情就少多了。接下来,就是给每个待办划分优先级了。原则只有一个,第一按时完成任务,第二学习。由于客户时间临时有变,我们的准备时间延长了一天。这样基本上就不需要分配任务了,打包、热部署的东西我俩都没接触过,就想每个人都做一下。多尝试几种打包方式,在别的机器上测试一下,比较这几种方式打包有什么差异。



         【4、完成任务】

      也许前期的准备工作让我们紧张不少,收获不少,但都比不上实实在在的外出部署的体会。


               【心态】

       与在机房操作相比,尽管你所要做的事情基本都是一样的,所接触到软件也都差不多,但环境不同,干扰因素太多,真的是太考验人心态了。这些干扰因素包括:1)高温,服务器屋在五楼,全部都是服务器,不知道是已经供暖了还是怎么,屋里温度特别高,脱了外套都热的还冒汗。2)噪音干扰。各种服务器的响声,一直没有小过,特别烦。3)人。客户那边的维护人员不能离开,因为她要保证服务器的安全和数据安全。这位阿姨脾气还是很好的,也不怎么催。最大不好的地方就是话比较多,不能自己一个人待着,后来我们就采取红去做技术,我去搞外交。有人跟阿姨聊天,阿姨就不着急了,气氛就好点了。


               【自信】

       为什么说自信?前面也提到了,你永远要相信你所掌握的能力,即使一直报404错误。任何情况不要慌,不要胡思乱想,不要考虑别人会怎样怎样看你。你所要做的就是深呼吸,用三秒时间让自己冷静下来,去思考。永远不要相信自己的记忆力,出了问题就要一项一项排查,不要以为应该没问题。当然,自信也建立在你做了充足的准备和你平时不断的积累学习的基础上。



【小结】

        最后的最后,我们也算圆满完成了任务。阿姨还夸我们速度挺快的,不管是真是假吧,我们就当时真的了。走出发改委大门的那一刻,我和红都感觉可是活着出来了。不过发自内心的说一句,当技术人员的待遇还是蛮好的,O(∩_∩)O哈哈~


转载于:https://www.cnblogs.com/saixing/p/6730254.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当然,我可以为您提供一个复杂的 Java 编写的组合模式的例子。组合模式是一种结构型设计模式,它允许您将对象组合成树形结构,并以相同的方式处理单个对象和组合对象。以下是一个例子: ```java public abstract class Component { protected String name; public Component(String name) { this.name = name; } public abstract void add(Component component); public abstract void remove(Component component); public abstract void display(int depth); } public class Leaf extends Component { public Leaf(String name) { super(name); } @Override public void add(Component component) { System.out.println("Cannot add to a leaf"); } @Override public void remove(Component component) { System.out.println("Cannot remove from a leaf"); } @Override public void display(int depth) { System.out.println("-".repeat(depth) + name); } } public class Composite extends Component { private List<Component> children = new ArrayList<>(); public Composite(String name) { super(name); } @Override public void add(Component component) { children.add(component); } @Override public void remove(Component component) { children.remove(component); } @Override public void display(int depth) { System.out.println("-".repeat(depth) + name); for (Component component : children) { component.display(depth + 2); } } } public class Client { public static void main(String[] args) { Composite root = new Composite("root"); root.add(new Leaf("Leaf A")); root.add(new Leaf("Leaf B")); Composite composite = new Composite("Composite X"); composite.add(new Leaf("Leaf XA")); composite.add(new Leaf("Leaf XB")); root.add(composite); Composite composite2 = new Composite("Composite XY"); composite2.add(new Leaf("Leaf XYA")); composite2.add(new Leaf("Leaf XYB")); composite.add(composite2); root.add(new Leaf("Leaf C")); root.display(1); } } ``` 在这个例子中,我们有一个抽象的 `Component` 类,它定义了组合模式的基本行为。我们还有一个 `Leaf` 类,它表示组合中的叶子节点。最后,我们有一个 `Composite` 类,它表示组合中的复合节点。我们还有一个 `Client` 类,它使用这些类来创建一个组合树,并显示它。 希望这个例子能够帮助您理解组合模式的工作原理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值