自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 leetcode刷题第二天

摘要:双指针技术通过两个指针协同遍历数组/字符串,将时间复杂度从O(n²)优化至O(n)或O(nlogn)。核心策略包括:快慢指针(移除元素)、左右指针(回文判断)和三指针(颜色分类)。适用场景包括有序数据筛选、对称性操作和多值分类。通过LeetCode例题解析(如移除元素、三数之和)掌握指针移动逻辑与边缘case处理,最终独立解决中等难度问题并验证优化效果。关键点:识别问题特征(有序性/筛选需求)、合理选择指针策略、正确处理边界条件。

2025-10-27 14:36:50 828

原创 JVM G1 GC 暂停时间过长原因分析与解决方案

G1GC作为OpenJDK11默认垃圾回收器,在实际应用中仍可能因配置不当导致长时间暂停。本文分析了G1GC暂停时间过长的9大原因,包括堆内存配置不合理、大对象分配、并发标记延迟、复制失败等,并针对每种情况提供了具体解决方案。文章还提出了G1GC调优的最佳实践:需建立完善的监控体系,采用渐进式调优策略,根据业务场景选择合适的参数配置。通过两个典型案例,展示了如何通过参数优化和代码改进有效降低GC暂停时间。最后强调,GC调优需与代码优化相结合,持续监控是确保性能稳定的关键。

2025-09-26 16:51:54 1137

原创 项目亮点之---基于机房地理信息的 Dubbo 路由策略

本文针对水处理分布式系统中跨机房调用延迟高的问题,提出基于Dubbo的地理感知路由策略。方案通过三层元数据体系标识机房位置,设计"同机房优先→就近机房→全局容灾"的三级路由规则,并实现动态权重调整和故障熔断机制。核心代码展示了如何通过SPI扩展Dubbo路由,结合一致性哈希负载均衡和Apollo配置中心实现动态路由。实测显示,该方案将平均响应时间降低77.5%,跨机房调用减少85.7%,有效提升了水处理系统的实时性。方案具有业务适配性强、扩展性好等特点,可推广至其他跨地域分布式系统。

2025-09-25 11:22:31 836

原创 项目亮点之---享元模式优化水处理报表导出

本文分享了水处理系统报表导出性能优化的实践经验。通过分析发现,传统实现方式导致10万条数据重复创建20万个相同对象,引发内存溢出和频繁GC问题。采用享元模式重构后,将固定不变的元信息(水质指标、处理工艺)抽离为共享对象,动态业务数据作为外部状态单独传递。优化后,JVM堆内存峰值降低62.5%,GC时间减少94.2%,报表导出时间从2分钟缩短至1分10秒。业务层面,运维效率提升40%,系统稳定性增强,实时监控不再受影响。该方案适用于设备日志分析、趋势图生成等存在"大量重复细粒度对象"的场景

2025-09-25 11:09:37 831

原创 连续登录领红包如何实现

存储分层:Redis、MySQL、ClickHouse各司其职,平衡性能与成本;异步处理:Kafka+Flink削峰填谷,支撑日均千万级登录请求;智能策略:动态调整奖励、防刷机制、补签卡设计,提升用户粘性;一致性保障:事务、Binlog、缓存过期等多维度确保数据准确;扩展性:分库分表、预计算、动态配置,支持未来业务扩展。该方案已在美团多个业务线(外卖、到店、酒旅)落地,日均处理登录事件超2000万次,连续天数计算错误率低于0.01%,用户补签功能使用率达18%,显著提升用户活跃度和留存率。

2025-09-23 22:24:12 906

原创 项目亮点之-使用Arthas排查生产环境接口性能问题

trace命令可以直观展示方法调用链路和各节点耗时,快速定位性能瓶颈watch命令能够捕获方法的入参、出参和异常,帮助分析参数与性能的关系支持条件过滤和后台运行,适合在生产环境长期监控特定问题无需重启应用,零侵入式诊断,极大降低了线上排查的风险。

2025-09-16 21:22:49 953

原创 项目亮点之-请求合并

基于SpringBoot+MyBatis+MySQL的请求合并方案,通过“注解驱动+AOP拦截+批量查询”的设计,完美解决了高并发下高频单键查询的性能痛点。低侵入性:仅需添加注解即可接入,无需重构现有业务代码;高性能:将数据库查询次数降低一个数量级,大幅减少连接开销与网络IO;通用性:适配任意“单键查询”场景,可快速扩展到商品、订单等业务模块;可靠性:通过双触发机制、异常分发、降级策略保证系统稳定运行。

2025-09-16 12:00:02 688

原创 java系统卡死有可能是因为那些原因?

卡死原因核心外在表现关键判断依据线程死锁/活锁业务无响应,CPU使用率低,日志断档jstack导出栈日志,搜索“deadlock”关键词OOM(堆/元空间/直接内存)日志打印,进程可能崩溃查看JVM日志,jstat -gc显示内存接近耗尽GC无限循环CPU使用率高(GC线程占用),业务无响应GC日志频繁Full GC,回收内存极少线程池/连接池耗尽新请求超时,线程池监控显示“活跃线程数=最大线程数”查看线程池 metrics(如Spring Boot Actuator)

2025-09-07 19:56:28 976

原创 系统卡死常见问题(1) 之 动态 SQL 空参数问题

运营人员通过后台 “批量发放积分” 功能,上传的用户 ID 列表为空(Excel 模板填写错误),触发接口请求后,系统向全平台 100 万用户每人发放了 100 积分,造成 1 亿积分损失,同时数据库因批量更新全表陷入卡顿。四大核心场景,展现了空参数问题的多样性:从 “全员误发积分” 的数据安全风险,到 “笛卡尔积” 的性能灾难,再到 “全表聚合” 的资源耗尽,其本质均是 “动态 SQL 灵活性与参数校验缺失的矛盾”。在积分系统的日常运维中,“系统突然卡死、接口超时” 是令开发与运维人员头疼的高频问题。

2025-09-07 19:43:10 1028

原创 spring框架有哪些扩展点,这些扩展点可以做什么?(1)

大型团队中,不同开发者可能定义不同的初始化方法(如init()、start()、initialize()),导致生命周期管理混乱。BeanPostProcessor可统一识别并执行这些方法,标准化初始化流程。// 定义自定义注解标记初始化方法// 实现BeanPostProcessor统一调用@Component@Override// 扫描所有标注了@CustomInit的方法并执行try {// 执行自定义初始化方法。

2025-09-07 19:33:45 763

原创 php环境错误:Library not loaded*错误总结

2.在php.ini中打开你需要的extension。我是想连接oracle数据,发现遇到这个错误。下载oracle instace。最后发现原因是没有c++的运行库。网上看了很多总结都没什么用。

2024-07-12 11:39:25 699

原创 系统调度实现

在每个周期,您计算所有就绪/正在运行的进程的剩余CPU时间,并运行剩余时间最短的进程。如果多个进程的剩余CPU时间相同,则优先选择ID较小的进程。您可以将RR视为就绪进程的队列。当进程从运行状态变为就绪状态时,它会移动到队列的末尾。如果两个进程同时变为Ready,则优先选择ID较小的进程。当一个进程由于I/O而被阻塞,然后变得就绪时,它会被添加到队列的末尾。如果两个进程同时就绪,则优先选择ID较小的进程。当前正在运行的进程在I/O上被阻止当前运行进程运行了2个周期。新到达的进程被添加到队列的末尾。

2023-10-09 18:14:06 158 1

原创 CVS导入 数据报错,修改字段varchar(255)->varchar(64)

错误原因:数据的一行最多存储65535,如果字段太多会导致数据行存储不下报错Cannot create table [HBJ20190411]: 1118 - Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some co

2022-05-27 11:22:47 357

原创 sql查询同一个表中两条记录,一个字段一样,另一个不一样

SELECT * FROM t_member_identity t1,( SELECT max( id ), one_id, member_id FROM `t_member_identity` GROUP BY member_id HAVING count(*) > 1 ) t2WHERE t1.member_id = t2.member_id AND t1.one_id <> t2.one_id

2022-05-10 10:21:44 7358

原创 Jenkis集成gitee

在集成时,test一直出错,需要安装一个插件

2022-04-01 09:29:38 143

原创 云服务器使用fastDFS错误,readtime out

报错如下:Caused by: java.net.SocketTimeoutException: Read timed outcom.github.tobato.fastdfs.exception.FdfsIOException: 客户端连接服务端出现了io异常:socket io exception occured while receive content错误原因:上传的文件太大,云服务器的上行带宽太小在配置springboot时注销以下配置:fdfs.so-ti...

2020-10-28 21:32:29 911

原创 华硕电脑安装键盘灯驱动步骤

1.进入华硕官网2.找到服务与支持3.前往下载中心4.在笔记本电脑的背面找到型号(在条形码的旁边)5.选择右边的程序与工具软件6.选择cpu类型:windows搜索dxdiag 程序会显示cpu型号7.选择cpu后,在驱动程序列表中找到ATK快捷键x8.下载安装---》ok...

2019-06-15 22:51:30 12810 2

qt项目之连接数据库的销售系统

自己做的课题项目,你下载用的时候gif图片的地址可能需要改一下,数据库和qt的版本注意要一致同是32为或者是64位,不然不能用。如果数据库有错误就自己台添加进去。

2019-03-11

accounts-es.json

练习es的资源,注意如果导入报错,处理报错The bulk request must be terminated by a newline 的话 curl -XPOST -H 'Content-Type:application/json' '*:9200/bank/account/_bulk?pretty' --data-binary "@account.json"

2021-10-02

空空如也

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

TA关注的人

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