自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 Redis 常用数据结构及其对应的业务场景(总结)

redis常用数据结构及其对应的业务场景

2025-03-26 21:43:44 541

原创 PRC框架(以Dubbo为例),分布式事务解决方案

Seata(Simple Extensible Autonomous Transaction Architecture)是阿里开源的分布式事务解决方案,支持AT、TCC、SAGA和XA模式。:支持Random、RoundRobin、LeastActive等多种策略。Try: 创建订单(状态:处理中) → 冻结库存 → 冻结金额。:支持Hessian、JSON、Java原生序列化等。:默认使用Dubbo协议,也支持HTTP、RMI等。:支持服务降级、动态配置、服务分组等。

2025-03-24 22:01:51 631

原创 如何解决微服务调用链性能问题(优化 JVM 配置,降低 Full GC 频率)

在微服务架构中,服务之间的调用链较长,且频繁的远程调用可能导致性能瓶颈。同时,JVM 的 Full GC(Full Garbage Collection)频繁发生会导致应用暂停时间过长,影响用户体验。具体问题表现为:微服务调用链响应时间较长。JVM 堆内存使用不合理,Full GC 频率高(如每小时多次 Full GC)。系统吞吐量下降,用户体验不佳。使用分布式追踪工具:通过集成 SkyWalking 或 Zipkin 对微服务调用链进行监控,分析调用链中每个环节的耗时。

2025-03-23 21:48:22 913

原创 JVM常见面试总结

JVM常见面试总结

2025-03-21 21:08:27 1346

原创 CAS简要总结

CAS(Compare-And-Swap)是一种原子操作,用于实现多线程同步。它比较内存中的值与预期值,若相等则更新为新值,否则不操作。CAS广泛应用于无锁数据结构和并发控制,如Java中的包。

2025-03-20 19:29:47 391

原创 ThreadLocal底层原理,内存泄露问题,以及如何在项目中使用这个关键字(总结)

通过实现线程本地存储,每个线程有独立的变量副本。使用不当会导致内存泄露,需及时调用remove()清理。在项目中常用于会话管理、数据库连接管理和日志跟踪等场景。

2025-03-19 21:31:57 616

原创 List、Set 和 Map 的区别及常见实现类、线程安全集合(总结图表)

List、Set 和 Map 的区别及常见实现类、线程安全集合(总结图表)

2025-03-18 21:13:19 1378

原创 登录系统测试用例设计参考(163邮箱)

根据测试用例的执行结果,分析163邮箱登录系统是否存在缺陷,并记录缺陷的详细信息,包括缺陷描述、重现步骤、严重程度等。验证163邮箱登录系统的功能、性能、安全性、兼容性等方面是否符合需求,确保用户能够安全、稳定地登录邮箱。Windows 10, macOS, Linux, Android, iOS 等。Chrome, Firefox, Edge, Safari 等主流浏览器。编写测试报告,总结测试过程、测试结果、缺陷分析等内容,并提出改进建议。测试过程中应注意保护用户隐私,避免泄露用户账号和密码等信息。

2025-03-17 20:17:41 949

原创 链表 Java为什么对链表进行操作时,需要添加一个虚拟头节点

为什么对链表进行操作时,需要添加一个虚拟头节点。

2025-03-14 19:00:04 458

原创 LeetCode Java 环形链表II(快慢指针)图解

给定一个链表的头节点head,返回链表开始入环的第一个节点。如果链表无环,则返回null。如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数pos来表示链表尾连接到链表中的位置(如果pos是-1,则在该链表中没有环。pos,仅仅是为了标识链表的实际情况。链表。返回索引为 1 的链表节点链表中有一个环,其尾部连接到第二个节点。返回索引为 0 的链表节点链表中有一个环,其尾部连接到第一个节点。返回 null链表中没有环。

2025-03-13 17:03:45 1072

原创 LeetCode Java相交链表(双指针遍历)

给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。

2025-03-12 16:39:49 921

原创 LeetCode Java旋转图像(矩阵转置,左右两列互换)

给定一个n×n的二维矩阵matrix表示一个图像。请你将图像顺时针旋转 90 度。你必须在旋转图像,这意味着你需要直接修改输入的二维矩阵。使用另一个矩阵来旋转图像。

2025-03-11 14:01:04 352

原创 LeetCode Java缺失的第一个整数(原地哈希)

原地哈希(In-place Hashing)是一种在有限空间内处理数据的算法技术,通常用于在不使用额外存储空间的情况下对数据进行哈希操作。这种方法在内存受限的环境中非常有用,例如嵌入式系统或实时数据处理。

2025-03-10 10:40:05 826

原创 LeetCode ​Java无重复字符的最长子串​,利用HashSet求解

官方求解用的HashMap,我发现用HashSet也可以进行求解给定一个字符串s,请你无重复字符的最长子串找出其中不含有重复字符的的长度。3因为无重复字符的最长子串是"abc",所以其长度为 3。1因为无重复字符的最长子串是"b",所以其长度为 1。3因为无重复字符的最长子串是"wke",所以其长度为 3。请注意,你的答案必须是的长度,"pwke"是一个子序列,不是子串。

2025-03-09 14:55:42 916

原创 Vue2+Spring 算法 基因序列比较

人类基因由4种核苷酸,分别用字母ACTG表示。要求编写一个程序,按以下规划比较两个基因序列并确定它们的相似程度。给出两个基因序列AGTGATG和GTTAG,它们有多相似呢?测量两个基因的相似度一种方法称为对齐。使用对齐方法可以在基因的适当位置加入空格,让两个基因的长度相等,然后根据基因的分值矩阵计算分数。

2025-03-08 19:30:52 589

原创 Vue2+Spring 基于最优调度算法的作业排程问题设计与实现

作业排程问题(Job Scheduling Problem)是运筹学和算法设计中的经典问题之一,广泛应用于生产制造、计算任务调度、项目管理等领域。针对多个作业需要在有限资源下完成,如何合理分配资源、优化调度顺序,以或,是一个重要的优化问题。假设有 n个作业 J1,J2,…,Jn 和 m台机器 M1,M2,…,Mm, 每个作业都有对应的执行时间。机器可以同时处理不同的作业,但同一时间一台机器只能处理一个作业。

2025-03-07 21:30:34 864

原创 Vue3+Spring el-upload上传/获取图片资源从云服务器

Vue3+Spring el-upload上传/获取图片资源从云服务器

2025-03-06 19:27:58 544

原创 groovy业务(求最值)

max=(实际教学+教学D1)/额定教学*教学系数+(实际业绩+业绩D1+业绩D2)/额定业绩*业绩系数+(实际项目+项目D2)/额定项目*项目系数教学D1+业绩D1 = D1项目D2 + 业绩D2 = D2教学D1<=额定教学*0.5(业绩D1+业绩D2)<=额定业绩*0.5项目D2<=额定项目*0.5(实际+D)/ 额定最多只能为1,实际,额定,D1,D2,系数都为已知,需要分配教学D1,业绩D1,项目D2 ,业绩D2,使其max为最大。

2025-03-05 13:50:25 125

原创 Vue3 拖拽分隔条动态调整相邻两个盒子的宽度(可反复拖拽)

用户可以通过拖拽分隔条(.resize元素)来调整相邻两个盒子的宽度。左侧盒子和右侧盒子的宽度会根据拖拽的距离动态变化。左侧盒子的宽度最大为500px,最小为250px。右侧盒子的宽度最小为250px。当宽度达到最小或最大值时,拖拽操作会被限制。如果子元素没有设置宽度,则默认分配flex: 1,使其均匀占据剩余空间。拖拽分隔条时,分隔条的颜色会变化(通过和onMouseup实现)。拖拽过程中,实时计算并更新左右盒子的宽度。使用函数兼容不同浏览器获取下一个兄弟元素的方式。

2025-03-04 21:41:22 982

空空如也

空空如也

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

TA关注的人

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