首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

我是怎么定位问题的?

定位问题 前阵子群里有个同学@我,让我分享下平时是怎么定位问题的,以及排查问题的思路。 甚至我还看到有的面试题也会问这种问题(是不是在校验真的做过线上项目?)...最近组内来了个新人实习生,正好我前几天也给他讲了我的排查问题步骤,今天来分享下我的经验。 这篇文章主要给还未参加工作的小白看的哈。...生产环境禁止输出 debug 日志;有选择地输出 info 日志;如果使用 warn 来记录刚上线时的业务行为信息,一定要注意日志输出量的问题,避免把服务器磁盘撑爆,并记得及时删除这些观察日志。...但这不重要,反正有地方看请求链路信息就好了。 如果是自己写的代码,那自己也大概能猜出是什么原因造成的了。 如果不是自己写的代码,找到监控的入口,往上游追踪并看入参,一般也能定位到问题。...一般公司都有几套环境(线下->预发->线上),一般情况下我们是使用线下环境debug,但往往线下环境可能数据没那么全,所以有的时候也会到预发环境debug。

68130

免费拿走我的代码可以,但请对使用我的时间付费

编者按:秉持“开放、共享、解惑”的开源项目意味着任何人都能随便使用项目或产品中的代码,但开源并不意味着“拿来主义”,更不应发生“ 00 后 CEO 抄袭了程序员的开源项目”这类的事件。...——Jeremy Miller,FubuMVC 的前项目负责人 “当我决定开始要小孩的时候,我可能会放弃开源,一旦有了小孩我的时间将远远不够用,我估计只有放弃开源工作才能真正解决我的问题。...但需要再次强调的是,开源代码是实用软件,它不需要太大的野心以及冒险的游戏规则。它凭借不断的更新并逐渐渗透到所有行业。...这些想法代表着可持续发展的道路,也可以解决开源的多样化问题,这些问题可能源自于之前的无偿性质。但最重要的是让我们明白生命所剩的时光,而且我们有一天会为我们浪费的时间感到遗憾。...当我谈到 “开源 ”时,我的意思是只要代码被许可,就可以用来构建专有的东西。这通常意味着许可证( MIT 、Apache 或者 BSD),但并不总是。

1.1K80
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    我是如何调试 Webpack 问题的

    事情是这样的,前两天有个小伙伴问我:「为啥我的 webpack 运行完看不到我写的页面,而是:」 ? 嗯?文件列表页?好吧,这种情况我似乎没遇到过,一下子没法给出答案,只能要来关键代码: ?...emmm,成功勾起我的好奇心了,虽然写过一些 Webpack 源码分析的文章,但 webpack-dev-server 确实不在我的知识范围,好在我有秘籍《如何阅读源码 —— 以 Vetur 为例》,是时候展示真正的技术了...第三步:分析问题 按照现有的情报,加上我对 HTTP 协议的理解,可以基本推断问题必然是出在 webpack-dev-server 框架处理首页请求的逻辑上,大概率是 output.publicPath...局部分析 切入点:验证 serve-index 包的作用 经过上面的分析,虽然我还不知道问题具体出在哪里,但大致可以判定跟 serve-index 包强相关,先搜一下 webpack-dev-server...不过,作为一个有追求的程序员怎么会止步于此呢,我们继续往下挖呀:到底是那一段代码决定了流程会不会进入 serveIndex 中间件?

    2.9K30

    我是如何调试 Webpack 问题的

    全文 3000 字,欢迎点赞转发 事情是这样的,前两天有个小伙伴问我:「为啥我的 webpack 运行完看不到我写的页面,而是:」 嗯?文件列表页?...emmm,成功勾起我的好奇心了,虽然写过一些 Webpack 源码分析的文章,但 webpack-dev-server 确实不在我的知识范围,好在我有秘籍《如何阅读源码 —— 以 Vetur 为例》,是时候展示真正的技术了...第三步:分析问题 按照现有的情报,加上我对 HTTP 协议的理解,可以基本推断问题必然是出在 webpack-dev-server 框架处理首页请求的逻辑上,大概率是 output.publicPath...局部分析 切入点:验证 serve-index 包的作用 经过上面的分析,虽然我还不知道问题具体出在哪里,但大致可以判定跟 serve-index 包强相关,先搜一下 webpack-dev-server...不过,作为一个有追求的程序员怎么会止步于此呢,我们继续往下挖呀:到底是那一段代码决定了流程会不会进入 serveIndex 中间件?

    1.1K30

    Infor: 低调是我的代名词,但低端可不是

    有了这样的想法后,Phillips开始着手去建立了Infor的内部创意组织Hook&Loop,与其他部门相比,这个组织似乎显得特别格格不入,因为该组织的成员包括了作家、设计师、开发商甚至是电影制片人,他们看起来与企业软件的开发与运营都没有太大的关系...不过Phillips有自己的想法,美观只是一部分,他更大的愿望是想要去了解用户内心中的真正所需,显然比起那些软件开发者,设计师们更能把握住用户的内心意图,并借此设计出那些更让用户满意的产。...,也帮助他们得以及时发现问题并作出警告信息。...当然Phillips做出的贡献不仅仅在于产品变化方面,他在公司管理方面也做出了很多的贡献,如他总是会及时回复员工的邮件并让员工有问题就跟他进行实时的沟通等。...借助于微垂直和云服务,Infor开始了新一阶段的发展布局,并逐渐取得了一些了成就,但这并不能满足Phillips和Infor的胃口,其实,尽管SaaS营收为公司带来全新的增长动力,但其实根据财报所示,Infor

    98920

    我是怎么定位线上问题的?

    面试官:「你是怎么定位线上问题的?」 这个面试题我在两年社招的时候遇到过,前几天面试也遇到了。我觉得我每一次都答得中规中矩,今天来梳理复盘下,下次又被问到的时候希望可以答得更好。...下一次我应该会按照这个思路去答: 1、如果线上出现了问题,我们更多的是希望由监控告警发现我们出了线上问题,而不是等到业务侧反馈。所以,我们需要对核心接口做好监控告警的功能。...4、因为线上大多数的问题都来源于系统的变更,可能我们只是变更了很少的代码,但只要有一丝的逻辑没留意到,就真的很可能会导致出现问题,回滚很可能是最快能恢复线上正常运行的办法。...6、如果不是系统告的警,是业务侧反馈出了问题,那这时候需要业务侧明确是哪个具体的功能/接口出了问题,有没有保留请求入参,有没有返回错误的信息,有何现象 7、知道了问题的现象之后,就需要根据经验排查可能是哪块出了问题了...11、要是不能复现,只能在怀疑的地方打上详细的日志再好好观察(问题定位不出来,很多时候就是日志不够详细,而日志在正常情况下也不应该打太多) 这个我估摸想要考察的是看看你平时是怎么去定位问题的,定位问题的思路是什么

    65220

    跳槽的必要条件是有一份好的简历

    http://cvbox.sinaapp.com 有道云笔记,支持 Markdown 语法,并且可以存储,同时支持导出 PDF 技巧 目前写简历的方式有两种普遍被认可,一种是 STAR, 一种是 FAB...如果特别没有亮点可以写一些自己遇到的问题,解决的问题,或者讲述一下自己理解的别人做的最好的设计方案。 打个样,下面是一篇 JAVA 开发工程师的简历样例。...(培养新人和带团队) 其他项目 xxxx项目:该项目是XXXX,使用XXX技术,完成XXX功能。...个人整理求职方面资料和心得 XX技术文档翻译,业余时间翻译 XX源码补丁,项目中使用到,遇到问题便修复。...对新事物有很强的好奇心,喜欢做有挑战的事情。 为人踏实,善于沟通,具有很强的团队意识和协作能力。

    62340

    跳槽的必要条件是有一份好的简历

    http://cvbox.sinaapp.com 有道云笔记,支持 Markdown 语法,并且可以存储,同时支持导出 PDF 技巧 目前写简历的方式有两种普遍被认可,一种是 STAR, 一种是 FAB...如果特别没有亮点可以写一些自己遇到的问题,解决的问题,或者讲述一下自己理解的别人做的最好的设计方案。 打个样,下面是一篇 JAVA 开发工程师的简历样例。...(培养新人和带团队) 其他项目 xxxx项目:该项目是XXXX,使用XXX技术,完成XXX功能。...个人整理求职方面资料和心得 XX技术文档翻译,业余时间翻译 XX源码补丁,项目中使用到,遇到问题便修复。...对新事物有很强的好奇心,喜欢做有挑战的事情。 为人踏实,善于沟通,具有很强的团队意识和协作能力。 致谢 感谢您花时间阅读我的简历,期待能有机会和您共事。

    50020

    为什么我的sql没问题但还是这么慢|MySQL加锁规则

    前言 前阵子参与了字节跳动后端青训营,其中大项目编写涉及到数据持久化一般选择使用MySQL。由于时间原因,数据库使用我选择了无脑三板斧:1. 建立了索引加速查询、2. 关闭自动提交事务、3....但区别于全局锁和表级锁,MySQL行锁是由各个存储引擎自己实现的,并不是所有的存储引擎都支持行锁(MyISAM不支持),由于现在MySQL用户大多选择使用InnoDB存储引擎,所以本文将以InnoDB引擎为默认选择...此时你是否又对我最初给出的小组开发时访问数据库慢的场景有了自己的思考,其实在高QPS情况下,发生死锁检测的概率是大大高于小组开发场景的 因此控制热点记录的并发访问数量,是提升数据库IO性能的重要前提。...间隙锁 间隙锁的出现解决了幻读问题,那么先简述一下幻读的概念,以及幻读有什么问题。...,next-key lock退化为间隙锁 • 唯一索引上的范围查询会访问到不满足条件的第一个值为止 小结 本文概述了MySQL锁机制的工作情况,明确了锁有读/写之分。

    83630

    我是怎么使用最短路径算法解决动态联动问题的

    当然要求最短路径就得要求图是无闭环的,如何判断图存在闭环可以参考我的另一篇文章拓扑排序及其实际应用。   ...最短路径算法经典的有Dijkstra and Floyd算法,Dijkstra算法适合求单个节点到其它节点的最短路径问题,Floyd算法适合求每个节点到其它节点最短路径问题。   ...回到顶部 总结   经过上一篇和这一篇的分析,你会发现联动问题是图论里面的相关知识,涉及到拓扑排序和最短路径算法。...实际代码中还会涉及到递归,在这次开发中我感受最深的一点遇到复杂问题,一定要分析和规划清楚找到问题的本质,偏离了问题本质就可能用很复杂的代码实现了。       ...动态联动问题的经过总结我给出的步骤      1.计算每个节点到主节点的最远距离,(这个其实是图的最短路径的变种)。

    1.6K90

    我是如何理解并使用maven的

    前言 一直想写一篇关于Maven的文章,但是不知如何下笔,如果说能使用,会使用Maven的话,一到两个小时足矣,不需要搞懂各种概念。那么给大家来分享下我是如何理解并使用maven的。...什么是Maven? Maven是一个用于项目构建的工具,通过它便捷的管理项目的生命周期。即项目的jar包依赖,开发,测试,发布打包,主要管理工作是:依赖管理,项目一键构建。 为什么要使用Maven?...说明:什么是本地仓库? 就是是由个人将常用到的jar包放入一个仓库中,已备自己在项目中使用,可从别人配置好的jar包仓库拷到自己本地目录,因为仓库一般很大,首次下载需要很长一段时间。...但是这样拷贝就违背了我们当初想要自动解决依赖的问题,所以如何才能让其它的Maven项目直接引用这个JAR包呢? 我们需要执行mvn clean install命令,执行结果如下: ?...cd demotest mvn archetype:generate 首次运行时,mvn会从远程"中央仓库"下载一些必需的文件到"本地仓库",如果你有兴趣,可以在等待下载过程中,观察一下"C:\Users

    1.6K30

    什么是敏捷,传统测试流程的问题有哪些

    为了解,也为不被IT行业所淘汰掉,机缘巧合开始学习敏捷 什么是瀑布模型,瀑布模型的特点 需求固定,反对更改需求 流程固定,开发测试流程清晰,设定具体流程的时间节点,比如开发多少周,测试多少周等等...瀑布模型问题 开发之前需要跟客户沟通,获取详细的需求 根据需求编写需求文档,编写测试计划...等等一系列文档 保证在整个开发过程中不要对需求进行变更 随着时间的增长,知识储备的增长,当做完整个产品的时候...然后通过计划好的开发时间,测试时间等来完成整个功能的实现。 也许过了半年,一年以后开发的产品都跟不上当前同类型产品的特点。 为了满足当前产品的特点需要将功能推倒重建,这样质量是无法得到很好的保证。...迭代研发模式,用来替换传统的瀑布模式 迭代的特点 短时间内完成一部分功能,或者足够小的功能 每次功能交付以后如果发现问题,可以及时撤回修改并重新发布 迭代的问题 缺少能够将迭代划分清楚的人 迭代能够被划分也能够划分足够小...,但是“小”的标准无法被定义清楚 迭代过程中没有对技能,流程,功能进行很好的思考与进步,只是重复做着同样的功能开发 迭代加速了产品的整个开发周期,但是对个人,产品本身没有技术沉积 敏捷是如何做的 敏捷开发历史

    26520

    微信官方送了我一顶圣诞帽,但,为什么是绿色的!

    反正今年圣诞节,我们最期待的是微信官方能够送一顶圣诞帽。 朋友圈早已经刷屏了,你也在@微信官方,他也在@官方微信,却始终没有收到微信的官方回复。 ? ? ? ?...不过微信官方似乎也已经彻底玩嗨了,连小龙大神都已经参与到了套子,额~帽子的狂欢。 ? 尽管事件起源看似一场乌龙,但既然全民都在为微信疯狂打@,微信官方自然也要做点什么。...一个令人振奋的消息是,知晓君已经在昨天@上了微信官方,结果却被不幸送了一顶圣诞绿帽。 ? 不是说好的红配白吗?怎么变成原谅绿了呢? ? 知晓君还在费解当中,有人解释说这不就是微信的官方配色吗? ?...而且,在圣诞这样一个感情事故频发的冬天,男男女女之间还是要少一点背叛,多一点原谅啊。 ? 事实上,相信这几天很多人的朋友圈早已经是一片「草原」了。 ?...「圣诞头像」小程序使用链接 https://minapp.com/miniapp/5131/ 小程序可供选择的圣诞帽款式很多。 ? 甚至还有鹿角。 ? 圣诞节马上来临了,祝大家节日快乐。

    60110

    2022年最新以太网路标发布,但热闹是它们的,我躺平了!

    以太网联盟发布 2022年最新以太网路标 红色箭头标识的为速率演进方向 汽车以太网走向100G着实令人惊讶 难不成每辆汽车里有颗DPU的预言要成真 2021中国DPU行业发展白皮书下载暨市场报告...速率提升途径之一 是加快每通路的速度 这也是行业的“圣杯”级挑战 思科:800G以太网道路上的灰犀牛 说到提升速率 不得不提NRZ到PAM-4的转变 但是别忘了还有相干调制虎视眈眈 思科娶亲把内衣买小了...由内而外 接口速率已经 要面对的是1.6T谁将胜出 从1.6T光模块到51.2T交换,寡头的狂欢 具体到CPO的发展 依靠商用产品的Arista和 有自家工厂的Intel看法肯定不同 关于数据中心...CPO,你可以永远相信Andy 以太网的世界好精彩 以太网的世界好无奈 尤其是当你看到Amazon和Google 两家在2021年部署的带宽就超过数据中心 以太网交换机总带宽的一半时就应该直接躺平

    22510

    我是如何使用Python来自动化我的婚礼的

    在婚礼中,有大量的名单、嵌套的名单、以及更多的远到目光可见的名单。当我瞪着越来越多的项目时,我开始怀疑,是否有更好的方法来处理?这一切都如此的手动,充满了低效。必须有一些技术可以改进的方面。...它们有预先定义好的要求和响应,这让它们是自动化的重要选择。 瓶中信 无关年龄,我确信婚礼名单上每个人都有手机,这意味着该是Twilio上场的时候了。...接下来,我使用Flask作为我的web服务器,然后设置我的Twilio消息请求URL指向/messages url,并创建简单的if语句来解析回复 (yes, no):hello_guest.py @app.route...这需要一些额外的工作,但一旦重排代码,我就可以按需批量运行脚本,并最后通过短信获取我的客人的最新状态:food.py import json import time import gspread...它帮助我们在婚礼臭名昭着的时间消耗方面变得积极主动,让我们可以空出来关注大日子的其他重要领域。 为复杂问题建立可扩展的解决方案从来不是件简单的事,即使在其最终形式下,我的应用有时也是很脆弱的。

    2.7K80

    机器学习是万能的吗?AI落地有哪些先决条件?

    1.引言 入门机器学习或从事其相关工作前,不知道你思考过如下2个问题吗: 1) 机器学习是万能的吗? 2) 工业界要想尽可能落地机器学习,需要满足哪些先决条件?...机器学习是当前最火的人工智能领域的主要子领域之一,它真的是一项革命性的技术创造,记得曾有人说,AI的兴起可以把之前所有的问题再重新研究一遍,足以可见它巨大的创造力,有可能颠覆某项领域的现有技术 …… 那么...为了使用机器学习的技术,先从全国各地选取建仓的数据,模型考虑了几百个特征(包括时间刻画等多个维度),是一个有监督学习任务,训练好模型后,再输入要预测的建仓地区的相关数据到模型中,最后决策一个得分最高的建仓位置...机器学习是基于过去的预测,仿真是基于未来的预测。 机器学习和仿真优化结合才是解决问题的最全面方法论。 3. 机器学习落地,先决条件有哪些?...同样,以上选址模型是在基于已有路网不变情况下预测才会准确,一旦突发环境改变导致模型预测失效。 第二,计算资源。近些年算法虽然有很大的进步,但计算资源也是产生智能的关键。

    1.2K40

    我是这样给同事分析幂等性问题的

    注意:这里指对资源造成的副作用必须是一样的,但是返回值允许不同! 2、幂等性主要场景有哪些? 根据上面对幂等性的定义我们得知:产生重复数据或数据不一致,这个绝大部分是由于发生了重复请求。...4、如何解决幂等性问题? 我们在网上搜索幂等性问题的解决方案,会有各种各样的解法,但是如何判断哪种解决方案对于自己的业务场景是最优解,这种情况下,就需要我们抓问题本质。...不过,乐观锁存在失效的情况,就是常说的ABA问题,不过如果version版本一直是自增的就不会出现ABA的情况。...但主键的要求不是自增的主键,这样就需要业务生成全局唯一的主键, 全局ID生成方案: UUID:结合机器的网卡、当地时间、一个随记数来生成UUID; 数据库自增ID:使用数据库的id自增策略,如 MySQL...但是出于自身责任感,我还得叮嘱他几句: 1)幂等性处理 虽然复杂了业务处理,也可能会降低接口的执行效率,但是为了保证系统数据的准确性,是非常有必要的; 2)遇到问题,善于发现并挖掘本质问题,这样解决起来才能高效且精准

    61621

    我攻克的技术难题: 我是如何解决开发中Chrome插件问题

    大概有这样的需求。 在搜索资源,或者查找解决棘手bug的方法的时候,会经历很长时间来回不断地翻阅一些网站,有的问题甚至半年后还需要重新来过。...所以,我开始向ChatGPT提出我的需求 于是给出了以下这些对话 当我一步一步按照它给我的步骤来实现时。前面还是挺顺的。 首先是添加方式。直接在这里就能添加了 刚开始的时候。...看到有其他Chrome插件能直接导出导入数据,但是我在Chrome的extends里确实没看到文件。有大佬知道Chrome插件的数据保存在哪里的可以方便告知一下。...baidu.com 然后运行发现是能正常运行的 现在的问题就是如何利用快捷键来实现把Chrome的地址栏添加到文件夹里面了。...一些思考 待解决 目前是利用了alfred来解决写入文件的问题。后续需要摒弃到alfred这个软件。 解决完上面这条后,仍然需要利用快捷键来实现对地址栏的添加 如果解决完了上面这2个问题。

    2.5K51
    领券