haifeiWu与他朋友们的专栏

https://www.hchstudio.cn/
81 篇文章
39.4K 次阅读
18 人订阅

全部文章

haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

Kafka的日志复制机制

Kafka 是一个分布式的发布-订阅消息系统。它最初是在 LinkedIn 开发的,2011年7月成为一个 Apache 项目。今天,Kafka 被 Linke...

7620
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

go 并发编程

Go 语言在 sync 包中提供了用于同步的一些基本原语,包括常见的 sync.Mutex、sync.RWMutex、sync.WaitGroup、sync.O...

14920
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

【译】了解Linux CPU负载-您何时应该担心?

您可能已经熟悉Linux平均负载。 平均负载是 uptime 和 top 命令显示的三个数字-它们看起来像这样:

8210
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

Zookeeper 与分布式锁

在上篇文章中讨论了基于 Redis 的单机分布式锁与集群分布式锁的方案,在数据一致性要求不是很高的情况下,Redis 实现的分布式锁可以满足我们的要求。最近在拜...

9820
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

基于Redis的分布式锁到底安全吗?

2,注意事项(对释放锁的控制,以及锁超时的控制)random_value 要保证唯一,可以用 trace_id 来保证! 3,存在的问题,单机Redis只是依赖...

23520
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

【译】Raft 学生指南

在过去的几个月中,我一直担任MIT的 6.824 分布式系统课程的助教。 传统上,该班级有许多基于 Paxos 共识算法的实验,但是今年,我们决定转向 Raft...

17710
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

使用 map 实现策略模式

上篇文章在谈到优化代码的时候,有一部分涉及到了使用策略模式优化我们的代码,本篇文章将围绕策略模式谈谈自己的思考~

40520
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

Integer 中你所不知道的

前几天和我六哥讨论技术的时候说到了 Integer,大家可能觉得 Intger 有什么好说的,不就是 int 吗,Java 装箱拆箱机制。那么现在有这样一个问题...

14020
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

双重检查锁定与单例

对于单例模式,相信大多数人都可以写出好几种实现方法,懒汉,饿汉等等,然而小小单例真要写好,写的完全正确也并非易事。

18430
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

使用 Go 优化我们的接口

标题起的是有点大,不过还好本片文章主要也是使用 Go 来优化 HTTP 服务的,也算打个擦边球吧~

18240
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

[译] 为什么String在Java中是不可变的

String 在 Java 中是不可变的。 不可变类只是一个无法修改其实例的类。 创建实例时,将初始化实例中的所有信息,并且无法修改信息。 不可变类有许多优点。...

17920
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

Handler 源码解析(Java 层)

从很早开始就认识到 Handler 了,只不过那时修为尚浅,了解的不够深刻,也没有应用自如。不过随着工作时间的增长,对 Handler 又有了更深层次的认识,于...

16240
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

二分查找算法细节详解

我相信对很多读者朋友来说,编写二分查找的算法代码属于玄学编程,虽然看起来很简单,就是会出错,要么会漏个等号,要么少加个 1。

24220
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

LeetCode 每日一题(day 1)

给定一个按非递减顺序排序的整数数组 A,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。

19310
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

如何使用 Redis 实现分布式锁

锁是我们在设计和实现大多数系统时绕不过的话题。一旦有竞争条件出现,在没有保护的操作的前提下,可能会出现不可预知的问题。

42910
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

我理解的 TCP 连接

TCP 是面向连接的协议。运输连接是用来传输 TCP 报文的。TCP 运输连接的建立和释放是每一次面向连接通信中必不可少的过程。因此,运输连接有三个阶段,即:连...

12910
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

LRU 算法

LRU 是 Least Recently Used 的缩写,即最近最少使用,是一种常用的页面置换算法,选择最近最久未使用的页面予以淘汰。该算法赋予每个页面一个访...

19530
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

实时数据并发写入 Redis 优化

当前架构的逻辑是将并发请求数据写入队列中,然后起一个单独的异步线程对数据进行串行处理。这种方式的好处就是不用考虑并发的问题,当然其弊端也是显而易见的~

28810
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

lang3 的 split 方法误用

apache 的 lang3 是我们开发常用到的三方工具包,然而对这个包不甚了解的话,会产生莫名其秒的 bug ,在这里做下记录。

19020
haifeiWu

滴滴 · 后台高级开发工程师 (已认证)

Nacos 配置中心的调研

进一步减少不必要的重复工作,最近打算在把之前的项目重构成 SpringBoot 项目之后,源于 N 台机器配置的管理甚是麻烦,所以便有了进一步将项目的配置进行统...

16830

扫码关注云+社区

领取腾讯云代金券