SpringCloud特点
一款优秀的微服务解决方案,遵循“约定大于配置”理念,组件丰富、功能齐全,支持灵活扩展与开箱即用,启动迅速,完美适配云原生架构,助力应用高效部署于云环境。
Feign远程调用
本章介绍如何使用Feign替代RestTemplate实现更优雅的HTTP跨服务调用。通过引入Feign,解决服务地址硬编码、代码可读性差等问题,结合注册中心实现声明式远程调用。内容涵盖Feign基本使用、自定义配置(日志、编码器等)、连接池优化(如Apache HttpClient),并探讨继承与抽取两种最佳实践方案,提升微服务间通信的可维护性与复用性。
Nacos注册中心
本文介绍Nacos的安装部署、服务注册与发现、权重控制、集群隔离及临时/持久实例等核心功能,涵盖从环境搭建到高级配置的完整实践,助力微服务架构高效管理。
Spring Boot中使用监听器
本文系统介绍了Web监听器的概念及在Spring Boot中的应用,涵盖监听Servlet上下文、Session会话与Request请求的实战案例,并讲解自定义事件与监听器的实现方式,适用于数据缓存、在线人数统计、用户行为追踪等场景,具有较强的实用价值。
SpringCloud工程部署启动
本文介绍SpringCloud微服务工程搭建全过程,涵盖项目创建、数据库配置、服务部署及远程调用实现。通过两种方案导入工程,完成user-service与order-service模块开发,并利用RestTemplate实现跨服务数据调用,帮助理解微服务间通信机制及拆分逻辑。
初识MQ
本文介绍了微服务中的同步与异步调用机制。同步调用需等待结果返回,顺序执行,适用于实时性高的场景;异步调用则无需等待,提升系统并发与响应能力,常用于耗时操作。通过消息队列(MQ)实现解耦、异步处理和流量削峰,常见MQ如RabbitMQ、Kafka等,本文重点讲解RabbitMQ应用。
实现降级
本文介绍如何在Spring Cloud微服务中通过Sentinel实现Feign接口的降级处理。重点采用`FallbackFactory`方式,在调用方(如cart-service)为`ItemClient`接口编写降级逻辑,捕获远程调用异常并返回兜底数据。需配置Feign启用Sentinel,定义降级类实现`FallbackFactory`接口,并在`@FeignClient`中指定`fallbackFactory`。最终通过停止item-service进行测试,验证购物车页面在商品信息获取失败时仍可降级展示,保障系统稳定性。适用于服务熔断与容错场景。
Spring Cloud实现工具
在Spring Cloud中,常用的服务保护工具包括:Hystrix(原生熔断限流)、Resilience4j(轻量简洁的现代库)和Sentinel(阿里开源,支持流量控制、熔断降级及规则热更新),三者助力微服务稳定高效。
Sentinel安装与集成
介绍如何切换hmall-micro项目至dev_02分支并提交代码,强调多分支并行开发模式。随后讲解Sentinel服务保护框架的安装与配置,包括控制台部署、本地运行及项目集成,实现微服务熔断降级,并通过簇点链路监控接口。
认识Seata
Seata是阿里巴巴开源的分布式事务解决方案,通过事务协调者(TC)、事务管理器(TM)和资源管理器(RM)协同工作,实现全局事务一致性。支持XA、AT、TCC、SAGA四种模式,其中AT为默认模式,具备最终一致性与低侵入性,广泛应用于微服务架构中。