- 博客(20)
- 问答 (3)
- 收藏
- 关注
原创 单体项目监控系统
本文档介绍了项目监控系统的三大组件(Prometheus、Grafana和Spring Boot Admin)的部署与使用方法。系统架构中,应用通过Prometheus采集指标数据,Grafana进行可视化展示,Spring Boot Admin提供应用级管理界面。文档详细说明了各组件的快速启动方式、配置指南和常用操作,包括Prometheus的指标采集与查询、Grafana的仪表盘配置与告警设置,以及Spring Boot Admin的应用监控功能。特别针对非英语用户,增加了Spring Boot Adm
2025-12-19 15:42:44
951
原创 Redis 实施方案
本文档详细介绍了Redis在项目中的实施方案,包括技术栈选择、依赖配置、参数说明和核心配置类实现。技术栈采用Spring Boot 2.3.7集成Lettuce连接池和Redisson组件,支持缓存、分布式锁等高级功能。配置文件针对开发环境优化了连接池参数和超时设置。核心配置类通过Jackson序列化实现复杂对象存储,并设计了三种缓存策略:列表查询(30±5分钟)、详情缓存(2±0.5小时)和统计缓存(1±0.25小时),采用随机TTL有效避免缓存雪崩问题。文档还强调了关键配置选择的原因,如JSON序列化提
2025-12-18 09:48:14
892
原创 Redis缓存完整实施方案
本文介绍了一个企业级Redis缓存系统解决方案,主要内容包括: 方案概述:解决缓存穿透、击穿、雪崩等8大问题,实现20-50倍的查询性能提升,系统可用性达99.9%以上。 技术架构:基于Spring Boot+Redis+Redisson+Jackson技术栈,采用分层架构设计,支持缓存降级和故障容灾。 核心功能: 缓存穿透:布隆过滤器+缓存null值双重防护 缓存击穿:互斥锁/逻辑过期/永不过期多方案选择 缓存雪崩:随机过期时间策略 快速开始:详细说明依赖配置、Redis连接、Redisson布隆过滤器。
2025-12-11 17:52:56
924
原创 Android 应用离线数据同步指南
本项目的 SyncWorker 中应该包含了处理冲突的策略,常见的策略是“以服务器为准”或“最后修改的覆盖”,以保证数据的一致性。AuthRetrofitClient: 这是一个经过特殊配置的 Retrofit 实例,它可能包含了处理用户认证(如自动添加 Token 到请求头)的逻辑,确保了通信的安全性。自动同步: 一旦设备连接到网络,WorkManager 就会在后台默默地唤醒 SyncWorker,完成数据的双向同步,整个过程对用户是无感的。这保证了应用的流畅响应和核心功能的可用性。
2025-08-04 11:41:37
686
原创 在安卓项目中添加一个新页面并实现跳转
Android页面创建与跳转的四个核心步骤: 创建XML布局文件:在res/layout下新建activity_new_page.xml,定义页面UI元素 编写Java逻辑类:继承AppCompatActivity并在onCreate中关联布局文件 注册Activity:在AndroidManifest.xml中添加<activity>标签声明新页面 实现跳转逻辑:在源Activity中使用Intent启动目标Activity,通过findViewById获取按钮并设置点击事件 完整流程包含界面
2025-08-04 10:03:34
510
原创 数据同步机制详解
本文详细介绍了安卓项目中的离线优先数据同步机制。系统采用三层存储结构(Room数据库、SharedPreferences和内存缓存),实现本地优先读取、异步网络同步的策略。核心流程包括初始化检查、数据读写管理和冲突解决,支持增量同步、批量操作和后台同步优化。系统还具备完善的离线处理能力,包括数据可用性检查、完整性验证和智能缓存管理,并通过状态监控和错误处理确保数据一致性。该方案有效解决了移动端在网络不稳定情况下的数据同步问题,提升了应用响应速度和用户体验。
2025-07-24 13:49:47
516
1
原创 MybatisPlus配置类
/ 某些特定语句需要不过滤租户条件,比喻运营管理时候看所有用户什么的,可以在Mapper上租户注解的形式实现。// 如果用了分页插件注意先 add TenantLineInnerInterceptor 再 add PaginationInnerInterceptor。// 用了分页插件必须设置 MybatisConfiguration#useDeprecatedExecutor = false。
2025-07-21 16:20:10
396
原创 redis用fastjson序列化反序列化
至于redis的配置可以写一个专门的类从配置文件中读取配置,并注入进来如RedisProperties,代码比较简单我就不展示了。
2025-07-11 20:38:35
526
1
原创 DDD 核心对象职责与使用场景总结
本文系统介绍了DDD架构中的五种核心对象类型:PO(持久化对象)负责数据库映射,DAO(数据访问对象)封装数据库操作,Entity(领域实体)承载业务逻辑,VO(值对象)描述业务属性,DTO(数据传输对象)用于跨层数据传递。重点解析了各对象的特征、职责及分层位置,并详细说明了数据查询和写入场景中的对象转换流程:在查询时由PO→Entity→DTO逐层转换,写入时反向进行DTO→Entity→PO的转换。这种分层对象设计实现了业务与技术解耦,体现了DDD架构的核心思想。全文逻辑清晰,对理解领域驱动设计中的对象
2025-07-09 16:00:54
692
原创 虚拟机centos linux安装+配置
自己要配置好网络连接,开启vm必须的服务,这里开启ens33是为了用final shel连接操作,不过即使不用他链接也要开。选择最小安装就是用命令行操作,大部分人要么选最小要么选gnome就可以满足需求,根据需求来选。进去ping个百度或者查看ip,ens33网卡有ip就可以用工具链接。这是用finalshel链接后,查看的ip,命令看图。
2025-07-05 13:09:01
217
原创 Spring boot项目改造为 Mcp服务
前提使用 Spring ai框架,这是配置成sse调用, Jd k17以上。第3步,需要被调用的方法@tools(name=,description=)名字, url:服务端地址ip暴露出去的节点/sse,types,sse。第1步添加maven,可以勾选mcpserver。第4步写mcpconfig类,对外暴露接口,需要调用写的mcp.json。第二步,修改配置文件。
2025-07-01 21:54:37
711
原创 ddd各层
Infrastructure层实现domain和app层定义的接口,所以。基础设施层,仓储实现,数据库相关代码dao,po, Dao接口,网关,领域事件event, redis。各层之间的关系,外层依赖内存, Trigger→api→app→domain。domain领域层,是系统核心,放置实体,值对象,聚合根,领域服务,仓储接口。Api控制器,controller,rpc,消息消费者监听器,定时任务。app应用层,应用服务,工作流编排,权限校验。Api, Trigger接口层触发器层。
2025-07-01 21:00:10
253
原创 aop使用
/ 2. 获取方法名 System.out.println("方法名: " + signature.getName());System.out.println(“参数名: " + Arrays.toString(parameterNames));第3步实现环绕通知@around(@annotation(注解))或其他,这个需要加载执行的方法上面比如@Around(“aopPoint() && @annotation(rateLimiterAccessInterceptor)”)
2025-07-01 20:40:48
321
原创 java部署
3进行build构建,docker build -t 名字/名字:版本号 -f ./Dockerfile .6切换到所需文件夹 docker-compose-environment.yml up -d。前提要安装docker,jdk,maven,还有Docker可视化界面。5linux中创建dev-ops,上传相关文件。4 push到阿里云镜像仓库。
2025-05-25 23:33:35
103
原创 Redis使用FastJson序列化
/用stringredisSerializer来序列化和反序列化redis的key值。//hash的key也采用stringRedisSerializer的序列化方式。这是FastJsonRedisSerializer。这是RedisConfig。
2024-07-06 12:20:22
984
原创 封装status和message
CLIENT_AUTHENTICATION_FAILED("1001","客户端认证失败"),RC403("403","无访问权限,请联系管理员授予权限"),INVALID_TOKEN("2001","访问令牌不合法"),BUSINESS_ERROR("1004","业务逻辑异常"),RC375("375","数学运算异常,请稍后重试"),RC404("404","404页面找不到的异常"),RC500("500","系统异常,请稍后重试"),RC999("999","操作XXX失败"),
2024-06-28 16:50:26
776
原创 sql语句
sql嵌套查询不能使用自动封装的resulttype,需要手动封装的resultMap完成映射。例子:type对应最终映射的实体类。
2024-06-27 17:39:46
805
1
空空如也
consul持久化失败
2024-06-16
consul持久化失败
2024-06-16
spring,junit5中,使用JdbcTemplate添加数据报错
2024-04-05
Javaswing显示年月日
2022-04-14
desktoppane无反应,有无人帮帮我
2022-03-24
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅