×

Loading...

Topic

  • 工作学习 / 事业工作 / 也说几句技术分享 +4
    本文发表在 rolia.net 枫下论坛先举个例子。

    前段时间 dev team 碰到一个问题,load test 时,api 只能处理 10 个左右的并发请求,稍微一多就 bad gateway,Service Unavailable 什么的。

    长话短说,从几个 microservice 定位到某一个,一步步做 isolation,(排除其他可能性后),最终发现问题出在一个 SQL server connection string 优化参数在 windows 下很有力但在 linux 环境下造成了问题。前后花了差不多两三天时间。

    告诉dev team 解决方案(至少是 workaround)。改参数,并且加上 inline comment w/ link,告诉以后的 dev 为什么。
    上面这一步绝对是本职工作,没什么好讨论的。

    因为最后定位故障的关键一步是发现在本机 win10 运行不出现,在本机 docker + linux container 上出现,所以顺便写了篇文档分享(基于我们的设置)如何做,就能轻松快速地在本机 win10 运行调试,本机 win10 内置 linux 下运行,本机 docker linux container 中运行。
    这一步应该算额外的分享了。

    能分享的都分享了。

    但其实做过技术的人都知道,那两三天的时间,大部分都花在失败的尝试上 --- 就是再有经验,这个时间通常也有 50%-80% -- 所有的失败被上面一句“排除其他可能性后”带过。但其实,这个反而是你自己的经验积累。你再分享,别人学到了你分享的结果,但你的“失败经验”反而是让你超过他人的地方。

    这就是我为什么不介意分享的原因。

    另外,很多技术 youtuber 都总结说,一边学边分享(包括做视频)是学习的好方法之一。更多精彩文章及讨论,请光临枫下论坛 rolia.net
    • 是的,太有体会了。稍复杂的,解决问题的过程更重要。
    • 态度决定一切,有些时候耐心,细致,认真观察和主动思考,不是人人可以做到的。
      • 不是人人可以做到的 。。。。没错
    • 别人能拿走你的 products 但是却拿不走你 unique process。但是你是 service basis,如果你是老干妈,当然方子的埋后院罐儿里。
      • 这个我还真不懂 --- 我总以为辣椒油和辣椒油味道应该差不多,谁流程管理控制得好才能做大? +1
        • Service is by workmanship. Product is by repeating +1
    • 你花两三天解决这个问题,下次你的团队遇到同样问题可能只要两个小时就“程式化”地解决了。但是这两三天中解决问题的方法论,意志力,以及在这个过程中涉及到的,看到的,触类旁通的东西,是无法分享,也无法培训的 +1
      • 无法分享,也无法培训的。。。。。。没错
    • 说了半天,就是只给鱼不给渔的意思。
      • 点赞。因为渔是连他自己都无法预知的。 +1
        • 我要么不教.要不只教渔.话说一些老板,请人给打工的钱,却想别人当教授,算盘打得太好,最终会被报应.天下没有免费的午歺 +1
          • 打工和教授的差距谁最知道呢?在打工者,老板,教授里,我猜是教授。那教授有责任 educate 其他人工作里的真正区别。
            • 我请你建个房子,你有义务教我怎么开公司吗? +1
              • For right now I only do residential construction for myself so I would not know the answer.
        • 我今年只讲了30分钟的课,准备了一个月,听课的是某行业的标准实施者.内容嘛.任你怎么google都不会有.背后是几十本书和资料的压缩 +1
          • 背后是几十本书和资料的压缩。。。。。。。没错
        • 呵呵,就是层次不一样呗,有的人悟性高,即使你仅仅给了一条🐟人家就已经在脑子里揣摩背后的渔了。而有的人别说去揣摩,你主动把渔和🐟一起献上,人家只要🐟,也只懂吃🐟....
      • 我倒是想给渔啊 ---- 叫着一块儿钓鱼没人去,回来给了鱼都没人要 --- 只要 fish fillet 🍣
        • 叫着一块儿钓鱼没人去。。。。。。。。。。没错
          • 叫了也没用。还是你自己一个在那渔,他还是在等鱼。他最多知道要抓鱼需要鱼竿,还需要45度角甩出去。若果你真要他会,得手把手教: 每遇到情况,先问他打算怎么做,他说不知道,你得解释给他为啥这样干。他要说大概知道,你得让他先试。 你做得到这样教渔么?
        • 今天新闻是说有个游戏投资很多。但是每 30 分钟 crash 一回,现在下架了。
          • 2077?
            • Yeah
              • ps 下架 -- 但 2077 主要买家是 pc 买家
        • 在挨踢行业里有不少人并非因为热爱或悟性高而入行的,就纯粹一饭碗,怎么愿意费那么大劲去学习钻研?况且领域内的一些东东,若悟性不够的话光有热情兴趣也无法真正精通..... +2
    • 你求解的策略/方向以及对问题的分析判断,其实是基于你长期的经验积累或专业悟性,而这是在有限范围内其他人至少暂时不如你的关键,也是别人无法轻易学到的东东,类似一种厚积薄发的直觉,不同问题会产生不同的直觉,别人知道解法却无法具备直觉的母机...
      • 这就是俺说过的乐于分享者与学习者往往处于不同层次,若你跟别人差不多水平,或许你这次运气只是比他人好而已。 但水平不在同一层面,别人要全部学到谈何容易?
    • 做好该做的本职工作就好,教人方法不属于本职工作内容,看对象,且要适可而止。对有些人、在有些情况下,费力不讨好。
      • 费力不讨好 。。。。。。。。没错
    • 确实不错, +1
      本文发表在 rolia.net 枫下论坛我在工作的时候,很多时候也不分享,绝对不是因为我自私。比如迁移主机,VCS,MC SERVICE GUARD无法启动,ORACLE RAC无法启动,HBA找不到LUN DISK,,,很多时候我处理的时候,发现是BRAKE TIER,或者是RAC ASM 找不到ALIAS,或者是一个VG有100多个LUN,超时,,,我逆向一步一步推导出来了原因,写一个解决方法,问题是我很想分享整个思维,其他同事也懒得搭理我,有时候他们也想知道具体的ROOT CAUSE,但是我分析的时候,我涉及到ORACLE,HDS 存储的一些MAPPING,IBM SVC如何设计规划SAN的背景知识,,他们又感觉我讲解的太多,他们不想补课。。。如果不知道背景知识,那么就不理解ROOT CAUSE,。。你的这个举例我也遇到过类似的问题,就是WAS的配置,经常抱怨连接不到ORACLE 数据源,有时候是HIBERNATE的问题,有时候是代码六个步骤JDBC连接数据库问题,加,连,语,创,执,释,,还有的更牛逼的,软件RELEASE升级,竟然没有通知更新,还有非常恼火的,CRS相关的SSL加密问题,还有其他部分捣乱的,比如ORACLE DBA 偷偷的改动了字段,网络部门把DNS,防火墙改动了,后来用NSLOOKUP,TRACEROUTE发现了问题,,,我在达拉斯CITIBANK见过极品,CTRL_SHIFT_7,有一个罗马尼亚的字符,外表和空格是一模一样,看不出来任何区别,导致BUG, ' ` 这两个字符也是很类似,,以上不是复杂的,逆向可以尝试出来,,涉及到性能调整更复杂,因为性能调整不是BUG,系统可以使用,但是系统忽快忽慢,,,有的时候,我忽略了文件系统和软件,直接DD裸盘测试原始的HDS SAN存储连接速度都用上了,最后还是不知道原因,因为性能优化涉及到三个级别,前端后端全部都要考虑,,如果是JS前端就已经很慢了,后台怎么努力也是没用的。。更多精彩文章及讨论,请光临枫下论坛 rolia.net
    • analytical skills 不是那么容易得到的。
    • +1。过程是关键,但是过程很多时候是个态度的问题,钻研精神的问题,教也教不会。
    • 反正吧,谁要问我啥我都告诉他,至于他能不能知道了A就推出来B,不关我事,我不是保姆。
    • 多谢分享。 +1