摘要: 因为我是一个不管做什么事情都喜欢进行总结的一个人。所以对于在上周去淘宝面试的经历,现在面试回来总结,我想对所有程序员们谈谈。 阅读全文
posted @ 2018-07-08 15:10 AI乔治 阅读(1558) 评论(0) 推荐(1) 编辑
摘要: 问题背景 前不久技术学院负责人让我帮助维护下⼤讲堂、积分管理等⼏个系统。这些系统功能都已经很稳定,也不会再有新的功能开发,但是⼤讲堂系统自上线后,每过⼀段时间就会出错,导致学员⽆法报名课程,希望我帮助解决下。这种累积下来的问题解决起来⽐较难,但是对能⼒提升帮助很大,我欣然接受了,所以就有了这次“艰苦 阅读全文
posted @ 2020-12-17 15:41 AI乔治 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 从HTTP请求超时、重试机制、操作系统网络等层面剖析了事故的原因,最终解决业务问题。 这里先抛两个问题:1)你遭遇过由于网络连接或请求超时造成的生产事故吗?2)你知道操作系统默认的网络连接超时是多少秒? 问题背景 最近同事出现这么一个问题,简单业务场景: 服务A使用HTTP请求服务B接口m。服务A起 阅读全文
posted @ 2020-12-17 14:54 AI乔治 阅读(687) 评论(0) 推荐(0) 编辑
摘要: 这篇文章是我在公司 TechDay 上分享的内容的文字实录版,本来不想写这么一篇冗长的文章,因为有不少的同学问是否能写一篇相关的文字版,本来没有的也就有了。 说起来这是我第二次在 TechDay 上做的分享,四年前第一届 TechDay 不知天高地厚,上去讲了一个《MySQL 最佳实践》,现在想起来 阅读全文
posted @ 2020-12-17 14:23 AI乔治 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 一、问题 模型服务平台的排序请求出现较多超时情况,且不定时伴随空指针异常。 二、问题发生前后的改动 召回引擎扩大了召回量,导致排序请求的item数量增加了。 三、出问题的模型 基于XGBoost预测的全排序模型。 四、项目介绍 web-rec-model:模型服务平台。用于管理排序模型:XGBoos 阅读全文
posted @ 2020-12-17 14:18 AI乔治 阅读(343) 评论(0) 推荐(0) 编辑
摘要: 背景: 最近使用MapReduce做离线数据清洗,在map段做简单的数据过滤,有经纬度的发送到reduce端,没经纬的过滤掉。reduce端将数据整理出来,按业务模型拼接成字符串写入HDFS。供hive作为外表进行后续数据处理分析。 问题: 该批数据总共2T大小,MapReduce执行第一次时,不出 阅读全文
posted @ 2020-12-16 21:09 AI乔治 阅读(508) 评论(0) 推荐(0) 编辑
摘要: 线上故障主要会包括cpu、磁盘、内存以及网络问题,而大多数故障可能会包含不止一个层面的问题,所以进行排查时候尽量四个方面依次排查一遍。同时例如jstack、jmap等工具也是不囿于一个方面的问题的,基本上出问题就是df、free、top 三连,然后依次jstack、jmap伺候,具体问题具体分析即可 阅读全文
posted @ 2020-12-16 21:01 AI乔治 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 从一个BUG说起 前段时间翻到了一个 JDK 有点意思的 BUG,带大家一起瞅瞅。 memory leak,内存泄漏。 是谁导致的内存泄漏呢? ConcurrentLinkedQueue,这个队列。 这个 BUG 里面说,在 jetty 项目里面也爆出了这个 BUG: 我看了一下,觉得 jetty 阅读全文
posted @ 2020-12-16 20:51 AI乔治 阅读(277) 评论(0) 推荐(1) 编辑
摘要: 前言 大多数情况下,我们会在打印日志时定义日志的LOGGER级别,用来控制输出的信息范围。 一方面,过多的输出会影响查看日志的效率,另一方面,过少的日志让问题定位变得困难。 但当线上出现问题时,线上容器通常定义在info级别,发生一些疑难问题时,光靠info级别的日志很难定位问题。 一个典型的场景: 阅读全文
posted @ 2020-11-21 21:37 AI乔治 阅读(769) 评论(0) 推荐(0) 编辑
摘要: bcc是eBPF的一种前端,当然这个前端特别地简单好用。可以直接在python里面嵌入通过C语言写的BPF程序,并帮忙产生BPF bytecode和load进入kernel挂载kprobe、tracepoints等上面执行。之后,还可以从python取出来C函数里面导出的maps数据以及per-ev 阅读全文
posted @ 2020-11-21 21:34 AI乔治 阅读(601) 评论(0) 推荐(0) 编辑
摘要: 今天再来分析一个死锁场景。下面开始真正的内容。 建表语句: CREATE TABLE `tenant_config` ( `id` bigint(21) NOT NULL AUTO_INCREMENT, `tenant_id` int(11) NOT NULL, `open_card_point` 阅读全文
posted @ 2020-11-21 21:33 AI乔治 阅读(295) 评论(0) 推荐(0) 编辑

作者微信号:wm1106701116 (备注:博客园) 加入微信架构群,获取架构师学习资料。