logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

nacos服务心跳检测底层原理——结合Java源码

服务注册成功后,会周期性(默认5秒)的向nacos发送心跳请求,告诉nacos"我还活着",nacos接收到请求后,会更新这个实例的“最后心跳时间戳”,然后nacos会有一个定时任务(默认5秒每次),会定期检查服务中的所有实例,判断当前时间与每个服务“最后心跳时间戳”的差值,差值大于15秒,认为实例可能挂了,但是不会立即删除,当差值大于30时,认为真的挂了,注销删除实例,并通知订阅该服务的消费者,

文章图片
#java#开发语言#后端 +1
面试必问——Mysql 如何定位慢查询

配置完毕之后,通过以下指令重新启动MySQL服务器进行测试,查看慢日志文件记录的信息。运维工具:Prometheus,Skywalking。调试工具:Arthas。

文章图片
#面试#mysql#android
Docker 部署微服务项目详细步骤

本文详细介绍了使用Docker部署微服务项目的完整步骤。首先需要准备合理的项目目录结构,为每个微服务创建包含基础配置的Dockerfile文件。然后编写docker-compose.yml文件,定义MySQL、Redis、RabbitMQ、Nacos等基础设施容器,以及用户服务、题目服务、判题服务和网关等业务服务容器。文件配置了各服务的环境变量、端口映射、数据卷挂载和网络设置,并确保服务间的依赖关

#docker#微服务#容器
微服务项目部署配置文件示例:从开发到生产的完整指南

networks:ipam:config:网络设计优势:服务发现:容器间通过服务名直接通信网络隔离:与宿主机网络隔离,提高安全性IP 管理:固定子网段便于管理和故障排查本文通过 XiaoXOJ 项目的实际案例,详细介绍了微服务项目的 Docker 化部署配置。环境分离:基础设施与业务服务分开部署配置管理:多环境配置与集中式配置中心结合网络设计:自定义网络实现服务隔离与通信数据持久化:卷挂载确保数据

文章图片
#java#微服务
LeetCode 138.随机链表的复制 Java

分阶段处理:将复杂问题拆分为“构建结构”和“处理随机指针”两个阶段,降低思考难度。哈希表的作用:通过map2建立原节点到新节点的快速查找,解决了random指向“未知节点”的问题。虚拟头节点的使用:简化了新链表next指针的构建,避免了单独处理第一个节点的特殊逻辑。空指针处理:注意random可能为null,代码中需要显式判断,避免空指针异常。

文章图片
#leetcode#链表#java
LeetCode 56.合并区间 Java

排序的必要性:排序使得我们可以按顺序处理区间,确保不会遗漏任何可能的重叠贪心策略:每次只考虑当前区间与已合并区间列表中的最后一个区间,这种局部最优选择能导致全局最优解重叠判断:理解当前区间起始 ≤ 前一个区间结束是判断重叠的关键条件边界处理:注意区间起始和结束的包含关系,特别是当[1,4]和[4,5]这种情况时,它们被认为是重叠的。

文章图片
#leetcode#java#python +1
到底了