橡 皮 人
码龄6年
求更新 关注
提问 私信
  • 博客:417,674
    动态:16
    417,690
    总访问量
  • 113
    原创
  • 1,414
    粉丝
  • 16
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
加入CSDN时间: 2019-07-21

个人简介:代码传递思想,技术创造回响。

博客简介:

让~学习~成为一种习惯(橡 皮 人の技术博客)

博客描述:
未来的你,一定会感谢现在努力拼搏的自己!
查看详细资料
个人成就
  • 获得2,120次点赞
  • 内容获得164次评论
  • 获得4,159次收藏
  • 代码片获得17,631次分享
  • 博客总排名84,175名
  • 原力等级
    原力等级
    6
    原力分
    2,494
    本月获得
    10
创作历程
  • 12篇
    2025年
  • 42篇
    2024年
  • 59篇
    2023年
成就勋章
TA的专栏
  • RocketMQ
    11篇
  • Java并发编程
    16篇
  • Java 8~Java 24新特性总结
    13篇
  • Redis
    29篇
  • Java集合
    12篇
  • 分布式
    5篇
  • Mysql
    1篇
  • 设计模式
    25篇
  • 日常bug
    3篇
  • idea
    1篇
  • 其它
    1篇
  • Spring-Boot
    1篇
  • Java好用的工具
    1篇
  • ChatGPT实战
    1篇

TA关注的专栏 1

TA关注的收藏夹 0

TA关注的社区 2

TA参与的活动 2

兴趣领域 设置
  • Java
    javatomcatspringmavenkafkaspring bootspring cloudjvmmybatisniodubbosentineljava-zookeeperjava-rabbitmqjava-rocketmqguava
创作活动更多

AI 镜像开发实战征文活动

随着人工智能技术的飞速发展,AI 镜像开发逐渐成为技术领域的热点之一。Stable Diffusion 3.5 FP8 作为强大的文生图模型,为开发者提供了更高效的图像生成解决方案。为了推动 AI 镜像开发技术的交流与创新,我们特此发起本次征文活动,诚邀广大开发者分享在 Stable Diffusion 3.5 FP8 文生图方向的实战经验和创新应用 本次征文活动鼓励开发者围绕 Stable Diffusion 3.5 FP8 文生图方向,分享以下方面的内容: 1. 技术实践与优化 - Stable Diffusion 3.5 FP8 模型架构解析与优化技巧 - 文生图生成效果的提升方法与技巧 - 模型部署与加速策略,例如使用 Hugging Face、Diffusers 等工具 - 针对特定场景(例如二次元、写实风)的模型微调与定制化开发 2. 应用场景探索 - Stable Diffusion 3.5 FP8 在不同领域的应用案例分享,例如游戏设计、广告创意、艺术创作等 - 利用 Stable Diffusion 3.5 FP8 实现图像编辑、图像修复、图像增强等功能的探索 - 结合其他 AI 技术(例如 NLP、语音识别)构建更强大的应用 3. 创新应用与思考 - 基于 Stable Diffusion 3.5 FP8 的创新应用场景设计 - AI 镜像开发的未来发展方向的思考与展望 - 对 AI 镜像开发伦理、安全等问题的探讨

37人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

RocketMQ第11讲——订阅关系一致性

consumer-1不要Tag-2的消息,于是队列1、2中所有Tag-2的消息就被过滤,也就是被丢掉了,同样consumer-2不要Tag-1的消息,那么队列3、4中所有Tag-1的消息也被丢掉了,这就造成了消息丢失的问题。生产环境基本都是由多个consumer组成消费者组来消费的,那么对于不了解订阅关系的同学,在使用上很容易出现错误,在RocketMQ中,订阅关系是按照消费者组+Topic+tag粒度设计的,也就是一个订阅关系=某消费者组+某Topic+某tag。
原创
博文更新于 2025.05.08 ·
991 阅读 ·
10 点赞 ·
1 评论 ·
29 收藏

RocketMQ第10讲——消息过滤原理

它的原理本质上和Tag过滤一样,不过因为ConsumeQueue消息的结构中没有Property,所以SQL属性过滤需要从commitlog里面获取消息,再解析其中的属性,最后再做SQL匹配,不匹配的消息就过滤掉,不过它没有哈希碰撞的问题,消费者也不会对其进行二次校验。我们知道消费者订阅到某个Topic后,就能从Broker这边拉取对应的消息消费,但是消费者可能只对这个Topic下的部分消息感兴趣,这时候就需要对Topic下的消息进行再次过滤了,那么RocketMQ是如何做的呢?但是哈希碰撞怎么办?
原创
博文更新于 2025.04.16 ·
862 阅读 ·
29 点赞 ·
1 评论 ·
21 收藏

RocketMQ第9讲——顺序消息实现原理

前面两篇我们介绍了RocketMQ的延迟消息和事务消息实现原理,今天我们就介绍最后一个高级消息类型——顺序消息。之前在RocketMQ第4讲——生产者一篇中大致聊了一些顺序消息的相关东西,这篇就从发送、存储和消费阶段具体介绍下。
原创
博文更新于 2025.04.10 ·
1210 阅读 ·
24 点赞 ·
0 评论 ·
20 收藏

RocketMQ第8讲——事务消息实现原理

在发送事务消息时,首先会向Broker发送一条“half消息”(即半消息),此时的半消息还不能被消费者消费到,接下来,在半消息发送成功后,应用程序通过本地事务的执行情况来确定是否要提交该事务消息,如果本地事务执行成功,那么就会通知Broker提交,这时消费者就能消费到这条消息了;回滚事务消息:如果本地事务执行失败,程序会通知Broker回滚该事务消息,状态由“prepared”改为“rollback”,并将该消息删除,从而保证不被消费者消费到。如果执行成功,则通知Broker提交该事务消息。
原创
博文更新于 2025.04.03 ·
1978 阅读 ·
41 点赞 ·
0 评论 ·
38 收藏

RocketMQ第7讲——延迟消息实现原理

上面我们讲过,RocketMQ 4.x发送延迟消息的时候,会先把消息暂存到一个中间队列,然后扫描是否到期,到期后才会被投递到真正的Topic中,这个方案的局限性就是每个队列的延迟时间必须是相同的。假如支持任意消息也用队列的方式存的话,如果队头的消息延迟时间比较长,就会阻塞住后面的消息投递,久而久之延迟队列长度就会越来越大。Broker接收延迟消息,他需要控制没到时间的消息不会被消费者消费到,但是消息的量级可能很大(十万、百万、千万),一条消息对应一个”闹钟“的管理机制,神仙来了也扛不住。
原创
博文更新于 2025.03.28 ·
2447 阅读 ·
45 点赞 ·
3 评论 ·
32 收藏

RocketMQ第6讲——动态路由中心(NameServ)

在第一篇文章中提到过一个“nameServ“的东西,这里我们再把架构图粘过来:它也是RocketMQ的核心组件之一,从上图我们不难理解,生产者和消费者要通过nameServ才能直到Broker的位置,这个组件全称叫nameServer,即命名服务。那么它和Broker、Producerr和Consumer之间是什么关系呢?
原创
博文更新于 2025.03.27 ·
1070 阅读 ·
9 点赞 ·
0 评论 ·
19 收藏

Java并发编程第5讲——volatile关键字(万字详解)

本篇文章从volatile的定义谈起,由于volatile与Java内存模型有较多的关联,所以接着介绍Java内存模型的相关概念、线程、主内存和工作内存之间的关系以及内存间的交互规则;随后详细介绍了volatile和synchronized在Java并发编程的三大特性——原子性、可见性和有序性中的表现(重点介绍volatile)。最后介绍了一下“重排序”、“内存屏障”和“先行发生原则(happens-before)”等重要概念。
原创
博文更新于 2025.03.20 ·
4981 阅读 ·
37 点赞 ·
9 评论 ·
139 收藏

Java新特性学习导航(8~24 持续更新)

Java现在发布版本很快,每年两个——分别在每年的3月份和9月份,但真正会被大规模使用的是LTS版本,并且每个LTS版本官方都会给予至少四年的支持维护,下面是Oracle官方给出的Oracle JDK支持的时间线:ps:自Java 9(2018年)之后,每年两个新特性版本;自Java 17(2021年)之后,每两年发布一个LTS版本。
原创
博文更新于 2025.03.20 ·
1402 阅读 ·
30 点赞 ·
0 评论 ·
26 收藏

Java 24新特性概述

Java 24于2025年3月18日正式发布,这是一个非LTS版本,Java 24正好24个JEP,是继Java 11(18个JEP)之后的新纪录,乍一看挺多,但对于大多数程序员来说,在日常编程中并不会直观地感到有特别大的变化,下面我们一起来看看
原创
博文更新于 2025.03.20 ·
1633 阅读 ·
22 点赞 ·
0 评论 ·
17 收藏

Java 23新特性概述

近段时间有点事,已经有一个多月没更新了,不过事已经处理完毕了,从今天开始还是每周更新至少一篇,这次就介绍Java 23(目前最新)
原创
博文更新于 2025.03.20 ·
1664 阅读 ·
9 点赞 ·
0 评论 ·
15 收藏

Java 10&Java 11(LTS版本)新特性概述

Java 7发布于2011年7月份,Java 8发布于2014年3月,而Java 9发布于2017年9月份,可以看到java 9之前版本发布的节奏慢且不规律,Java要想在众多语言中保持竞争力,必须要做出改变。Java 11发布于2018年9月25日,这是继Java 8之后首个LTS版本,还将作为Java平台的默认支持版本,但是从Java 11开始,oracle jdk商业用途开始收费,当然个人用的话还是免费的。每季度(1、4、7、10月份)发布一次更新,确保系统保持最新状态(修复漏洞等)。
原创
博文更新于 2025.03.20 ·
1618 阅读 ·
7 点赞 ·
0 评论 ·
12 收藏

Java 22新特性概述

不过这个API近几年来一直遭受批评,原因就是功能太少了,除了现有的filter、map、flatMap、mapMulti、distinct、sorted、peak、limit、skip、takeWhile和dropWhile之外,Java社区还希望看到window和fold等方法。那么Java 22就来了,但是JDK开发人员没有将这些方法集成到JDK中,而是重新开发了一个API,允许开发人员编写任何中间流操作,这个API被称为“Stream Gatherers”,作为预览功能在Java 22中发布。
原创
博文更新于 2025.03.20 ·
1761 阅读 ·
51 点赞 ·
1 评论 ·
45 收藏

Java 21新特性概述

Java 21于2023年9月19日发布,这是一个LTS(长期支持)版本,到此为止,目前有Java 8、Java 11、Java 17和Java 21这四个LTS版本。
原创
博文更新于 2025.03.20 ·
3461 阅读 ·
13 点赞 ·
0 评论 ·
15 收藏

Java 20新特性概述

子任务在各自的线程中执行,通过分别分叉(fork)它们,然后作为一个整体进行合并(join),并且可能作为一个整体进行取消。StructuredTaskScope 将子任务或分叉的生命周期限制在一个明确的词法范围内,在这个范围内,任务与其子任务的所有交互——包括分叉、合并、取消、处理错误和结果组合——都发生在此范围内。作用域中的任何分叉或作用域的所有者都可以调用作用域的 shutdown() 方法来请求取消所有剩余的子任务。该特性会在Java 21进行首次预览,具体内容可参考Java 21对该特性的介绍。
原创
博文更新于 2025.03.20 ·
1497 阅读 ·
8 点赞 ·
0 评论 ·
25 收藏

Java 18&Java 19新特性概述

通过高效调用外部函数(即 JVM 外部的代码)和安全访问外部内存(即不受 JVM 管理的内存),API 使 Java 程序能够调用本机库并处理本机数据,而不会出现 JNI 的脆弱性和危险性。前面也提到过,在没有外部函数和内存API之前,开发人员如果想要操作堆外内存,通常的做法就是使用ByteBuffer、Unsafe或JNI等方式,但无论哪种方式都无法有效解决安全性和高效性等2个问题,并且堆外内存的释放也是一个头疼的问题。End:希望对大家有所帮助,如果有纰漏或者更好的想法,请您一定不要吝啬你的赐教🙋。
原创
博文更新于 2025.03.20 ·
2497 阅读 ·
32 点赞 ·
0 评论 ·
47 收藏

Java 16&Java 17(LTS版本)新特性概述

发布于2021年3月16日。
原创
博文更新于 2025.03.20 ·
1883 阅读 ·
11 点赞 ·
0 评论 ·
12 收藏

Java 14&Java 15新特性概述

发布于2020年3月17日。
原创
博文更新于 2025.03.20 ·
1393 阅读 ·
30 点赞 ·
0 评论 ·
18 收藏

Java 12&Java 13新特性概述

发布于2019年3月19日。String类新增API。Files类新增API。NumberFormat类新增大数格式化方法。Collectors类新增API。
原创
博文更新于 2025.03.20 ·
926 阅读 ·
8 点赞 ·
0 评论 ·
17 收藏

Java 9新特性概述

Java 9发布于2017年9月22日,其中最大的特性毫无疑问就是模块化,除此之外,还对String、集合、Stream、Optional、CompletableFuture等类的API做了增强,还有一些不太重要或开发者不太需要关注的特性本节就一笔带过了。
原创
博文更新于 2025.03.20 ·
1467 阅读 ·
8 点赞 ·
0 评论 ·
10 收藏

Java 8(LTS版本)新特性概述

Java 8(LTS)是Java历史上一个重大的版本更新,发布于2014年3月18日,有Lambad表达式、Stream、Optional、新的日期API等十种新特性。ps:重要的特性会尽量细讲,不重要的简单概括。
原创
博文更新于 2025.03.20 ·
1608 阅读 ·
26 点赞 ·
0 评论 ·
18 收藏
加载更多