你只修改了2行代码,为什么需要两天时间?“你只修改了2行代码,为什么需要两天?”这是程序员最常碰到的质问,表面看这是一个非常合理的问题,但它做了一些不合适的假设:代码行数=努力代码行数=价值每一行代码价值都相同所幸上面这些断言都不是真的。一个简单的修复,为什么需要花两天时间?下面列举了一些常见原因。因为如何重现问题的描述很模糊。程序员可能需要花几个小时才能重现bug。有些开发人员会立即联系报告bu
分类:
其他好文 时间:
2020-11-13 12:38:29
阅读次数:
5
在一些特殊环境中virbr0网卡有时候会造成难以预计的影响:第一种情况:网上有人说它可能会导致一些服务HA的VIP无法正常漂移,这点倒是没有发现
分类:
其他好文 时间:
2020-11-13 12:38:15
阅读次数:
3
Slack的512宕机故障分析:负载均衡策略的失误本文描述了2020年5月12日导致Slack宕机的技术细节,要想了解更多关于此故障背后的过程,请参阅RyanKatkov的文章AllHandsonDeck(1)。2020年5月12日,Slack发生了很长时间以来的一次重大故障。我们在事件发生后不久就发表了一份故障说明(2),但这是一个有意思的问题,我想更详细地介绍一下围绕它的一些技术问题。用户可见
分类:
其他好文 时间:
2020-11-13 12:37:20
阅读次数:
4
pacemaker实现ZABBIX高可用后遇到的很尴尬的问题:监控页面查看主机对象的最新数据时发现相同时间会有两份数据
分类:
其他好文 时间:
2020-11-13 12:36:19
阅读次数:
2
哔哩哔哩「会员购」业务网关的研发赋能实践作者沈佳伟哔哩哔哩会员购架构师写在前面网关是个每隔一段时间就会被请出来「鞭尸」的概念,概念本身的起源已经无从考究。随着微服务和云原生的兴起,网关也伴随着不同的使用场景在各个领域进行细分和进化。比较典型的细分领域有流量网关,比如耳熟能详的Nginx/Tengine,通常承担着全域的SLB(ServerLoadBalancing)能力,细分严格的公司还会将流量网
分类:
其他好文 时间:
2020-11-13 12:36:00
阅读次数:
7
Go新版泛型使用:80余行代码构建一个哈希表2018年,我使用Go语言实现了一个玩具性质的哈希表(1),以便学习Go的map等数据类型如何工作。这个版本只支持字符串作为key以及value。1.https://github.com/mdlayher/misc/blob/master/go/algorithms/hashtable/hashtable.go两年后的2020年6月,Go团队发布了一篇题
分类:
其他好文 时间:
2020-11-13 12:35:22
阅读次数:
3
为什么我放弃使用Kotlin中的协程?实不相瞒,我对Kotlin这门编程语言非常喜欢,尽管它有一些缺点和奇怪的设计选择。我曾经参与过一个使用Kotlin、Kotlin协程(coroutine,下同)和基于协程的服务器框架KTOR的中型项目。这个技术组合提供了很多优点,但是我也发现,与常规的SpringBoot相比,它们很难使用。声明:我无意抨击相关技术,我的目的仅是分享我的使用体验,并解释为什么我
分类:
其他好文 时间:
2020-11-13 12:34:29
阅读次数:
3
如何做好CodeReview?分享一份我们团队的Checklist对于很多团队来说,codereview通常充满争议。即使团队知道codereview很值得,但他们仍然难以使之奏效。codereview通常会成为每个人的主观意见的发泄地,这会导致团队内部的争论、感情伤害和不信任。一旦团队中开始出现不信任,就很难恢复。敌意会增长,积极性会下降,信心也会下降。代码质量也会受到影响。基于这些原因,cod
分类:
其他好文 时间:
2020-11-13 12:33:40
阅读次数:
3
一直发现有机器过一段时间update值就会莫名其妙变低,之前一直没有找到rc,只是简单通过重启agent来进行修复,最近同事细心地发现可能是和sudo的bug有关系。
分类:
其他好文 时间:
2020-11-13 12:32:22
阅读次数:
5
重构,还是重写?(2020版)JoelSpolsky(软件随想录作者)曾经写过一篇著名的文章,ThingsYouShouldNeverDo(1),他在文章中断言,你永远不应该从头开始重写一个代码库。他举了Netscape公司的例子,他们花了好几年的时间重写软件,最终公司在这个过程中死亡。一年前,我重读了那篇文章,但还是选择了从头开始重写我们的应用,对,全部重写。以下介绍为什么这么做,我们是如何成功
分类:
其他好文 时间:
2020-11-13 12:31:58
阅读次数:
7
一、首先明白接口是什么软件接口是指程序中具体负责在不同模块之间传输或接受数据的并做处理的类或者函数。(而不是指传输的数据!!)二、什么是接口测试接口测试就是通过向接口传递数据来测试这个接口是否正确。比如:一个QQ登录功能接口,就需要我们传递QQ号和密码去验证这个登录接口是否正确,能否使用。三、进行接口测试需要掌握哪些知识1、了解系统及内部各个组件之间的业务逻辑交互;2、了解接口的I/O(input
分类:
其他好文 时间:
2020-11-13 12:31:26
阅读次数:
10
用代码来说明,为什么需要面向扩展的设计在基本的面向对象编程中,你只能直接调用一个类的方法,而这些方法是由这个类的作者定义的,这对于面向用户设计的类来说是没有问题的。此外,在20-30年前,在大型标准库和开源库被大量复用之前,大部分代码通常是跟自己的代码中的类来一起工作的——也就是你自己的团队或公司维护的代码。然而,在现代代码世界中,我们经常会使用其他人编写的类。业务逻辑通常大量使用包括字符串和集合
分类:
其他好文 时间:
2020-11-13 12:30:53
阅读次数:
7
Grab熔断器设计:如何应对突发打车峰值在东南亚,一旦下雨往往就不小。它成为一个重要的情绪因素,尤其是当你被困在外面的时候,你就会面临糟糕的一天。在Grab的早期,如果雨来的时间不对,比如上班早高峰时间,那么我们这些工程师那一天也不好过。在那个时候,Grab叫车服务的需求增长速度远超我们的技术系统扩展能力,我们经常要加班到深夜,以确保系统能够处理不断增长的请求。当打车预订量突然激增时,我们的系统还
分类:
其他好文 时间:
2020-11-13 12:30:29
阅读次数:
11
TCP的三次握手和四次握手TCP三次握手?在一些文化中,两个人见面时常常通过握手来问好。双方都把握手的行为理解为友好问候的信号。网络中的连接是类似的。第一次握手请求同步。第二次握手确认初始同步请求,并同步相反方向上的连接参数。第三次握手网段是一次确认,用于通知目标两端同意建立连接。?当两台主机采用TCP协议进行通信时,在交换数据前将建立连接。通信完成后,将关闭会话并终止连接。连接和会话机制保障了T
分类:
其他好文 时间:
2020-11-13 12:29:18
阅读次数:
3
配置LAN目的地,增加接收告警地址,点击配置——PEF
分类:
其他好文 时间:
2020-11-13 12:28:53
阅读次数:
6
系统简介车牌识别这个系统,虽然传统,古老,却是包含了所有这四个特侦的一个大数据技术的缩影.在车牌识别中,你需要处理的数据是图像中海量的像素单元;你处理的数据不再是传统的结构化数据,而是图像这种复杂的数据;如果不能在很短的时间内识别出车牌,那么系统就缺少意义;虽然一副图像中有很多的信息,但可能仅仅只有那一小块的信息(车牌)以及车身的颜色是你关心,而且这些信息都蕴含着巨大的价值。也就是说,车牌识别系统
分类:
其他好文 时间:
2020-11-13 12:27:53
阅读次数:
4