摘要:
解决消息丢失问题,保证MQ的可靠性,就必须从3个方面入手: 确保生产者一定把消息发送到MQ 确保MQ不会将消息弄丢 确保消费者一定要处理消息 生产者重试机制:生产者发送消息时,出现了网络故障,导致与MQ的连接中断,解决就是当RabbitTemplate与MQ连接超时后,多次重试。 修改publish 阅读全文
摘要:
同步调用 基于OpenFeign的调用都属于是同步调用,等待上一个需求结束,开始下一个需求。 有缺点: 拓展性差:每次有新的需求,现有支付逻辑都要跟着变化,代码经常变动,不符合开闭原则,拓展性不好。 性能下降:每次远程调用,调用者都是阻塞等待状态。 级联失败:当某一个服务出现故障时,整个事务都会回滚 阅读全文
摘要:
雪崩问题产生的原因:微服务相互调用,服务提供者出现故障或阻塞;服务调用者没有做好异常处理,导致自身故障;调用链中的多有服务级联失败,导致整个集群故障。 解决问题的思路: 尽量避免服务出现故障或者阻塞 尽量保证代码的健壮性; 保证网络畅通; 能应对较高的并发请; 服务调用者做好远程调用异常的后背方案, 阅读全文
摘要:
微服务共享的配置可以统一交给Nacos保存和管理,在Nacos控制台修改配置后,Nacos会将配置变更推送给相关的微服务,并且无需重启即可生效,实现配置热更新。在nacos配置列表中添加共享配置:可抽取的共享式配置,jdbc,mybatis-plus,日志配置,swagger和feign的配置,在n 阅读全文
摘要:
自定义过滤器 网关过滤器有两种,分别是: GatewayFilter:路由过滤器,作用于任意指定的路由;默认不生效,要配置到路由后生效。 GlobalFilter:全局过滤器,作用范围是所有路由;声明后自动生效。 用自定义的GlobalFilter来完成登录校验 提前准备的工具: AuthPrope 阅读全文
摘要:
在Spring Boot中整合Spring Cloud Gateway是一个常见的需求,尤其是当需要构建一个微服务架构的应用程序时。Spring Cloud Gateway是Spring Cloud生态系统中的一个项目,它提供了一个API网关,用于处理服务之间的请求路由、安全、监控和限流等功能。 使 阅读全文
摘要:
OpenFeign 是一个基于 Spring 的声明式、模板化的 HTTP 客户端,它简化了编写 Web 服务客户端的过程。用户只需创建一个接口并添加相应的注解,即可实现对远程服务的调用。Spring Cloud OpenFeign 对 Feign 进行了二次封装,使得在 Spring Cloud 阅读全文
摘要:
业务板块:用户模块,商品模块,购物车模块,订单模块,支付模块 服务拆分原则 创业型项目:先采用单体架构,快速开发,快速试错。随着规模扩大,逐渐拆分。 确定的大型项目:资金充足,目标明确,可以直接选择微服务架构,避免后续拆分的麻烦。 高内聚:每个微服务的职责要尽量单一,包含的业务相互关联度高、完整度高 阅读全文
摘要:
Compose 是用于定义和运行多容器 Docker 应用程序的工具。通过 Compose,您可以使用 YML 文件来配置应用程序需要的所有服务。 Compose 使用的三个步骤 使用 Dockerfile 定义应用程序的环境。 使用 docker-compose.yml 定义构成应用程序的服务,这 阅读全文
摘要:
将你的java项目打包为一个jar包 准备Dockerfile文件 # 设置本镜像需要使用的基础镜像 FROM java:8 # 把jar包添加到镜像中 ADD yylq-ds.jar /app.jar # 镜像暴露的端口 EXPOSE 8199 RUN bash -c 'touch /app.ja 阅读全文