自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(1735)
  • 资源 (17)
  • 收藏
  • 关注

原创 Linux离线安装Nginx

本文详细介绍了在Linux系统上安装Nginx及依赖组件的过程。主要内容包括:1)安装gcc、gcc-c++等基础编译工具;2)依次安装pcre、openssl、zlib等Nginx运行所需的依赖库;3)编译安装Nginx并验证安装结果;4)提供Nginx的启动、停止等基本操作命令;5)针对常见的502错误给出解决方案,包括检查配置、关闭防火墙或开放端口等操作。文章通过具体的命令示例,指导用户完成从环境准备到服务部署的完整流程,适合需要手动安装Nginx的技术人员参考。

2025-11-16 14:37:59 1269

转载 Spring Boot 应用的灰度发布与版本回滚实践

本文探讨Spring Boot应用灰度发布与版本回滚的关键技术和最佳实践。灰度发布通过Nginx/K8s/Spring Cloud等方案实现流量分流,降低新版本风险;回滚则依赖容器化、蓝绿部署等技术确保快速恢复。文章强调数据库兼容性处理和监控工具配套使用的重要性,指出灰度发布和回滚机制是企业级应用稳定运行的必备保障,未来服务网格技术将进一步提升流量治理的智能化水平。

2025-11-16 14:17:31 49

转载 Spring Boot 3 事务回滚 + 重试一体化最佳实践

这篇文章摘要如下: 本文介绍了Spring Boot 3中事务回滚与重试机制的一体化最佳实践。通过@Retryable与@Transactional注解组合,实现遇到失败时自动重试完整事务操作。关键点包括: 核心架构:Retry在外层控制重试逻辑,Transactional在内层确保每次重试都是独立事务 幂等性保障:通过唯一约束、状态机等机制防止重复操作 异常分类:只重试乐观锁冲突等临时性异常 完整实现:包含实体设计、服务层注解配置、恢复方法及测试验证 注意事项:强调方法可见性、自调用限制及恢复方法签名要求

2025-11-16 14:15:00 30

转载 基于 Spring Boot 实现单点登录:从原理到实践

单点登录(SSO)系统实现方案 本文介绍了基于JWT的企业级单点登录系统实现技术。首先解析了SSO的工作原理:用户首次访问应用时被重定向至认证中心,完成验证后生成Token,后续访问其他系统时携带Token实现免登录。 实现方案包含: 使用Spring Security构建认证中心 采用JJWT库实现基于HMAC的JWT生成与验证 设计Token验证接口供应用系统调用 实现登录成功后的重定向逻辑 关键组件包括JWT工具类、安全配置和认证控制器,系统支持Token有效期为1小时,采用BCrypt密码加密确保安

2025-11-16 14:06:52 16

转载 使用MyBatis-Flex框架项目性能提升 50%!

MyBatis-Flex 是一个增强版的 MyBatis 框架,在保留原生灵活性的基础上,通过轻量设计(仅依赖 MyBatis)和独特架构(无 SQL 解析)实现了 5-10 倍于 MyBatis-Plus 的性能提升。它支持多主键、逻辑删除、数据脱敏等高级功能,提供强大的 QueryWrapper 简化复杂查询,并内置多数据源、动态表名等企业级特性。相比 MyBatis-Plus 和 Fluent-Mybatis,MyBatis-Flex 在功能丰富度(如多表查询、SQL审计)、轻量化(无第三方依赖)和免

2025-11-16 14:04:48 41

转载 Spring Boot+ SMS4J:10 分钟搞定多厂商短信,配置即能用

以阿里云短信、腾讯云短信和华为云短信为例,阿里云短信 SDK 在初始化时需要设置 AccessKey ID、AccessKey Secret 以及短信签名等信息,其发送短信的方法参数较为详细,包括接收短信的手机号码、短信模板 Code 和模板参数等;这就意味着开发者在切换短信厂商时,需要花费大量时间去学习和适应新的 SDK,重新编写和调试代码,增加了开发的复杂性和工作量。它的核心优势在于能够融合多种短信厂商的服务 ,将不同厂商复杂的接口和配置进行统一封装,为开发者提供一个简洁、通用的短信发送接口。

2025-11-01 12:37:57 103

转载 SpringBoot接口幂等性方案:4种策略+代码实战,告别重复提交

本文介绍了4种常见的幂等性实现方案:1)Token令牌机制,通过预生成一次性令牌保证请求唯一;2)数据库唯一索引,利用业务唯一键约束防重;3)分布式锁方案,使用Redisson实现并发控制;4)请求摘要方案,通过MD5计算请求体哈希值实现幂等。每种方案都提供了核心思路、实现代码和适用场景说明,Token方案经典可靠,数据库方案成本最低,分布式锁适用于高并发,请求摘要则无需额外交互。开发者可根据业务场景选择合适的幂等方案。

2025-11-01 12:36:45 36

转载 什么是4A架构:业务架构、数据架构、应用架构、技术架构

4A架构是包含业务架构(BA)、数据架构(DA)、应用架构(AA)和技术架构(TA)的标准化框架。它通过分层设计将企业战略转化为可执行方案,避免系统孤岛。BA聚焦业务目标,DA管理数据流转,AA实现功能模块,TA提供技术支撑。4A架构通过纵向穿透和横向协同,实现从战略到技术的全链路打通,具有避免系统孤岛、提升弹性、降低风险等价值。设计流程遵循业务驱动、数据整合、应用实现、技术支撑的步骤,强调先业务后技术、统一语言和持续迭代的治理原则。典型案例如华为"一体四面"架构助力数字化转型。

2025-11-01 12:34:01 116

转载 如何优化 Java 应用的启动速度

Java应用启动慢已成为微服务时代的痛点。文章分析了五大核心原因:类加载过多、JAR包膨胀、反射调用、复杂初始化逻辑和JVM预热,指出这不是语言问题而是架构问题。提供了多维度优化方案:JVM参数调优、Spring Boot配置优化(禁用自动配置、精确组件扫描)、懒加载策略选择(冷数据懒加载/热数据预加载),以及GraalVM原生镜像等终极方案。通过代码示例展示了组合优化策略,实测可降低72%启动时间。最后推荐Arthas等工具进行监控诊断,强调启动优化需要系统性的方法论。

2025-11-01 12:30:16 32

转载 JVM参数配7大场景

JVM参数是启动Java程序时配置的特殊选项,用于控制内存、垃圾回收等行为。配置位置取决于运行环境:IDE开发中可在"VM options"设置;Spring Boot应用在java -jar命令前添加;Tomcat需修改catalina.sh/bat;Docker通过环境变量或Dockerfile配置;Kubernetes在YAML文件中定义;系统服务则写入service文件。常见参数包括-Xms/Xmx设置堆内存、-XX:+UseG1GC指定垃圾回收器等。配置时需结合业务场景,通过监

2025-11-01 12:26:41 45

转载 SpringBoot 3.x 集成 Flowable 7.x:流程设计、部署、启动及完成实战

摘要: Flowable是一个轻量级开源BPM工作流引擎,支持BPMN 2.0标准,提供流程定义、执行和任务管理等功能。本文介绍了Spring Boot3整合Flowable7.1.0的步骤:1)引入依赖并配置MySQL数据源;2)解决线程池问题;3)使用官方设计器创建包含用户任务和结束事件的流程图;4)部署流程并实现查询功能;5)通过代码示例演示如何发起审批流程,包括设置流程变量、发起人ID和业务键等关键操作。整合过程完整展示了从环境搭建到流程执行的开发链路。

2025-11-01 12:22:29 65

原创 kubectl命令速查

摘要:本文整理了高效管理Kubernetes集群的常用kubectl命令,包括查看集群状态、资源管理、应用部署、故障排查等核心场景。重点介绍了资源缩写技巧(如po=pod)、命名空间操作、实时监控(-w)、多种输出格式等实用功能,并提供了10个最常用的基础命令。文章还详细分类了资源查看与管理、应用部署、滚动更新、日志调试等操作命令,帮助用户快速掌握80%日常运维场景所需的关键命令,提升Kubernetes集群管理效率。

2025-11-01 11:57:56 784

转载 asyncTool:实现复杂任务的优雅编排与高效执行

EnableAsync // 开启线程池@Autowired@Bean// 核心线程池大小// 最大线程数// 队列容量// 活跃时间// 线程名字前缀// 拒绝策略。

2025-10-22 21:30:44 64

原创 使用Mybatis Log Free插件打印Mybatis执行的sql

Mybatis Log Free是一款免费的IntelliJ IDEA插件,用于记录MyBatis执行的SQL语句。该插件可以帮助开发者快速排查MyBatis执行时的问题,提高开发效率。,点击后可以看到对应的SQL语句。Tools中可以找到。

2025-10-13 10:10:53 393

转载 SpringBoot+Doris Stream Load 海量数据实时更新方案

此方案完全避免了手动字段映射,通过注解方式自动完成实体到Doris字段的映射,同时保持字段顺序一致性。相比JDBC批量更新,性能可提升20-50倍,特别适合海量数据更新场景。获取实体映射的数据库表工具类TableUtils。注解自动完成实体到Doris字段的映射。接口响应类LoadResponse。

2025-10-12 10:14:30 131

转载 Spring Boot 动态线程池实战方案

该页面每 2 秒刷新一次线程池运行指标,配合 Actuator 提供的数据,能够直观展示系统的运行状态。,并最终展示一个基于 Thymeleaf + Bootstrap 的前端监控界面。// 注意:核心线程数和最大线程数可以通过配置中心或写入到端点中扩展。前端监控界面示例(Thymeleaf + Bootstrap)如何在 Spring Boot 中构建一套。Spring Boot 配置与集成。页面,用于展示线程池的运行指标。Actuator 端点(可选)可调整容量的任务队列。

2025-10-12 10:12:49 68

原创 MySQL字符集引起的锁表、唯一索引重复问题

当需要在不同字符集之间进行转换时(如连接查询中两表字段字符集不同),MySQL 会消耗额外资源进行转换,可能导致事务执行时间变长。事务持有锁的时间延长,会增加与其他事务的锁竞争概率,间接引发锁等待或表级锁升级。传入的参数字符集与字段字符集不一致(如参数是 latin1,字段是 utf8mb4),MySQL 可能无法使用索引,转而进行全表扫描。

2025-10-11 15:53:29 182

原创 idea 中 mapper.xml黄线警告怎么去掉

如果不需要通过 IDEA 查看数据库内容,可以关闭相关的检查提示。) 这两项,取消勾选该项检查规则,即可消除黄色背景提示。

2025-10-11 15:49:38 244

原创 项目大IDAE编译慢

User-local heap size 表示 单独模块或用户进程 的编译内存。

2025-10-11 15:31:20 207

原创 MySQL 大表结构变更操作

大表变更无小事,测试先行,多方案演练。遇到问题,参考官方文档或社区。

2025-10-04 19:02:18 1023

转载 如何实现一个通知系统

如果通知计划需要在未来的某个时刻(例如:每分钟或基于更细粒度的间隔))发送,通知服务将通知发送到调度服务,后者将通知及其预定发送时间存储在基于时间的数据库或允许基于时间高效查询的 NoSQL数据库中。在实际工作中,我们经常会用到通知系统,比如,用户完成在线购买后,需要发送订单确认邮件、支付处理成功的短信以及包裹发货的推送通知。当调用方发出请求后,通知服务(通过API网关/负载均衡器)会接收到通知请求。例如:如果通知需要通过电子邮件、短信和推送发送,通知服务将生成三条消息,每条消息都针对相应的渠道进行定制。

2025-10-02 13:25:26 95

转载 ​JVM 21 如何进行JVM调优,JVM调优参数

以上示例展现了JVM调优的不同方面,包括内存管理、性能优化和资源利用率的提升。每个应用的具体情况都不尽相同,因此在进行JVM调优时,需要根据实际情况进行细致的调整和测试。希望这些示例能够为你掌握JVM调优提供实用的参考。记住,有效的JVM调优策略是基于对应用性能和资源使用的深入了解。持续监控和适时调整,才能确保应用的最佳性能。

2025-10-02 13:23:41 68

转载 图解 JVM 内存模型

在任何一个确定的时刻,一个处理器(对于多核处理器来说是一个内核)只会执行一条线程中的指令,为了线程切换后能恢复到正确的执行位置,虚拟机为每个线程都设计了一个独立的程序计数器,各条线程之间的程序计数器互不影响,独立存储,比如方法 a 入栈后,栈帧中的动态链接会持有对当前方法所属类的常量池的引用,当方法 a 中调用了方法 b(符号引用),就可以通过运行时常量池查找到方法 b 具体的直接引用(方法地址),然后调用执行。每个栈帧都包含一个对当前方法类型的运行时常量池的引用,以支持方法调用过程中的动态链接。

2025-10-02 13:21:57 65

原创 JVM参数速查

虚拟机的运行时数据区中,堆空间无疑是最重要的,除堆空间之外,虚拟机栈/本地方法栈(HotSpot中二合一)、元数据空间、本地内存等区域也有对应的参数,接下来依次列出。默认8次,在G1最后的筛选回收阶段可以回收一段时间,然后暂停回收,恢复系统运行,过一会儿再回收,这样做可以让系统不至于单次停顿时间过长。上述阶段中,将一些JVM通用参数、JVM运行时数据区参数以及部分调试参数进行了简单整理,接下来看看GC相关的一些参数。当然,也可以根据其他维度定义为行为参数、性能调优参数、调试参数这类的。

2025-10-02 13:19:02 867

原创 Tomca使用说明

Tomcat 是一个开源的轻量级 Web 应用服务器,是 Apache 软件基金会的核心项目。它实现了 Java Servlet、JSP 等核心技术,是开发和部署 Java Web 应用程序的首选服务器之一。

2025-10-02 12:53:03 1352

原创 java线上问题排查-线程频繁切换及死锁

线程上下文切换(Context Switch)是 CPU 从一个线程切换到另一个线程时保存和恢复寄存器、内核栈等状态的过程。过多的上下文切换会浪费 CPU 时间,影响系统性能。线程死锁是指两个或多个线程在执行过程中,因为争夺资源而造成一种相互等待的现象,从而使线程无法继续执行。常见场景:线程A持有锁1,等待锁2;线程B持有锁2,等待锁1。

2025-10-02 09:59:32 464

原创 java线上问题排查-内存占用大

Old区持续增长,Full GC后很快又满。元空间持续增长,频繁Full GC。年轻代GC频繁,对象直接进入老年代。直接内存或文件描述符泄漏。堆内存 vs 非堆内存。快速定位Java进程。

2025-10-02 09:56:32 775

原创 Linux常用性能监测工具参数说明

💡 Tip:Linux负载不是百分比,是排队的进程数,值越大表示系统压力越大。,如果长期存在僵尸进程,说明父进程未处理子进程退出。⚠️ RES - SHR ≈ 进程实际占用的物理内存。最常用来在操作系统层面定位线程,例如用。,尤其是高 CPU 或死锁分析时。高 CPU、死锁、线程卡顿排查时,+ 堆栈信息是最直接证据。≈ CPU 实际使用率,(十六进制需转为十进制)。查看 CPU 占用。

2025-10-01 20:48:15 882

原创 linux线上问题-磁盘空间爆满排查与清理

本文详细介绍了Linux系统磁盘空间排查与优化的完整流程。主要内容包括:1)系统化排查步骤,通过诊断流程图和关键命令矩阵指导快速定位空间占用问题;2)日志专项处理和自动化清理脚本示例;3)生产环境安全清理建议;4)特殊场景如已删除文件未释放、LVM扩容的解决方案;5)企业级存储架构优化建议和工具推荐。文章提供了可落地的技术方案,涵盖从基础命令到自动化运维的全套方法,并特别强调了生产环境下的操作安全注意事项。

2025-10-01 20:34:56 934

原创 Arthas & JVM 性能排查

全路径类@静态属性。

2025-10-01 20:27:14 695

原创 阿里开源 Java 诊断神器Arthas

支持 JDK6+,零侵入,通过 Attach 机制连接 JVM,无需重启服务即可定位问题。CLI 支持 Tab 自动补全,并提供 Web Console。

2025-10-01 20:11:02 715

原创 java 线上问题定位工具

显示当前所有java进程pid的命令,我们可以通过这个命令来查看到底启动了几个java进程(因为每一个java程序都会独占一个java虚拟机实例),不过jps有个缺点是只能显示当前用户的进程id,要显示其他用户的还只能用linux的ps命令。执行jps命令,会列出所有正在运行的java进程,其中jps命令也是一个java程序,前面的数字就是对应的进程id,这个id的作用非常大,后面会有相关介绍。主要是对java应用程序的资源和性能进行实时的命令行监控,包括了对heap size和垃圾回收状况的监控。

2025-10-01 20:01:53 563

原创 Java 性能监控与分析工具

在日常线上排查和性能调优中,除了 、、 等命令行工具外,Java 自带和第三方 GUI 工具也非常重要,能更直观地观察 JVM 内存、线程、GC 等状态。说明:每秒采集一次,共 20 次,可快速查看系统内存与 CPU 的实时变化,以及上下文切换次数,帮助判断系统瓶颈。2️⃣ Java 自带 GUI 监控工具JConsole(Java Monitoring and Management Console)作用:基于 JMX(Java Management Extensions),可监控 JVM

2025-10-01 19:56:57 998

原创 Linux 线上问题排查

本文整理了Linux系统监控与性能优化的实用技巧。系统监控部分介绍了CPU、内存、磁盘"三件套"工具(top、vmstat、iostat等)及网络分析命令(ss、iftop);日志分析章节包含基础搜索(grep/sed)与高级统计(awk/jq)方法;性能优化部分给出了JVM参数配置建议和关键指标阈值,并提供综合诊断思路。全文提供大量命令示例和实用建议,帮助开发者快速定位系统瓶颈。

2025-10-01 19:52:56 465

原创 java线上问题排查-占用内存的大对象

步骤命令作用查看进程和资源top/ `ps auxgrep java`查看堆内存分布判断堆大小、新生代、老年代是否异常查看对象分布找出内存占用最大的对象定位问题原因对照对象类型分析例如 JDBC 查询导致大对象,占用堆内存💡Tipsmore或less可分页查看对象列表。排查完成后可结合对heap dump文件进行可视化分析,快速找到内存泄漏来源。

2025-10-01 19:48:18 274

原创 java线上问题排查-OOM内存溢出

如果需要记录,可将命令输出重定向到文件,再用。是 JVM 内存排查的利器,可结合。刷新屏幕时,会清空终端内容,因此适合。,不适合记录历史数据。

2025-10-01 19:43:40 426

原创 JVM参数及问题排查工具

💡 建议使用方法💡 使用建议:💡 最佳实践总结:

2025-10-01 19:31:49 902

原创 java线上问题排查-Java 进程CPU高

本文介绍了排查Java进程高CPU占用的完整流程。首先使用top/ps命令定位问题进程,然后通过top -H或ps -Lfp查看线程详情,找到高负载线程后将其ID转为十六进制。接着使用jstack获取线程堆栈信息,分析dump文件中的线程状态(如死锁、阻塞等)。最后提供了排查流程总结和常用命令,包括strace跟踪进程执行过程。文章还建议多次采样确认问题性质,并推荐使用perf等工具进行深度分析。

2025-10-01 19:18:29 344

原创 Java 线上问题排查与性能调优

本文提供了Java线上问题排查的完整流程和常用运维命令。排查流程图覆盖CPU满载、OOM、GC异常、服务无响应等场景,指导从现象定位到具体分析步骤。配套的命令速查卡包含五大类:基础进程定位、JVM诊断工具、系统资源监控、日志处理技巧和性能调优参数。这些命令组合可实现线程分析、堆内存转储、GC监控、网络连接检查等关键运维操作,帮助开发者快速诊断生产环境问题。特别适合作为团队内部的技术参考文档使用。

2025-10-01 18:49:44 788

原创 Vim核心操作

Vim 是 Linux 环境下强大的文本编辑器,以纯键盘操作实现高效编辑。本指南覆盖文件操作、模式切换、搜索、保存等核心功能,帮助你快速入门。

2025-10-01 17:39:50 473

android环境搭建

下载资源,到搭建环境,到调试,每一步都有图片 傻瓜式操作!

2015-08-14

xutils简介.docx

android 开发

2021-09-18

Waterdrop使用手册

WaterdropManual_T00148x-20-010_2017-04-10.pdf

2021-09-18

GDB完全中文手册.pdf

GDB完全中文手册

2021-09-18

jre1.8.0_221.7z

jre1.8,绿色免安装,解压即用,方便便捷。无需安装。需要jre的童鞋拿走。```````````````````````

2020-09-09

中软安卓培训教程ppt

中软国际国佩教程,经典安卓培训教程,大家好好学习一下

2015-08-14

IBM_JDK_V8.rar

注意不是Oracle的jdk。是IBM_JDK_V8版本JDK。绿色免安装版。解压即用。不常见。特此留存。

2020-09-09

jdk1.7.04.rar

jdk1.7老版本,免费版。解压即用。无需安装。需要的拿走。老项目可能用的到!特在此留存!

2020-09-09

中文与Unicode码转换(十六进制).html

中文与Unicode码转换(十六进制)

2021-09-23

百度日历效果.html

百度日历效果

2021-09-23

会计科目表及说明.docx

会计科目说明

2021-09-18

jdk8u221.7z

免费版本

2020-09-09

Foxmail_7.0.rar

Foxmail_7.0

2021-09-18

sas9.4安装教程.7z

sas9.4安装教程

2021-09-18

ab并发测试及说明.rar

ab并发测试

2021-09-18

银行会计基础知识.ppt

银行会计基础知识

2021-09-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除