游客4ofjsrhbmtioi_个人页

游客4ofjsrhbmtioi
个人头像照片
0
0
0

个人介绍

暂无个人介绍

擅长的技术

获得更多能力
通用技术能力:

暂时未有相关通用技术能力~

云产品技术能力:

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

阿里云技能认证

详细说明
暂无更多信息

2025年12月

  • 12.30 16:44:57
    发表了文章 2025-12-30 16:44:57

    OOM排查之路:一次曲折的线上故障复盘

    本文复盘了线上服务因Paimon与RocksDB集成引发的三次内存溢出(OOM)故障。从线程暴增到堆外内存泄漏,排查历经弯路,最终通过NMT、async-profiler等工具结合JNI调用分析,定位至RocksDB SDK内存未释放问题。团队重构架构,改由Flink写入Paimon,彻底解决隐患。文章系统梳理了排查思路与工具实战,为同类技术栈提供宝贵经验。
  • 12.30 16:43:50
    发表了文章 2025-12-30 16:43:50

    EFC&CTO:缓存引发数据不一致问题排查与深度解析

    EFC客户端更新缓存架构后,CTO测试出现data mismatch。经排查,因分布式缓存版本号回退,导致旧NULL数据被读入pagecache并刷入文件系统,破坏了NAS数据一致性。修复后10轮测试通过。
  • 12.30 16:42:32
    发表了文章 2025-12-30 16:42:32

    从Google线上故障,谈灰度发布的重要性

    2025年6月12日,Google Cloud因未灰度发布的新配置引发空指针异常,导致Gmail、YouTube等服务中断超7小时。故障暴露了缺乏配置灰度与错误处理机制的风险。本文结合Nacos等配置中心的IP/标签灰度方案,探讨如何通过渐进式发布保障系统稳定性,避免全局故障。
  • 12.30 16:40:16
    发表了文章 2025-12-30 16:40:16

    RocketMQ:底层Netty频繁OS OOM

    本文记录了一例Java应用因多ClassLoader加载多个Netty的PooledByteBufAllocator导致堆外内存超限,引发OS OOM的排查过程。尽管MaxDirectMemorySize设为1G,但多个中间件独立占用堆外内存,总量远超限制。通过NMT、Arthas等工具定位到RocketMQ客户端为主要占用者。最终建议短期调小堆内存以腾出空间,并推动中间件优化。
  • 12.30 16:39:14
    发表了文章 2025-12-30 16:39:14

    FastJson:大面积故障规避案例

    本文分享了一次因Kotlin语法误用导致FastJson反序列化全局异常的排查经历。在多语言混编工程中,`{}`被误赋值为Java对象字段,触发FastJson解析Kotlin类时将静态标记`kotlin_error`置为true且无法恢复,最终引发全量反序列化失败。问题隐蔽性强,影响范围大,历时两天定位。反思指出:多语言开发需谨慎、框架有局限、灰度发布至关重要,并强调Bug是成长的阶梯。
  • 12.30 16:37:36
    发表了文章 2025-12-30 16:37:36

    一场FullGC故障排查

    本文记录了线上容器 CPU 使用率达 104% 告警的排查与解决过程。排查初期,因机器内存使用率正常(62%),排除 Full GC、接口高并发等猜测,后发现监控偏差,通过 JVM 监控确认 Full GC 导致 CPU 飙升。经 JProfiler 分析堆内存快照,定位到问题根源:Excel 解析<Map>对象长期占用堆内存,空间效率低,且因任务逻辑长期存在(4-12 小时),易打满老年代触发 Full GC。解决方案分两类:一是激进方案(数据存入 Redis,彻底避免内存占用),二是保守方案(删除无用字段、优化缓存逻辑缩减数据量)。最后总结排查要点,强调 JVM 监控的重要性及大对象排查的
  • 12.30 15:54:31
    发表了文章 2025-12-30 15:54:31

    脱敏工具

    提供身份证、姓名、手机号脱敏的Java实现,通过正则替换隐藏敏感信息:身份证保留前后部分,中间用*代替;姓名仅显示首尾字符;手机号显示前3后4位,中间4位脱敏,保障数据安全。
  • 12.30 15:52:31
    发表了文章 2025-12-30 15:52:31

    随机ID

    提供两个Java方法:一个生成指定长度的随机数字与大小写字母组合字符串,另一个仅生成指定长度的随机数字。适用于需要随机验证码、密码等场景,使用简单,可直接调用。
  • 12.30 15:47:55
    发表了文章 2025-12-30 15:47:55

    超长String接收处理

    Java中字符串变量最大长度可达Integer.MAX_VALUE,但字符串字面量受class文件格式限制,理论最大65535,实际仅支持65534。超长字面量编译报错,需通过StringBuilder分段处理,避免“常量字符串过长”问题。
  • 12.30 15:09:55
    发表了文章 2025-12-30 15:09:55

    Excel读取并数据List/Map-POI

    该工具类基于POI解析.xls格式Excel文件,支持按行读取数据并映射为Java对象。通过反射机制将每行数据转换为VO实例,分别支持全局Map(键值对)和List形式存储结果,适用于固定模板的数据导入场景,需注意列数、顺序与VO字段一致。
  • 12.30 15:06:18
    发表了文章 2025-12-30 15:06:18

    HUTOOL-Word生成-Word07Writer

    Hutool封装POI实现Word(docx)生成,提供Word07Writer类,支持字体、段落添加,便捷创建文档。依赖hutool-all与poi-ooxml,适用于简单Word文件导出场景。
  • 12.30 15:05:24
    发表了文章 2025-12-30 15:05:24

    QLExpress使用及源码分析

    基于QLExpress构建规则引擎:通过注解定义实体与接口,YAML编写业务规则,支持中文别名与动态脚本解析。自动构建AST语法树,结合上下文执行,实现灵活、可扩展的延迟计算与缓存机制,适用于复杂业务逻辑解耦。
  • 12.30 15:04:40
    发表了文章 2025-12-30 15:04:40

    Activiti框架拓展

    Activiti表结构以ACT_开头,分五类:ACT_RE_*存流程定义等静态资源;ACT_RU_*存运行时实例、任务等数据;ACT_HI_*存历史记录;ACT_ID_*管理用户组信息;ACT_GE_*处理通用数据。各表协同支持流程引擎高效运作。
  • 12.30 15:03:54
    发表了文章 2025-12-30 15:03:54

    Activity代码实现

    本教程通过创建BPMN流程、部署定义、启动实例、查询与完成任务,演示Activiti工作流引擎的基本使用。涵盖流程定义部署、任务操作及数据库表变化,帮助快速掌握工作流开发核心步骤。
  • 12.30 15:03:16
    发表了文章 2025-12-30 15:03:16

    Activiti工程搭建

    本文介绍如何在Idea中创建Maven工程并安装Activiti插件,包含插件下载、版本兼容性修复及验证步骤,同时引入SpringBoot、MySQL、MyBatis与Activiti相关依赖,配置数据源与流程引擎,完成基础环境搭建,适用于工作流项目快速开发。
  • 12.30 15:01:13
    发表了文章 2025-12-30 15:01:13

    什么是API网关

    API网关是一种架构思想,用于统一接收外部请求并转发至后端服务,实现协议转换、路由、鉴权、限流、熔断降级等功能。通过网关,可简化客户端调用,提升系统安全性与可维护性。常见实现如Kong、Zuul、Spring Cloud Gateway等,广泛应用于微服务架构中,支持异步处理、全链路监控与多维度流量控制。
  • 12.30 15:00:31
    发表了文章 2025-12-30 15:00:31

    数据同步原理

    Soul 网关通过推拉模式从配置服务同步数据,支持 WebSocket、HTTP 长轮询和 Zookeeper 三种方式。1.x 版本基于 Zookeeper 推送,2.x 版本默认采用 HTTP 长轮询(借鉴 Apollo/Nacos),实现秒级更新。管理后台变更配置后,通过 EventPublisher 发布事件,根据 sync.strategy 策略将变更推送给网关并更新本地缓存。WebSocket 主动推送全量+增量数据;Zookeeper 利用 watch 机制监听节点变化;HTTP 长轮询则通过异步 Servlet + BlockingQueue 实现准实时同步,保障配置一致性。
  • 12.30 14:59:19
    发表了文章 2025-12-30 14:59:19

    Soul数据库设计

    本插件采用数据库设计,存储插件、选择器、规则及其关联关系。核心四表:plugin、selector、rule、condition,体现Soul三大核心:插件、规则、选择器。支持多层级匹配,适用于Dubbo、SpringCloud等协议,灵活配置路由与处理逻辑。(238字)
  • 12.30 14:58:15
    发表了文章 2025-12-30 14:58:15

    Soul网关接入与验证

    本文介绍如何将服务提供者与消费者接入Soul网关,涵盖pom依赖、Controller注解(@SoulSpringMvcClient)、配置文件参数说明(如adminUrl、contextPath、full模式等),并支持HTTP与Dubbo双协议。通过zookeeper注册,结合soul-admin与soul-bootstrap启动,完成服务注册与网关路由验证,附完整代码与测试示例。
  • 12.30 14:56:38
    发表了文章 2025-12-30 14:56:38

    入门运行Soul

    Soul 是基于 WebFlux 的高性能响应式 API 网关,支持 Dubbo、Spring Cloud、Spring Boot,具备跨语言、异步、低延迟(1~2ms)特性。采用插件化设计,支持热插拔、动态流量控制、A/B 测试与蓝绿发布,内置鉴权、限流、熔断等丰富插件,可通过 WebSocket、HTTP 长轮询等方式实现配置实时同步。
  • 12.30 14:54:26
    发表了文章 2025-12-30 14:54:26

    xxljob本地运行

    本文介绍XXL-JOB分布式任务调度平台的部署与使用。包含源码获取、服务端数据库导入(8张核心表)、数据源配置及启动方法。客户端需注册执行器,通过控制台配置调度任务,支持多种路由策略如轮询、随机、故障转移等。最后可测试任务执行并查看日志,实现定时任务的可视化管理。(239字)
  • 12.30 14:52:58
    发表了文章 2025-12-30 14:52:58

    定时任务概述

    定时任务指通过时间表达式调度执行的任务,适用于对账、提醒、订单超时等场景。实现方案包括单体架构的Timer、ScheduledExecutorService、Quartz、SpringTask,及分布式架构下的TBSchedule、Elastic-Job、XXL-JOB等,解决集群重复执行、动态调度、故障转移等问题。
  • 12.30 14:49:19
    发表了文章 2025-12-30 14:49:19

    Watcher机制(三)之ZooKeeper

    本文深入分析ZooKeeper类源码,涵盖其内部类结构、核心属性与构造函数,重点解析创建、删除、查询等同步/异步操作的实现机制,揭示Watcher注册管理及多操作事务处理流程,全面展现客户端与服务端交互原理。
  • 12.30 14:48:12
    发表了文章 2025-12-30 14:48:12

    Watcher机制(二)WatchManager

    本文深入分析ZooKeeper源码中的WatchManager类,重点解析其内部两个核心映射结构:watchTable(路径到Watcher集合)和watch2Paths(Watcher到路径集合)。详细解读addWatch、removeWatcher、triggerWatch等同步方法的实现机制,揭示Watcher注册、删除与事件触发的底层逻辑,展现其在分布式协调中高效的事件管理能力。
  • 12.30 14:47:12
    发表了文章 2025-12-30 14:47:12

    Watcher机制(一)

    本文深入分析ZooKeeper的Watcher机制核心类及源码实现,涵盖Watcher接口、Event枚举(KeeperState与EventType)、WatchedEvent事件通知、ClientWatchManager与ZKWatchManager的监听管理机制,重点解析事件触发与Watcher回调的处理流程。
  • 12.30 14:45:07
    发表了文章 2025-12-30 14:45:07

    持久化FileTxnSnapLog

    FileTxnSnapLog是ZooKeeper中用于管理事务日志和快照的核心类,封装了TxnLog和SnapShot接口。它负责数据持久化与恢复,通过restore方法从快照和事务日志中重建内存数据库DataTree,利用save方法定期生成快照。其内部通过组合模式委托实际读写操作,并借助PlayBackListener回调机制实现事务重放时的数据修正,保障状态一致性。
  • 12.30 14:44:17
    发表了文章 2025-12-30 14:44:17

    持久化FileTxnLog

    本文深入分析Zookeeper持久化机制的源码实现,重点解析`TxnLog`与`FileTxnLog`类。涵盖事务日志结构、append追加、commit提交、truncate截断等核心操作,揭示日志写入、校验、刷盘及文件管理流程,帮助理解Zookeeper数据持久化的底层原理。(238字)
  • 12.30 14:43:20
    发表了文章 2025-12-30 14:43:20

    序列化

    本文深入解析ZooKeeper源码中的序列化机制,重点分析jute包下的InputArchive、OutputArchive、Index和Record四大核心接口及其实现类,涵盖二进制、CSV、XML三种序列化方式,并通过示例演示其使用方法与原理。
  • 12.30 14:41:55
    发表了文章 2025-12-30 14:41:55

    微服务概述

    本文介绍单体与微服务架构区别,阐述微服务定义、特征及优缺点,涵盖技术选型、部署方案与学习路径,帮助理解微服务演进逻辑及其分布式设计精髓,为构建高内聚、低耦合系统提供理论支撑。
  • 12.30 14:41:17
    发表了文章 2025-12-30 14:41:17

    什么是跨域

    CORS需浏览器和服务器共同支持,所有现代浏览器均已兼容(IE≥10)。通信由浏览器自动完成,开发者无需特殊处理。请求分为简单和非简单两类,前者直接发送Origin头,后者需预检。服务器通过响应头如Access-Control-Allow-Origin等控制跨域权限。相比仅支持GET的JSONP,CORS更灵活强大。
  • 12.30 14:40:27
    发表了文章 2025-12-30 14:40:27

    @RefreshScope热更新原理

    @RefreshScope通过组合注解实现配置热更新,核心在于@Scope(&quot;refresh&quot;)。其原理是将Bean加入自定义缓存,配置变更时清空缓存并触发Spring重新创建Bean实例,结合Environment更新,使@Value等属性动态刷新。整个过程依赖代理机制与生命周期重建,实现无需重启的应用配置实时生效。
  • 12.30 14:39:40
    发表了文章 2025-12-30 14:39:40

    Jmeter快速入门

    JMeter安装需先配置JDK环境,下载解压后运行bin目录下的脚本。启动较慢,黑窗口不可关闭。可设置language=zh_CN实现中文界面。使用时需添加线程组、HTTP取样器及监听器(如结果树、汇总报告)来创建和查看测试任务,适用于性能测试快速入门。
  • 12.30 14:38:59
    发表了文章 2025-12-30 14:38:59

    负载均衡算法

    本文介绍负载均衡常用算法:随机、轮询及其加权版本,最小活跃数动态分配请求,源地址哈希确保IP固定路由,一致性哈希提升节点变动时的稳定性。各算法适用于不同场景,如性能均等、权重差异、实时负载或请求粘性需求,助力系统高效稳定运行。(238字)
  • 12.30 14:38:12
    发表了文章 2025-12-30 14:38:12

    什么是RESTful

    RESTful是一种基于资源的API设计规范,通过统一的URI和HTTP动词(GET/POST/PUT/DELETE)实现对资源的操作。它解决了传统接口路径混乱、行为不统一的问题,提升接口的可读性、可维护性和扩展性,使前后端协作更高效,系统架构更清晰。
  • 12.30 14:37:31
    发表了文章 2025-12-30 14:37:31

    数据库设计三范式

    数据库三范式是设计表结构的指导原则:第一范式要求字段原子性,不可再分;第二范式要求消除部分依赖,一张表只描述一件事;第三范式要求消除传递依赖。虽有助于减少数据冗余和更新异常,但实际应用中需结合业务权衡,不必严格遵循。
  • 12.30 14:35:26
    发表了文章 2025-12-30 14:35:26

    了解SQL注入

    SQL注入是一种通过恶意构造输入数据篡改数据库查询的攻击方式,可导致身份绕过、数据泄露、篡改甚至系统命令执行。其根源在于应用对用户输入验证不足,动态拼接SQL语句。OWASP将其列为头号Web安全威胁。防御需结合输入验证、参数化查询及IPS等多层机制,确保数据与代码分离,阻断攻击路径。
  • 12.30 14:33:57
    发表了文章 2025-12-30 14:33:57

    常见注解及使用说明

    本文介绍SpringMVC中@RequestMapping注解的作用及原理,通过注解将HTTP请求映射到控制器方法,实现前后端接口路径对应。并简述@GetMapping等派生注解的使用,帮助快速掌握接口定义方式。
  • 12.30 14:33:18
    发表了文章 2025-12-30 14:33:18

    自定义注解

    本文介绍如何在Spring项目中实现自定义注解,结合AOP与过滤器用于日志、权限控制等场景。通过@Target、@Retention等元注解定义注解,利用AOP拦截方法执行,或通过过滤器实现登录验证,提升代码可读性与复用性。
  • 12.30 14:32:37
    发表了文章 2025-12-30 14:32:37

    OAuth2.0实战案例

    本项目基于Spring Boot与Spring Cloud构建,实现OAuth2四种授权模式。通过父工程统一版本管理,分别搭建资源服务与授权服务模块,集成MyBatis与MySQL实现用户及客户端信息持久化,完成认证授权全流程。
  • 12.30 14:31:39
    发表了文章 2025-12-30 14:31:39

    认识OAuth2.0

    OAuth2.0是开放授权标准,允许第三方应用在用户授权下安全访问资源,无需获取用户账号密码。包含授权码、简化、密码和客户端四种模式,广泛用于服务间资源调用与单点登录场景。
  • 12.30 14:30:58
    发表了文章 2025-12-30 14:30:58

    RememberMe简介及用法

    RememberMe是一种保持用户登录状态的机制,非简单存储账号密码。通过Cookie保存令牌,用户关闭浏览器后仍可自动登录。服务端校验令牌有效性,实现免密续登。但存在令牌泄露风险,可通过持久化Token至数据库并增加二次验证提升安全性。
  • 12.30 14:30:14
    发表了文章 2025-12-30 14:30:14

    认证源码分析与自定义后端认证逻辑

    本文深入分析Spring Security认证流程,从UsernamePasswordAuthenticationFilter到AuthenticationManager,层层剖析认证机制。详解AbstractUserDetailsAuthenticationProvider与UserDetails的实现要点,强调权限信息的必要性,并通过自定义UserDetailService完成数据库认证逻辑。最后结合SecurityConfig配置,实现登录流程定制,完整代码见GitHub仓库Day02分支。
  • 12.30 14:29:26
    发表了文章 2025-12-30 14:29:26

    自定义认证前端页面

    本文介绍Spring Security基础配置:通过前端页面与后端接口联动,实现登录认证。后端新增接口与安全配置类,配置表单登录、权限控制及跳转逻辑,禁用CSRF,启动后访问指定路径自动跳转登录页,输入信息后成功获取响应内容,完成安全验证流程。(238字)
  • 12.30 14:28:48
    发表了文章 2025-12-30 14:28:48

    过滤器链加载原理

    通过前文十五个过滤器的解析,我们揭开了Spring Security的神秘面纱。虽未显式配置,但这些过滤器由DelegatingFilterProxy通过名称springSecurityFilterChain自动加载,最终指向FilterChainProxy,并封装于DefaultSecurityFilterChain中执行。底层原理明晰后,方可更好实现自定义认证页面。
  • 12.30 14:28:08
    发表了文章 2025-12-30 14:28:08

    常用过滤器介绍

    Spring Security通过过滤器链实现安全控制,涵盖认证、授权、CSRF防护等。如SecurityContextPersistenceFilter管理上下文,UsernamePasswordAuthenticationFilter处理登录,LogoutFilter处理退出。各过滤器分工明确,按需加载,构成灵活的安全体系。(238字)
  • 发表了文章 2025-12-31

    OOM排查之路:一次曲折的线上故障复盘

  • 发表了文章 2025-12-31

    EFC&CTO:缓存引发数据不一致问题排查与深度解析

  • 发表了文章 2025-12-31

    从Google线上故障,谈灰度发布的重要性

  • 发表了文章 2025-12-31

    RocketMQ:底层Netty频繁OS OOM

  • 发表了文章 2025-12-31

    一场FullGC故障排查

  • 发表了文章 2025-12-31

    FastJson:大面积故障规避案例

  • 发表了文章 2025-12-31

    脱敏工具

  • 发表了文章 2025-12-31

    超长String接收处理

  • 发表了文章 2025-12-31

    随机ID

  • 发表了文章 2025-12-31

    Excel读取并数据List/Map-POI

  • 发表了文章 2025-12-31

    HUTOOL-Word生成-Word07Writer

  • 发表了文章 2025-12-31

    QLExpress使用及源码分析

  • 发表了文章 2025-12-31

    xxljob本地运行

  • 发表了文章 2025-12-31

    入门运行Soul

  • 发表了文章 2025-12-31

    Watcher机制(三)之ZooKeeper

  • 发表了文章 2025-12-31

    持久化FileTxnLog

  • 发表了文章 2025-12-31

    持久化FileTxnSnapLog

  • 发表了文章 2025-12-31

    Watcher机制(一)

  • 发表了文章 2025-12-31

    序列化

  • 发表了文章 2025-12-31

    什么是跨域

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