首页
学习
活动
专区
工具
TVP
发布

编程一生

专栏成员
198
文章
159716
阅读量
43
订阅数
网络通信知识地图
我在之前一段时间做过网络通信的系列文章,但是文章还是偏散,没有一个整体脉络,本篇就以知识地图的形式来进行梳理。
静儿
2022-05-06
3600
在别人写的代码上做修改我是这样保证正确性
9年前我入职一家公司,团队里都是之前公司的原同事,彼此都很熟,对各人的能力也都很了解。我当时负责整个公司的搜索引擎。上班第一天,我在看之前的遗留代码。原同事过来问我:“你是打算用这个老系统改造还是重写?”我笑了笑说:“我还是重写吧。” 原同事也意会的笑了笑说:“我就知道。”当时我们都多少带着些技术高人一筹的傲气。而我那位同事成长的更快,我们第三次做同事的时候,他整个人更加成熟谦虚,而那时我还在路上。9年来我再也没有接手可以毫无负担,直接推倒重写的代码。就算有,不搞清楚以前的逻辑和背景,就直接抛掉这些历史包袱是不对的。在修改别人写的代码的时候,我们需要信奉黑格尔的名言:“存在即合理”。一定要弄清楚之前这样编写代码是出于什么样的考虑。 项目背景 这段时间我们团队在修改之前的一个功能。在我接触到这个项目的时候,设计方案已经被讨论了多次,已经到了详细设计的阶段。在我视角需求是这样的:就是一个查询接口的改造,改造前代码逻辑被前人做复杂了,这次一些从下游拿数据来拼接返回值的逻辑可以改成从下游(数据基础服务)简单取部分数据,另外一部分写死。
静儿
2021-10-25
1.1K0
容易引起雪崩的两个处理
先介绍标题《容易引起雪崩的两个处理》的第一个处理:慢查询。上周在测试环境遇到一个慢查询问题,虽然是测试环境,但是现象还是很让人担忧的:“在大量执行update操作”“已经执行1个多小时”“负载200多,基本上库都卡死了”。把库都要搞挂了,细思极恐啊。于是,这个事件处理的优先级即刻被升级为S级别,我们进行了点线面的梳理和分析。
静儿
2021-10-09
5680
代码评审的三怕
二方库更新,一般来说,由于是公司内部的,有任何变更需要涉及方更新时都会通知,实际的改动量不会特别多。这时候升级前需要做版本比对,确认所有的修改处,尤其要注意:枚举值的顺序、方法的顺序是否有变换;方法是否有重载。
静儿
2021-09-28
5860
一个由于侵入框架引起的故障
其实最近一直想写些帮助大家提高架构底蕴的东西。无奈最近当家的身体抱恙,我白天上班,晚上照顾病人,没有多余的精力 点、线、面的横向思考技术的问题。倒是“无为空自老,含叹负平生”的人生感慨多一些。今天还是谈谈点上的东西。 记得早些时候,被别人要求写算法代码没写出来,后来我刷了百道leetcode。算法题再也没难住我了。但是想来,平时工作中是还是真的少些这些底层代码为妙,业务代码有业务代码的写法。写业务代码最忌讳:“炫技”。和做人一样,讲究“技高不炫技”。下面来介绍一个由于侵入了框架内部引起的故障。
静儿
2021-08-23
3460
关于生产环境改用G1垃圾收集器的思考
由于我们的业务量非常大,响应延迟要求高。目前沿用的老的ParNew+CMS已经不能支撑业务的需求。平均一台机器在1个月内有1次秒级别的stop the world。对系统来说是个巨大的隐患。所以我们采用测试环境压测和逐渐在一些小的试点项目中生产环境引用G1来验证是否可以解决问题以及可能会引入的风险。
静儿
2021-04-09
1.3K0
懂了!国际算法体系对称算法DES原理
加密领域主要有国际算法和国密算法两种体系。国密算法是国家密码局认定的国产密码算法。国际算法是由美国安全局发布的算法。由于国密算法安全性高等一系列原因。国内的银行和支付机构都推荐使用国密算法。
静儿
2020-11-24
8090
hystrix线程池隔离的原理与验证
hystrix可以完成隔离、限流、熔断、降级这些常用保护功能。这四个功能可以这么来理解:
静儿
2020-10-29
2.8K0
稳定性五件套-限流的原理和实现
最近了解到很多朋友对限流、熔断、降级、隔离、超时重试的概念和应用场景理解的不是很到位,所以想用五篇的篇幅稍微系统的介绍一下。
静儿
2020-06-02
4640
关于Java两点需要更新的知识
很多人可以把HashMap的原理描述的很溜。比如JDK1.7之前,底层数据结构是数组+链表。JDK1.8之后,出于效率上的考虑,在数组长度大于64,链表长度大于8的时候,会转换为红黑树。
静儿
2020-05-27
3890
学习Spring的思考框架
很早之前听同事说:“要开会了。我都知道领导要问什么,就那几板斧。”其实领导之所以为领导,人家问的问题确实很合情合理,甚至可以说一针见血。而之所以能问出来这些合理的问题,就是因为头脑中有自己的思考框架。比如要做一件事情,一个思考框架就是:
静儿
2019-10-29
4040
Spring参数的自解析--还在自己转换?你out了!
背景前段时间开发一个接口,因为调用我接口的同事脾气特别好,我也就不客气,我就直接把源代码发给他当接口定义了。
静儿
2019-08-20
5350
编写代码的「八荣八耻」- 以用户易用为荣,以复杂歧义为耻
本文是继《编写代码的「八荣八耻」(上篇)》和《编写代码的「八荣八耻」-以开关上线为荣,以自信编码为耻 》之后,编写代码的「八荣八耻」系列的第三篇。
静儿
2019-05-15
5940
编写代码的「八荣八耻」- 以用户易用为荣,以复杂歧义为耻
本文是继《编写代码的「八荣八耻」(上篇)》和《编写代码的「八荣八耻」-以开关上线为荣,以自信编码为耻 》之后,编写代码的「八荣八耻」系列的第三篇。
静儿
2019-05-08
5960
设置默认的超时和重试是一个基础设施的基本素养
本篇应该是稳定性「三十六计」系列的一篇:超时重试。但是「设置默认的超时和重试是一个基础设施的基本素养」这句话我在我们组内三次开会的时候都说了。表达了我的一个理念。
静儿
2019-04-23
5000
编写代码的「八荣八耻」(上篇)
静儿从19年元旦以来,新创建的4个产品:heimdal、carter、hydra、stark。分别对应漫威里的:海姆达尔(Heimdallr是彩虹桥的守护神,我们项目用的是heimdal 是个一个地名,与Heimdallr音译相同)、特工卡特、九头蛇、钢铁侠。
静儿
2019-04-09
4150
编写代码的「八荣八耻」(上篇)
静儿从19年元旦以来,新创建的4个产品:heimdal、carter、hydra、stark。分别对应漫威里的:海姆达尔(Heimdallr是彩虹桥的守护神,我们项目用的是heimdal 是个一个地名,与Heimdallr音译相同)、特工卡特、九头蛇、钢铁侠。
静儿
2019-03-31
7070
程序媛的人生观
昨天是周四,周四是发版日。因为周五有其他的会,我们组决定周四辛苦一点,开会将项目验收和两个技术方案评审都做了。验收项验收的是我晚上要发版的系统。
静儿
2019-03-29
4440
一个请求过来都经过了什么?(Thrift版)
一、背景 最初遇到这个问题是去58面试。部门领导是原同事,所以面试比较水。水到什么程度呢? 面试就是走个形式而已,不会不过的。 一面面试官就问了一个问题:“一个请求过来都经过了什么?”  剩下的全是闲
静儿
2019-03-15
8570
程序常用的设计技巧
解决方案:接口定义中需要传入原来积分是多少,增加到多少。开发人员直接将目标结果入库。
静儿
2019-03-11
3720
点击加载更多
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档