- 博客(10)
- 收藏
- 关注
原创 SpringBoot 接口访问频率限制(一)
1. 在本文中,设计并实现了策略模式(Strategy Pattern),从而让程序能够根据需要灵活选择具体的行为实现。2. 本文还实现了模板方法模式(Template Method Pattern),将一些步骤延迟到子类中实现,使得子类可以在不改变结构的基础上重写部分方法以适应不同的情况。3. 对于策略模式的优化方面,我们进一步强化了开闭原则(Open-Closed Principle)应用。通过新增策略类的方式,使系统能够在不改动原有代码的前提下增加新的行为策略,从而提升了系统的可维护性和可扩展性。
2024-04-01 15:00:09
3429
2
原创 批量缓存(一)
缓存的使用方式通常分为两种:Cache-Aside(旁路缓存)和Cache-Through(缓存即数据源)。通过本文的剖析,我们深入了解了缓存的常用使用方式,并探讨了传统旁路缓存框架的局限性。鉴于这些不足,实现了新的批量缓存框架,旨在提供更高效、更可靠的缓存解决方案。对于这种批量查询缓存的需求,传统的旁路缓存框架无法达到我们的需求。我需要获取一批帖子的信息,碰巧所有的帖子缓存都失效了,都需全部重新加载。批量get发现没有的数据,再批量的load一次,这样和redis以及数据库的交互都只会有一次。
2024-03-28 15:32:17
430
原创 Spring注解实现分布式锁
结合注解与EL表达式,我们可以构建一个既强大又易用的分布式锁解决方案,为分布式系统的并发控制提供坚实支撑。我们引入注解的初衷,正是为了简化这一核心功能的使用方式,让开发者能够更轻松地运用分布式锁。如同诸多底层的SDK,它们常通过接口调用的方式来实现核心功能,而注解的加入则进一步增强了这些功能的便捷性。很多时候我们的锁都是针对方法的,要锁同一处地方,调用同一个方法就好了,这样前缀可以直接默认根据。
2024-03-27 13:54:42
636
原创 统一管理项目线程池
利用Spring容器的生命周期管理特性,在Spring容器关闭时自动触发线程池的关闭操作,从而简化了代码逻辑,提高了系统的可维护性。首先,我们创建了一个统一的线程池,它的目的是将系统中所有的线程管理集中起来,确保资源的有效利用和系统的稳定运行。例如,Spring提供了线程池的优雅关闭功能,当应用需要停止时,它可以逐步关闭线程池,确保正在执行的任务能够完成后再停止线程,从而避免了任务中断或数据丢失的风险。一个可行的方案是引入统一的线程池配置,以替代之前自建的线程和线程池。
2024-03-26 10:36:02
1666
1
原创 URL高亮与内容解析实现方案
URL能够智能识别并高亮显示,同时解析出对应网页的标题,这样一来,用户只需轻轻一点即可跳转到目标网页,即便不点击也能一目了然地了解该网站的主要功能。这样的设计无疑为用户带来了极大的便利。那么,这样的功能是如何实现的呢?其中又涉及了哪些细节呢?本文将详尽地从调研开始,到方案的选择,再到具体的技术实现,一一为您揭晓。
2024-03-22 10:56:01
872
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人