良枫
码龄18年
关注
提问 私信
  • 博客:282,287
    社区:3,748
    问答:394
    286,429
    总访问量
  • 40
    原创
  • 26,161
    排名
  • 5,166
    粉丝
  • 74
    铁粉

个人简介:AIGC、AI绘画 and Java后台开发

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:山东省
  • 加入CSDN时间: 2007-11-15
博客简介:

自己选择的路,跪着也要走完

查看详细资料
  • 原力等级
    当前等级
    5
    当前总分
    1,216
    当月
    0
个人成就
  • 获得201次点赞
  • 内容获得43次评论
  • 获得546次收藏
  • 代码片获得2,132次分享
  • 博客总排名26,161名
创作历程
  • 9篇
    2025年
  • 4篇
    2024年
  • 21篇
    2023年
  • 2篇
    2021年
  • 4篇
    2020年
成就勋章
TA的专栏
  • Java面试
    11篇
  • Java实战
    3篇
  • AI绘画
    4篇
  • 笔记
    4篇
TA的推广
兴趣领域 设置
  • Java
    java
  • AIGC
    AI作画stable diffusionchatgptAIGC文心一言midjourneyAI写作
创作活动更多

『技术文档』写作方法征文挑战赛

在技术的浩瀚海洋中,一份优秀的技术文档宛如精准的航海图。它是知识传承的载体,是团队协作的桥梁,更是产品成功的幕后英雄。然而,打造这样一份出色的技术文档并非易事。你是否在为如何清晰阐释复杂技术而苦恼?是否纠结于文档结构与内容的完美融合?无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

55人参与 去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

RocketMQ 的事务消息是如何实现的

事务消息用于确保跨服务的操作要么全部成功,要么全部失败,解决数据不一致问题。以电商平台为例,用户下单支付时,需同时完成扣减库存和通知物流系统发货两个操作。若不同步,可能导致库存扣减但物流未收到通知,或物流收到通知但库存未扣减。事务消息通过两阶段提交实现:第一阶段,生产者发送半消息到RocketMQ,Broker确认后生产者执行本地事务并记录结果;第二阶段,生产者根据本地事务结果通知Broker提交或回滚消息。若生产者宕机,Broker会主动回查未确认的消息,确保事务一致性。
原创
发布博客 2025.05.20 ·
162 阅读 ·
2 点赞 ·
0 评论 ·
5 收藏

RocketMQ 顺序消息实现原理详解

RocketMQ的顺序消息实现原理主要涉及生产者发送、Broker存储和消费者消费三个环节,分为全局有序和分区有序两种模式。全局有序要求所有消息严格按FIFO顺序处理,适用于低并发场景;分区有序则保证同一业务分组的消息顺序,不同分组可并行处理,是生产环境的主流方案。关键技术包括生产者的同步发送和队列选择器、Broker的顺序存储和锁机制、消费者的顺序监听器和重试策略。典型应用场景包括订单流程、库存扣减和事件溯源。注意事项包括性能权衡、异常处理和动态扩容。通过这些机制,RocketMQ在分布式环境下高效实现了
原创
发布博客 2025.05.20 ·
417 阅读 ·
7 点赞 ·
0 评论 ·
9 收藏

RocketMQ消息拉取模式详解

RocketMQ提供了两种消息拉取模式:Pull模式和Push模式。Pull模式由消费者主动向Broker请求消息,适合需要精确控制消费节奏的场景,但实现复杂且需自行管理消费位点。Push模式基于Pull模式封装,对用户表现为推送体验,使用简单且实时性好,但消费速率由RocketMQ控制。Pull模式的核心实现包括位点管理、队列遍历和状态处理,而Push模式则通过长轮询机制、负载均衡和流控参数来优化消费。最佳实践建议常规场景使用Push模式,特殊需求使用Pull模式,并注意性能调优和容错处理。
原创
发布博客 2025.05.20 ·
353 阅读 ·
5 点赞 ·
0 评论 ·
9 收藏

Spring Security认证授权深度解析

SecurityContextHolder:存储安全上下文信息Authentication:存储当前用户的认证信息UserDetails:用户信息的核心接口UserDetailsService:加载用户信息的核心接口AuthenticationProvider:认证的具体实现者
原创
发布博客 2025.04.02 ·
375 阅读 ·
3 点赞 ·
0 评论 ·
4 收藏

MySQL事务隔离级别:一个有趣的江湖故事

这位小侠虽然只认可已经确定的事情,但是优柔寡断,看来看去总是变要么果断一点,看到就决定要么霸道一点,直接锁定不让改实在不行,就升级成大侠,一次看定终身!这位大侠虽然保证了看到的东西不会变,但有时会遇到"鬼影"(新插入的数据)。要么用火眼金睛(加锁)要么一气呵成(快速处理)要么练绝世武功(升级隔离级别)
原创
发布博客 2025.01.22 ·
480 阅读 ·
9 点赞 ·
0 评论 ·
3 收藏

MySQL事务隔离:REPEATABLE READ 与幻读

1、REPEATABLE READ 的一致性视图主要保护的是快照读操作2、当涉及到当前读操作时,仍可能遇到幻读问题3、MySQL通过间隙锁部分解决幻读,但会影响并发性能4、在实际应用中,需要根据具体业务场景选择合适的处理方式。
原创
发布博客 2025.01.22 ·
407 阅读 ·
4 点赞 ·
0 评论 ·
10 收藏

Docker部署MySQL 5.7:持久化数据的实战技巧

在生产环境中使用Docker启动MySQL 5.7时,需要考虑数据持久化、配置文件管理、安全性等多个方面。以下是一个详细的步骤指南。
原创
发布博客 2025.01.17 ·
794 阅读 ·
8 点赞 ·
0 评论 ·
7 收藏

Docker 镜像加速的配置

解决拉取镜像报错:Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while
原创
发布博客 2025.01.17 ·
531 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

docker安装运行状态检查

查看已安装的软件包、检查docker服务状态、查看Docker版本
原创
发布博客 2025.01.17 ·
596 阅读 ·
5 点赞 ·
0 评论 ·
9 收藏

macOS 安装redis

安装Redis在macOS上通常通过Homebrew进行,Homebrew是macOS上一个流行的包管理器。Redis的配置文件通常位于/usr/local/etc/redis.conf,可以根据需要进行自定义配置。如果Redis正在运行,会返回 PONG。一 使用Homebrew安装Redis。
原创
发布博客 2024.06.29 ·
502 阅读 ·
3 点赞 ·
0 评论 ·
0 收藏

centos 安装 nacos

【代码】centos 安装 nacos。
原创
发布博客 2024.03.29 ·
258 阅读 ·
3 点赞 ·
0 评论 ·
0 收藏

centos 安装 rocketmq

配置环境变量、启动NameServer、启动Broker、测试消息是否发送成功
原创
发布博客 2024.03.29 ·
505 阅读 ·
2 点赞 ·
0 评论 ·
2 收藏

Centos JDK1.8 下载安装

tar -zxvf jdk-版本号-linux-架构.tar.gz。二 tar.gz 包手动安装。
原创
发布博客 2024.03.29 ·
630 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Mac编译dubbo失败找不到tools:jar

Mac编译dubbo失败找不到tools:jar
原创
发布博客 2023.12.02 ·
906 阅读 ·
17 点赞 ·
1 评论 ·
10 收藏

【Java实战】Mybatis plus根据数据库表自动生成代码

首先生成一个maven项目,不会生成的参考(写的过程中遇到过的问题:mybatis-plus 生成controller中的代码, RequestMapping除了双斜杠问题@RequestMapping("//article")。解决方法: pc.setModuleName(null) )
原创
发布博客 2023.10.18 ·
984 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

【Java实战】创建第一个Springboot项目Hello world

没有旗舰版的Idea授权,所以安装了社区版的idea。不知道从何时开始,社区版IDEA的插件不好用了,所以就换了个方法生成Springboot项目。
原创
发布博客 2023.10.17 ·
499 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

【Java实战】Mysql读写分离主从复制搭建保姆级教程

MySQL 的数据同步通常采用主从复制(Master-Slave)的方式。主从复制基于二进制日志(binlog)。主服务器(Master)在 binlog 中记录数据更改,从服务器(Slave)将这些日志读取并应用到自己的数据库,以此实现数据的同步。从服务器有两个线程:IO线程从主服务器读取 binlog 并保存在本地的中继日志(relay log);SQL线程读取中继日志,执行其中的事件,确保从服务器数据与主服务器保持一致。
原创
发布博客 2023.10.17 ·
375 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

MySQL常见数据类型、特点以及使用场景

INT:4字节,范围从-2,147,483,648到2,147,483,647(有符号),0到4,294,967,295(无符号)。​VARCHAR:可变长度字符串,占用的字节数根据存储的数据长度而变化,最多65,535字节。SMALLINT:2字节,范围从-32,768到32,767(有符号),0到65,535(无符号)。用于中等大小的整数。TINYINT:1字节,范围从-128到127(有符号),0到255(无符号)。BIGINT:8字节,范围更大,适用于非常大的整数,如用户ID或订单号。
原创
发布博客 2023.09.27 ·
601 阅读 ·
0 点赞 ·
1 评论 ·
3 收藏

MySQL索引优化策略

通常,应在搜索条件(WHERE子句)、连接条件(JOIN 子句)以及需要排序的字段(ORDER BY子句)上创建索引。覆盖索引:当所有要检索的列都包含在索引中时,查询可以只利用索引来完成,而无需额外访问数据表。使用函数,如 UPPER(column),会使索引失效,因为它修改了列的原始值。注意复合索引的列顺序,尤其是当某些列只用于过滤,而其他列用于排序或连接时。试图设计查询和索引,使得查询可以只使用索引,避免访问实际的数据行。高选择性的列(即包含许多唯一值的列)是创建索引的好候选者。
原创
发布博客 2023.09.26 ·
193 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

MySQL索引失效场景,索引优化,索引原理

不必搜索整个数据库,通过使用索引,数据库系统可以直接找到存储在磁盘上的特定行的地址。索引失效指的是在进行数据库查询时,虽然存在合适的索引,但由于某种原因,查询并没有使用该索引,从而可能导致性能下降。与普通索引类似,但要求索引列的所有值都是唯一的(不包括NULL值,因为在MySQL中,多个NULL值是被视为相互不同的)。InnoDB存储引擎的表中,数据的物理存储顺序与主键的顺序相同,也即主键索引是聚簇索引。文章主要有以下内容:MySQL性能优化、索引优化、索引失效,索引原理、索引分类。使用R-Tree算法。
原创
发布博客 2023.09.25 ·
202 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多