Forrest Hu's Blogs

技术、架构与生活随笔 · 共 449 篇文章

  1. openkruise学习

    把 k8s 比喻为京东网站,提供的是平台的能力,Openkruise 可以看做是在京东开的第三方店铺。 站在平台层面,Deployment和CloneSet 都是店家,共同享用平台的基础能力。Kubernetes的价值与不足docker 让镜像和容器融合在一起,docker...

  2. 可观察性和监控系统

    简介 监控报警内在原因 一个好的监控报警系统什么样 监控的几个反模式 报警哲学 监控理念 常见痛点及解决 未来是关联 其它一切系统都是分布式的在经典分布式计算理论中,我们学到的一件事情是:分布式系统经常会发生故障,...

  3. 基于Kubernetes选主及应用

    简介 选主原理 乐观锁 选主逻辑 应用示例假设run 是真正的业务逻辑,加入选主逻辑之后,将run挂在 election.RunOrDie 的 OnStartedLeading 回调上。election.RunOrDie(elec...

  4. 坏味道

    前言不仅是代码有坏味道,在项目落地过程中,组织协同、沟通等都有坏味道。通过一段时间的实践,笔者深切的感受就是:性能往往够用就行,可读性才是第一优先的。代码优化是一把双刃剑基于简洁的思想写成的源代码足以满足 99% 情况下的性能需求。而且这将极大地提高应用程序的可维护性。任何...

  5. 学习分布式

    简介 分布式系统 什么是一致性? 如何得到争取的执行序列/限制错误的执行序列 分布式问题与相对论条分缕析分布式:到底什么是一致性?条分缕析分布式:浅析强弱一致性条分缕析分布式:因果一致性和相对论时空理解问题本身比知道问题的答案要重要的多。本文中,我们辨析了线性一致性...

  6. 学习网络

    简介 网络协议 网络传输用思考的方式去记忆,而不是用记忆的方式去思考。读完这篇文章,就再也不怕遇到网络问题啦!快速界定故障:Socket Tracer网络监控实践网络协议从计算机 分层和网络分层的feel 来审视上图 物理层。可以理解为网络设备的原生能力,它定义了硬件...

  7. 学习Linux

    简介 艺术性 中断 微内核 vs 宏内核 bios ==> grub ==> linux一文带你真正认识 Linux 系统结构艺术性 指令是稳定的,但指令序列是变化的,只有这样计算机才能够实现 “解决一切可以用 ‘计算’ 来解决的问题” 这个目标。计算...

  8. 《许式伟的架构课》笔记

    简介 需求分析 业务系统设计 架构系统设计 人 其它 搬砖师,他们的编程和业务能力基本上停留在堆叠代码,按照要求去实现功能需求的层面。 工程师,致力于不断提升软件代码的工程质量的程序员,会把写出来的代码改了又改,直到让自己满意为止。 架构师,软件架构师和软件...

  9. go 内存管理

    前言 前言 整体设计 内存分配算法 TCMalloc 多级分配 多级分配——另一种表述 页管理 数据结构 源码分析 go 内存分配器细节补充 内存模型/happen-before有关go内存是在堆上分配...

  10. golang 系统调用与阻塞处理

    前言 前言 阻塞 系统调用 异步系统调用 同步系统调用 sysmon 协程Please remember that at the end of the day, all programs that work on UNIX m...