游客gybmahbtqgs6y_社区达人页

个人头像照片
游客gybmahbtqgs6y
已加入开发者社区811

勋章 更多

个人头像照片
专家博主
专家博主
个人头像照片
星级博主
星级博主
个人头像照片
技术博主
技术博主
个人头像照片
初入江湖
初入江湖

成就

已发布197篇文章
7条评论
已回答0个问题
0条评论
已发布0个视频
github地址

我关注的人 更多

技术能力

兴趣领域
擅长领域
技术认证

暂时未有相关云产品技术能力~

暂无个人介绍

暂无精选文章
暂无更多信息

2022年05月

  • 05.01 00:32:00
    发表了文章 2022-05-01 00:32:00

    强如 Disruptor 也发生内存溢出?(下)

    OutOfMemoryError 问题相信很多朋友都遇到过,相对于常见的业务异常(数组越界、空指针等)来说这类问题是很难定位和解决的。 本文以最近碰到的一次线上内存溢出的定位、解决问题的方式展开;希望能对碰到类似问题的同学带来思路和帮助。 主要从表现-->排查-->定位-->解决 四个步骤来分析和解决问题。
  • 05.01 00:30:46
    发表了文章 2022-05-01 00:30:46

    强如 Disruptor 也发生内存溢出?(上)

    OutOfMemoryError 问题相信很多朋友都遇到过,相对于常见的业务异常(数组越界、空指针等)来说这类问题是很难定位和解决的。 本文以最近碰到的一次线上内存溢出的定位、解决问题的方式展开;希望能对碰到类似问题的同学带来思路和帮助。 主要从表现-->排查-->定位-->解决 四个步骤来分析和解决问题。
  • 05.01 00:29:06
    发表了文章 2022-05-01 00:29:06

    分布式(一) 搞定服务注册与发现(下)

    我的业务比较简单,只是需要知道现在有哪些服务实例可供使用就可以了(并不是做远程调用,只需要拿到信息即可)。 要实现这一功能最简单的方式可以在应用中配置所有的服务节点,这样每次在使用时只需要通过某种算法从配置列表中选择一个就可以了。
  • 05.01 00:27:03
    发表了文章 2022-05-01 00:27:03

    分布式(一) 搞定服务注册与发现(上)

    我的业务比较简单,只是需要知道现在有哪些服务实例可供使用就可以了(并不是做远程调用,只需要拿到信息即可)。 要实现这一功能最简单的方式可以在应用中配置所有的服务节点,这样每次在使用时只需要通过某种算法从配置列表中选择一个就可以了。

2022年04月

  • 04.30 14:23:58
    发表了文章 2022-04-30 14:23:58

    Netty(三) 什么是 TCP 拆、粘包?如何解决?(下)

    记得前段时间我们生产上的一个网关出现了故障。 这个网关逻辑非常简单,就是接收客户端的请求然后解析报文最后发送短信。 但这个请求并不是常见的 HTTP ,而是利用 Netty 自定义的协议。 有个前提是:网关是需要读取一段完整的报文才能进行后面的逻辑。
  • 04.30 14:20:22
    发表了文章 2022-04-30 14:20:22

    Netty(三) 什么是 TCP 拆、粘包?如何解决?(中)

    记得前段时间我们生产上的一个网关出现了故障。 这个网关逻辑非常简单,就是接收客户端的请求然后解析报文最后发送短信。 但这个请求并不是常见的 HTTP ,而是利用 Netty 自定义的协议。 有个前提是:网关是需要读取一段完整的报文才能进行后面的逻辑。
  • 04.30 14:17:58
    发表了文章 2022-04-30 14:17:58

    Netty(三) 什么是 TCP 拆、粘包?如何解决?(上)

    记得前段时间我们生产上的一个网关出现了故障。 这个网关逻辑非常简单,就是接收客户端的请求然后解析报文最后发送短信。 但这个请求并不是常见的 HTTP ,而是利用 Netty 自定义的协议。 有个前提是:网关是需要读取一段完整的报文才能进行后面的逻辑。
  • 04.30 14:09:53
    发表了文章 2022-04-30 14:09:53

    如何优雅的使用和理解线程池(下)

    平时接触过多线程开发的童鞋应该都或多或少了解过线程池,之前发布的《阿里巴巴 Java 手册》里也有一条
  • 04.30 14:07:41
    发表了文章 2022-04-30 14:07:41

    如何优雅的使用和理解线程池(上)

    平时接触过多线程开发的童鞋应该都或多或少了解过线程池,之前发布的《阿里巴巴 Java 手册》里也有一条:
  • 04.30 14:03:35
    发表了文章 2022-04-30 14:03:35

    HashMap? ConcurrentHashMap? 相信看完这篇没人能难住你!(下)

    Map 这样的 Key Value 在软件开发中是非常经典的结构,常用于在内存中存放数据。 本篇主要想讨论 ConcurrentHashMap 这样一个并发容器,在正式开始之前我觉得有必要谈谈 HashMap,没有它就不会有后面的 ConcurrentHashMap。
  • 04.30 13:59:52
    发表了文章 2022-04-30 13:59:52

    HashMap? ConcurrentHashMap? 相信看完这篇没人能难住你!(中)

    Map 这样的 Key Value 在软件开发中是非常经典的结构,常用于在内存中存放数据。 本篇主要想讨论 ConcurrentHashMap 这样一个并发容器,在正式开始之前我觉得有必要谈谈 HashMap,没有它就不会有后面的 ConcurrentHashMap。
  • 04.30 13:56:33
    发表了文章 2022-04-30 13:56:33

    HashMap? ConcurrentHashMap? 相信看完这篇没人能难住你!(上)

    Map 这样的 Key Value 在软件开发中是非常经典的结构,常用于在内存中存放数据。 本篇主要想讨论 ConcurrentHashMap 这样一个并发容器,在正式开始之前我觉得有必要谈谈 HashMap,没有它就不会有后面的 ConcurrentHashMap。
  • 04.30 13:53:47
    发表了文章 2022-04-30 13:53:47

    Guava 源码分析(Cache 原理【二阶段】)(下)

    在上文「Guava 源码分析(Cache 原理)」中分析了 Guava Cache 的相关原理。 文末提到了回收机制、移除时间通知等内容,许多朋友也挺感兴趣,这次就这两个内容再来分析分析。 在开始之前先补习下 Java 自带的两个特性,Guava 中都有具体的应用。
  • 04.30 13:51:32
    发表了文章 2022-04-30 13:51:32

    Guava 源码分析(Cache 原理【二阶段】)(上)

    在上文「Guava 源码分析(Cache 原理)」中分析了 Guava Cache 的相关原理。 文末提到了回收机制、移除时间通知等内容,许多朋友也挺感兴趣,这次就这两个内容再来分析分析。 在开始之前先补习下 Java 自带的两个特性,Guava 中都有具体的应用。
  • 04.30 13:49:19
    发表了文章 2022-04-30 13:49:19

    一次线上问题排查所引发的思考

    之前或多或少分享过一些内存模型、对象创建之类的内容,其实大部分人看完都是懵懵懂懂,也不知道这些的实际意义。
  • 04.30 13:44:11
    发表了文章 2022-04-30 13:44:11

    Netty(二) 从线程模型的角度看 Netty 为什么是高性能的?

    在之前的 SpringBoot 整合长连接心跳机制 一文中认识了 Netty。 但其实只是能用,为什么要用 Netty?它有哪些优势?这些其实都不清楚。 本文就来从历史源头说道说道。
  • 04.30 13:40:47
    发表了文章 2022-04-30 13:40:47

    Guava 源码分析(Cache 原理)

    Google 出的 Guava 是 Java 核心增强的库,应用非常广泛。 我平时用的也挺频繁,这次就借助日常使用的 Cache 组件来看看 Google 大牛们是如何设计的。
  • 04.30 01:47:13
    发表了文章 2022-04-30 01:47:13

    分布式工具的一次小升级

    之前在做 秒杀架构实践 时有提到对 distributed-redis-tool 的一次小升级,但是没有细说。 其实主要原因是: 秒杀时我做压测:由于集成了这个限流组件,并发又比较大,所以导致连接、断开 Redis 非常频繁。 最终导致获取不了 Redis connection 的异常。
  • 04.30 01:44:50
    发表了文章 2022-04-30 01:44:50

    Netty(一) SpringBoot 整合长连接心跳机制(下)

    Netty 是一个高性能的 NIO 网络框架,本文基于 SpringBoot 以常见的心跳机制来认识 Netty。
  • 04.30 01:41:50
    发表了文章 2022-04-30 01:41:50

    Netty(一) SpringBoot 整合长连接心跳机制(中)

    Netty 是一个高性能的 NIO 网络框架,本文基于 SpringBoot 以常见的心跳机制来认识 Netty。
  • 04.30 01:39:27
    发表了文章 2022-04-30 01:39:27

    Netty(一) SpringBoot 整合长连接心跳机制(上)

    Netty 是一个高性能的 NIO 网络框架,本文基于 SpringBoot 以常见的心跳机制来认识 Netty。
  • 04.30 01:37:14
    发表了文章 2022-04-30 01:37:14

    秒杀架构实践(下)

    之前在 Java-Interview 中提到过秒杀架构的设计,这次基于其中的理论简单实现了一下。 本次采用循序渐进的方式逐步提高性能达到并发秒杀的效果
  • 04.30 01:34:17
    发表了文章 2022-04-30 01:34:17

    秒杀架构实践(中)

    之前在 Java-Interview 中提到过秒杀架构的设计,这次基于其中的理论简单实现了一下。 本次采用循序渐进的方式逐步提高性能达到并发秒杀的效果
  • 04.30 01:31:09
    发表了文章 2022-04-30 01:31:09

    秒杀架构实践(上)

    之前在 Java-Interview 中提到过秒杀架构的设计,这次基于其中的理论简单实现了一下。 本次采用循序渐进的方式逐步提高性能达到并发秒杀的效果
  • 04.30 01:28:18
    发表了文章 2022-04-30 01:28:18

    分布式限流(下)

    本文接着上文应用限流进行讨论。 之前谈到的限流方案只能针对于单个 JVM 有效,也就是单机应用。而对于现在普遍的分布式应用也得有一个分布式限流的方案。
  • 04.30 01:25:17
    发表了文章 2022-04-30 01:25:17

    分布式限流(中)

    本文接着上文应用限流进行讨论。 之前谈到的限流方案只能针对于单个 JVM 有效,也就是单机应用。而对于现在普遍的分布式应用也得有一个分布式限流的方案。
  • 04.30 01:22:57
    发表了文章 2022-04-30 01:22:57

    分布式限流(上)

    本文接着上文应用限流进行讨论。 之前谈到的限流方案只能针对于单个 JVM 有效,也就是单机应用。而对于现在普遍的分布式应用也得有一个分布式限流的方案。
  • 04.30 01:19:49
    发表了文章 2022-04-30 01:19:49

    动手实现一个 LRU cache(下)

    LRU 是 Least Recently Used 的简写,字面意思则是最近最少使用。 通常用于缓存的淘汰策略实现,由于缓存的内存非常宝贵,所以需要根据某种规则来剔除数据保证内存不被撑满。
  • 04.30 01:09:45
    发表了文章 2022-04-30 01:09:45

    动手实现一个 LRU cache(中)

    LRU 是 Least Recently Used 的简写,字面意思则是最近最少使用。 通常用于缓存的淘汰策略实现,由于缓存的内存非常宝贵,所以需要根据某种规则来剔除数据保证内存不被撑满。
  • 04.30 01:07:42
    发表了文章 2022-04-30 01:07:42

    动手实现一个 LRU cache(上)

    LRU 是 Least Recently Used 的简写,字面意思则是最近最少使用。 通常用于缓存的淘汰策略实现,由于缓存的内存非常宝贵,所以需要根据某种规则来剔除数据保证内存不被撑满。
  • 04.30 01:05:36
    发表了文章 2022-04-30 01:05:36

    基于 Redis 的分布式锁(下)

    分布式锁在分布式应用中应用广泛,想要搞懂一个新事物首先得了解它的由来,这样才能更加的理解甚至可以举一反三。 首先谈到分布式锁自然也就联想到分布式应用。
  • 04.30 01:03:37
    发表了文章 2022-04-30 01:03:37

    基于 Redis 的分布式锁(上)

    分布式锁在分布式应用中应用广泛,想要搞懂一个新事物首先得了解它的由来,这样才能更加的理解甚至可以举一反三。 首先谈到分布式锁自然也就联想到分布式应用。
  • 04.30 00:59:50
    发表了文章 2022-04-30 00:59:50

    Spring Bean 生命周期(下)

    Spring Bean 的生命周期在整个 Spring 中占有很重要的位置,掌握这些可以加深对 Spring 的理解。
  • 04.30 00:58:35
    发表了文章 2022-04-30 00:58:35

    Spring Bean 生命周期(上)

    Spring Bean 的生命周期在整个 Spring 中占有很重要的位置,掌握这些可以加深对 Spring 的理解。
  • 04.30 00:56:25
    发表了文章 2022-04-30 00:56:25

    深入理解线程通信(下)

    开发中不免会遇到需要所有子线程执行完毕通知主线程处理某些逻辑的场景。 或者是线程 A 在执行到某个条件通知线程 B 执行某个操作。
  • 04.30 00:54:39
    发表了文章 2022-04-30 00:54:39

    深入理解线程通信(中)

    开发中不免会遇到需要所有子线程执行完毕通知主线程处理某些逻辑的场景。 或者是线程 A 在执行到某个条件通知线程 B 执行某个操作。
  • 04.30 00:49:56
    发表了文章 2022-04-30 00:49:56

    深入理解线程通信(上)

    开发中不免会遇到需要所有子线程执行完毕通知主线程处理某些逻辑的场景。 或者是线程 A 在执行到某个条件通知线程 B 执行某个操作。
  • 04.30 00:47:40
    发表了文章 2022-04-30 00:47:40

    你应该知道的 volatile 关键字(下)

    不管是在面试还是实际开发中 volatile 都是一个应该掌握的技能。 首先来看看为什么会出现这个关键字。
  • 04.30 00:46:07
    发表了文章 2022-04-30 00:46:07

    你应该知道的 volatile 关键字(上)

    不管是在面试还是实际开发中 volatile 都是一个应该掌握的技能。 首先来看看为什么会出现这个关键字。
  • 04.30 00:44:13
    发表了文章 2022-04-30 00:44:13

    LinkedHashMap 底层分析(下)

    众所周知 HashMap 是一个无序的 Map,因为每次根据 key 的 hashcode 映射到 Entry 数组上,所以遍历出来的顺序并不是写入的顺序。
  • 04.30 00:42:31
    发表了文章 2022-04-30 00:42:31

    LinkedHashMap 底层分析(上)

    众所周知 HashMap 是一个无序的 Map,因为每次根据 key 的 hashcode 映射到 Entry 数组上,所以遍历出来的顺序并不是写入的顺序。
  • 04.30 00:29:28
    发表了文章 2022-04-30 00:29:28

    ReentrantLock 实现原理(下)

    使用 synchronize 来做同步处理时,锁的获取和释放都是隐式的,实现的原理是通过编译后加上不同的机器指令来实现。 而 ReentrantLock 就是一个普通的类,它是基于 AQS(AbstractQueuedSynchronizer)来实现的。 是一个重入锁:一个线程获得了锁之后仍然可以反复的加锁,不会出现自己阻塞自己的情况。 AQS 是 Java 并发包里实现锁、同步的一个重要的基础框架。
  • 04.30 00:27:33
    发表了文章 2022-04-30 00:27:33

    ReentrantLock 实现原理(上)

    使用 synchronize 来做同步处理时,锁的获取和释放都是隐式的,实现的原理是通过编译后加上不同的机器指令来实现。 而 ReentrantLock 就是一个普通的类,它是基于 AQS(AbstractQueuedSynchronizer)来实现的。 是一个重入锁:一个线程获得了锁之后仍然可以反复的加锁,不会出现自己阻塞自己的情况。 AQS 是 Java 并发包里实现锁、同步的一个重要的基础框架。
  • 04.30 00:23:36
    发表了文章 2022-04-30 00:23:36

    对象的创建与内存分配

    当 JVM 收到一个 new 指令时,会检查指令中的参数在常量池是否有这个符号的引用,还会检查该类是否已经被加载过了,如果没有的话则要进行一次类加载。
  • 04.30 00:19:17
    发表了文章 2022-04-30 00:19:17

    Synchronize 关键字原理

    众所周知 Synchronize 关键字是解决并发问题常用解决方案,有以下三种使用方式: 同步普通方法,锁的是当前对象。 同步静态方法,锁的是当前 Class 对象。 同步块,锁的是 {} 中的对象。
  • 04.30 00:13:36
    发表了文章 2022-04-30 00:13:36

    一致 Hash 算法分析

    当我们在做数据库分库分表或者是分布式缓存时,不可避免的都会遇到一个问题: 如何将数据均匀的分散到各个节点中,并且尽量的在加减节点时能使受影响的数据最少。
  • 04.27 20:44:45
    发表了文章 2022-04-27 20:44:45

    sbc(六) Zuul GateWay 网关应用(下)

    看过之前SBC系列的小伙伴应该都可以搭建一个高可用、分布式的微服务了。
  • 04.27 20:43:26
    发表了文章 2022-04-27 20:43:26

    sbc(六) Zuul GateWay 网关应用(中)

    看过之前SBC系列的小伙伴应该都可以搭建一个高可用、分布式的微服务了。
  • 04.27 20:41:16
    发表了文章 2022-04-27 20:41:16

    sbc(六) Zuul GateWay 网关应用(上)

    看过之前SBC系列的小伙伴应该都可以搭建一个高可用、分布式的微服务了。
  • 04.27 20:38:34
    发表了文章 2022-04-27 20:38:34

    【译】你可以用GitHub做的12件 Cool 事情(下)

    【译】你可以用GitHub做的12件 Cool 事情
  • 发表了文章 2022-05-04

    Pulsar 也会重复消费?

  • 发表了文章 2022-05-04

    5分钟学会 gRPC(下)

  • 发表了文章 2022-05-04

    5分钟学会 gRPC(中)

  • 发表了文章 2022-05-04

    5分钟学会 gRPC(上)

  • 发表了文章 2022-05-04

    简单的 for 循环也会踩的坑

  • 发表了文章 2022-05-04

    用 Go 实现一个 LRU cache

  • 发表了文章 2022-05-04

    撸了一个可调试 gRPC 的 GUI 客户端

  • 发表了文章 2022-05-04

    编写一个接口压测工具

  • 发表了文章 2022-05-04

    Go 日常开发常备第三方库和工具(下)

  • 发表了文章 2022-05-04

    Go 日常开发常备第三方库和工具(中)

  • 发表了文章 2022-05-04

    Go 日常开发常备第三方库和工具(上)

  • 发表了文章 2022-05-04

    Go 里的超时控制

  • 发表了文章 2022-05-04

    观察者模式的实际应用

  • 发表了文章 2022-05-04

    []*T *[]T *[]*T 傻傻分不清楚(下)

  • 发表了文章 2022-05-04

    []*T *[]T *[]*T 傻傻分不清楚(上)

  • 发表了文章 2022-05-04

    Go 中的 channel 与 Java BlockingQueue 的本质区别

  • 发表了文章 2022-05-03

    自带的 print 函数居然会报错?(下)

  • 发表了文章 2022-05-03

    自带的 print 函数居然会报错?(上)

  • 发表了文章 2022-05-03

    Pulsar:下一代消息引擎真的这么强吗?

  • 发表了文章 2022-05-03

    利用 GitHub Action 自动发布 Docker

正在加载, 请稍后...
滑动查看更多
正在加载, 请稍后...
暂无更多信息
正在加载, 请稍后...
暂无更多信息