Forrest Hu's Blogs

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

  1. mockito简介及源码分析

    前言健壮的代码需要良好的单元测试,单元测试需要模拟其它单元的功能,所以需要一个强大易用的mock框架。需要了解的一些测试概念深入理解Mockito(1)–概念介绍深入理解Mockito(2)–Mock的基本使用深入理解Mockito(3)–Partial Mock(部分模拟...

  2. 2017软件开发小结—— 从做功能到做系统

    做功能,本文指基于一个现有系统进行增强,有产品经理描述需求。此时,无论上功能描述上,还是代码实现上,都有清晰的边界。特定到web后台开发,Controller/Action==> service ==> dao 这种本质上面向过程的代码,大部分细节都已确定。做系...

  3. 领域驱动理念入门

    简介 革新的对象——面向数据库的架构/传统分层架构 多视角理解领域驱动 分解复杂性视角 软件架构设计视角 如何用代码有效描述业务视角 领域模型设计 战略设计:子域、限界上下文和上下文映射图 ...

  4. 现有上传协议分析

    tus服务端tusd代码上go中一个http server的标准写法http.Handle("/foo", fooHandler)http.HandleFunc("/bar", func(w http.ResponseWriter, r *http.Request) { f...

  5. 《Apache Kafka源码分析》——clients

    前言 前言 生产者 bootstrap.servers 业务线程 sender 线程 值得学习的地方——interceptor 值得学习的地方——反射的另个一好处 消费者 Kafk...

  6. 移动网络下的文件上传要注意的几个问题

    本文根据作者的实践及材料汇总,讨论移动网络下文件上传涉及到的几个问题。对于一些问题,不谈解决方案,只谈利弊。 移动网络(相对有线网络)的一些特点 腾讯原创分享(一):如何大幅提升移动网络下手机QQ的图片传输速度和成功率要点: 网络好时提高速...

  7. dns隐藏的一个坑

    TCP/IP 网络是通过 IP 地址来确定通信对象的,因此不知道 IP 地址就无法将消息发送给对方,这和我们打电话的时候必须要知道对方的电话号 码是一个道理。然而,就像你很难记住电话号码一样,要记住一串由数字组成 的 IP 地址也非常困难。因此,相比 IP 地址来说,网址中...

  8. 记第一次飞翔

    有人说,生活像一场修行,或许就是如此吧。首先是一个有意或无意的开始,有意在于,我特意选择今天出去,以前是不想被虐狗,现在加上不想被剁手。无意在于,偶然得知有滑翔伞的活动,我第一个反应是科波菲尔的魔术——飞翔,也算是一直以来的一个小梦想。恩,那个魔术也有点虐狗。修行嘛,就是给...

  9. 《mysql技术内幕》笔记

    简介 基本架构 API 磁盘文件 物理结构 逻辑结构 数据库的并发安全 锁的实现 其它《mysql技术内幕》 主要讲存储引擎部分。基本架构查询缓存:key 是查询的语句,value 是查询的结果。如果你的查询能够直接在这个...

  10. 推送系统的几个基本问题

    简介 整体设计 功能问题 推送是一个数据处理系统 性能问题 支持时效性短的推送——是一个隔离问题还是一个优先级问题 基于业务的个性化整体设计几个名词: uid/device id,公司内部对用户/设备的标记 token,推送服务商(小米、个推)对设备的标记推...