一、背景

1. 业务上云带来性能收益

公司从去年全面推动业务上云,而以往 IDC 架构部署上,接入层采用典型的 4 层 LVS 多机房容灾架构,在业务高峰时期,扩容困难(受限于物理机资源和 LVS 内网网段的网络规划),且抵挡不住 HTTPS 卸载引发的高 CPU 占用。

而经过压力测试发现,使用腾讯云 7 层 CLB 负载均衡进行 HTTPS 卸载,性能得到极大提升。测试数据也表明,IDC 旧架构中,启用 HTTPS 会带来 90% 以上的性能损耗。

2. 架构调整引发多次故障

引入腾讯云 7 层 CLB 负载均衡产品,带了了巨大的性能提升,却也给业务带来了痛苦,主要核心问题是获取客户端的真实 IP 上。

当前现状是业务语言异构(PHP + Go),多数业务已经历服务化改造,但缺乏服务发现机制,服务与服务之间的调用依赖域名和 DNS 解析,大部分都是 HTTP 服务。

在架构调整后,QA 没能 100% 覆盖测试,导致漏测的服务经常拿到错误的客户端 IP 地址,造成的后果是损失大量的用户。这些用户会因为短信验证码发送限制、IP 登录频次过高而无法登录、充值,给公司带来巨大损失。

3. 未来的路应该怎么走?

更进一步讲,当前业务如何抵挡外界的 DDoS 攻击、请求机器人、SQL 注入等等,最简单的是接入高防 IP、WAF 应用防火墙,而请求经过多轮转发,同样也有获取客户端真实 IP 的问题。

再者,业务也在逐步容器化,享受 Kubernetes 弹性扩容的便利,怎么平滑迁移也是非常值得深思的。

假设 SRE 配置不当,应用层拿到的,很有可能是高防 IP 或者 WAF 的 IP,业务绝对无法忍受。

显然,确定一个业务无感知的方案并成功落地迫在眉睫。然而我翻遍了互联网,几乎没有文章能把这些看起来很简单的事情捋清楚说明白,更不用说最佳实践。大多数人都是抄抄配置,潦潦草草上线,方案并没有普适性。

这篇文章也是我在这段时间的研究中总结出来的宝贵经验,希望对读者能有些许帮助。文章篇幅较长,难免有错误之处,还请各位看官斧正,感激不尽:)

阅读全文

21|学霸为什么学什么都快?有哪些可以借鉴的方法论?

  1. 学习是一个匀加速甚至变加速的过程。懂得越多学得越快。学霸真正的优势在于,TA 已经储存了很多思维和信息,也就是知识储备。
  2. 学习和记忆的本质,就是把新知识与旧知识建立联系,旧知识容量越大、种类越多,就越能随时找到与新知识之间的联系,越能更快更好地学习。
  3. 你在过去积累的能力储备,也是重要的。你和学霸,看似在眼下付出的努力是相同的,然而你们系统的配置是不同的。
  4. 学习也具有“复利”效应,你过去的每一次练习,都会积累成你的本金。种一棵树最好的时间是十年前,其次是现在。

阅读全文

17|如何合理地制订计划?

  1. SMART 原则:计划是具体的,包括内容、时间、频率,是可达到的,与大目标有相关性的,有明确的截止期限。
  2. 摆脱“倒数日”思维:“倒数日”的思维,制订的是长期计划,会让我们觉得特别沉重,抗拒,不愿开始,它剥夺了我们的自由感。
  3. 改变的方法是:只去制订今天的计划,明天要干啥,明天再说,今天不影响明天,新的一天,重整旗鼓。长远计划只需清楚大方向和内容就好。今天完成任务有时间的话,还可以进一步灵活制订计划,甚至做出优化。从“我要从某天起开始怎样怎样”“我要努力多久”的“倒数日”思维中,挣脱出来,只去想“今天要做什么”,并且尽力完成。

阅读全文

12|每个人都能学会:5 分钟克服拖延症的方法

  1. 5 分钟起步法:先给自己 5 分钟的起步时间,比如先开始读一页书,或者背 10 个单词,别计较效率。接受自己刚开始那 5 分钟的烦躁和抗拒,继续做该做的事情,之后就好了。因为,真正能够影响行动的,是行动本身。不是说等我想做了,我才能去做;而是我先开始做,我就会进入想做的状态。
  2. 稍微走在计划前面,给自己留下偷懒的资格和空间,当你相对拥有不做事的权利的时候,你才会更愿意追求主动做事。
  3. 替代拖延法:如果有一个更难的任务需要完成,我们就非常极其愿意去做相对简单的任务了。我们可以利用这种心理,在拖延艰难任务的过程中,把容易的任务迅速解决掉。

阅读全文

05|教你全面提升专注力,学习时不再走神

人们对一切人、事、物的感受,由峰值和终值两个因素决定。峰值是指这段体验中的最高峰,包括正向和负向;终值是指这段体验结束时给你的感觉。

  1. 互动——默默重复关键词,主动有选择记笔记;记东西出声背诵,或用笔写写划划;看书时寻句眼划线。
  2. 问题——带着问题去学习,你自然就会变得专注。
  3. 默念——默念能帮助自己忘记恐惧和焦虑,把注意力全部集中在眼前的题目上面。
  4. 专注——一是,一直专注于一件事若干时长的能力;二是,走神之后,重新让自己专注的能力。而且,后者是更为重要的一部分。实际上,你一直保持专注的能力,也是在“走神 - 重新专注 - 走神 - 重新专注”的过程中,训练得来。

阅读全文