微服务架构中的服务注册与发现流程
本内容介绍了微服务架构中的服务注册与发现流程,包括服务注册中心(如Nacos)、服务提供者和调用者的角色分工。服务启动时自动注册信息至注册中心,调用者通过客户端负载均衡(如Spring Cloud Loadbalancer)选取服务实例进行远程调用。同时,内容还讲解了OpenFeign的工作原理,其作为HTTP客户端集成负载均衡,通过接口定义、代理生成、请求发送与结果解析,实现服务间的高效通信。
了MyBatis的多个核心功能实现方式
本文介绍了MyBatis的多个核心功能实现方式,包括:如何获取生成的主键、实体类属性与表字段名不一致时的处理方法、多表查询的实现方式(使用`association`和`collection`标签)、延迟加载的支持情况、批量插入的实现方式及主键返回问题。内容实用,适合MyBatis开发者参考。
对象内存分配机制与垃圾回收
本内容介绍了对象内存分配机制与垃圾回收(GC)原理,涵盖对象在堆与栈中的存储、新生代与老年代的GC策略、常见回收算法及回收器特点,适用于Java等语言的内存管理优化。
jdk9变化
JDK 9 引入模块化系统(JPMS),改变了类加载的双亲委派模型。关键变化包括:模块可见性优先、类加载器与模块解耦、核心类隔离及自动模块支持。新模型通过 `requires`、`exports` 和 `opens` 等机制实现更严格的访问控制,增强安全性与模块化,同时保留兼容性,使传统 JAR 可平滑过渡。
延时实现
本节介绍了多种关闭过期订单的实现方案,包括定时任务、JDK延迟队列、Redis过期监听、Redisson延迟队列、RocketMQ延迟消息及RabbitMQ死信队列。各自优缺点明显,适用于不同业务场景,如定时任务适合小数据量,RocketMQ适合高并发解耦场景,而Redisson则使用简单且高效。选择时需综合考虑系统复杂度、数据量及可靠性要求。
了解微服务
本文对比了微服务与单体架构的优缺点,指出单体架构适合小规模系统,开发部署简单,而微服务适合复杂系统,具备良好的扩展性和灵活性。同时介绍了Spring Cloud相关组件如Nacos、OpenFeign、Sentinel的原理与应用,以及微服务中的熔断、降级、限流机制和AT模式的工作原理。
spring基础2
本文介绍了 MyBatis 动态 SQL 的执行原理及常用标签,AOP 的实现原理与应用场景,Spring 的三级缓存机制及其在解决循环依赖中的作用,以及事务传播行为及其使用场景,帮助理解 Java 开发中的核心概念与实现机制。
spring基础
本文介绍了 Spring 与 SpringMVC 常用注解、RESTful 风格、IOC/DI 原理、Bean 作用域、自动装配流程及事务失效场景,帮助开发者深入理解 Spring 框架核心机制与常见问题。
dock与linux
本文介绍了 Linux 常用命令与 Docker 的基本操作,涵盖文件管理、权限修改、日志查看、容器管理、镜像构建及 Docker Compose 编排等内容,帮助开发者快速掌握项目部署与服务管理技能。
java常识3
本内容介绍了JVM的组成及HashMap的工作原理。JVM包括类加载器、运行时数据区(堆、方法区、虚拟机栈等)、执行引擎和本地接口。HashMap基于数组+链表/红黑树实现,1.8中引入树化机制优化性能,扩容时采用位运算提升效率。同时对比了ConcurrentHashMap在不同版本中的实现差异。