当前位置: 首页 > news >正文

(一).Net, NextJS(微服务同步通讯/Polly/RabbitMQ/Outbox/死信队列处理)


文章目录

  • 项目地址
  • 一、微服务同步通讯
    • 1.1 Http
      • 1. Search服务
        • 配置竞拍服务的地址
        • 创建Httpclient用于发送http请求
        • Search服务里注册Httpclient
        • 使用HttpClient服务
        • Polly
      • 2. Auction服务
    • 1.2 RabbitMQ
      • 1. 消费者Comsumer
        • 创建Contracts
        • 创建消费者
        • 注册消费者
      • 2. 生产者
        • 发布消息
        • 注册生产者
    • 1.3 Outbox Pattern
      • 1. 安装所需要的包
      • 2. 注册Outbox生产者
      • 3. 添加Outbox pattern需要的表
    • 1.4 消息消费失败
      • 1. 给固定的消费者队列添加重试
      • 2. MQ里的错误队列
      • 3. 消费错误队列
      • 4. 消费错误队列里的消息
      • 5. 注册错误消费者


项目地址

  • 教程作者: Neil Cummings
  • 教程地址:
How to build a microservices based app using .Net, NextJS, IdentityServer, RabbitMQ running on Docker and Kubernetes
  • 代码仓库地址:
有的密
https://github.com/TryCatchLearn/Carsties/commits/main/

一、微服务同步通讯

1.1 Http

1. Search服务

配置竞拍服务的地址
  • 在搜索服务的appsettings里,添加竞拍服务的地址
    在这里插入图片描述
创建Httpclient用于发送http请求
  1. 在Search服务里,直接调用EF数据库查询,查询最新的数据时间
  2. 拼接Auctions服务的接口,并且通过httpclient直接调用了Auction服务里controller提供的接口查询

在这里插入图片描述

Search服务里注册Httpclient
  • 注册我们创建的AuctionSvc服务

在这里插入图片描述

使用HttpClient服务
  • 这里使用Auctions服务的数据,做了Searchs服务的数据初始化

在这里插入图片描述

Polly
  • 由于Httpclient是同步请求,所以,为了防止依赖服务崩掉,需要添加Pol
http://www.dtcms.com/a/507663.html

相关文章:

  • 长治网站设计制作网站网站安全设计
  • 腐烂的橘子——LEGB 作用域规则
  • [Linux系统编程——Lesson16.Ext系列⽂件系统]
  • 长尾关键词优化在SEO策略中的重要性与实践技巧
  • 邯郸形象网站建设广州网络推广建站
  • 品牌网站模板速卖通导入WordPress
  • 深入理解 Dubbo 的 ServiceConfig:服务粒度的配置机制
  • 开源 Linux 服务器与中间件(六)服务器--Lighttpd
  • 数据结构——排序的学习(一)
  • 服务器的安全性如何?
  • 新奇特:神经网络速比器,小镇债务清零的算法奇缘
  • 阿里云 OSS MetaQuery 全面升级——新增内容和语义的检索能力,助力 AI 应用快速落地
  • Deepseek新模型Deepseek-OCR, 不仅仅是OCR
  • 重庆网站制作机构怎么建立自己企业网站
  • 律师网站 扁平化扁平化网站 源代码
  • 解耦的艺术:深入理解设计模式之命令模式
  • C# 设计模式——工厂模式
  • 配置电话交换机 3CX 对接微软 Teams 直接路由
  • 亚马逊云渠道商:如何配置 AWS 自动化快照?
  • [优选算法专题四.前缀和——NO.29 和为 K 的子数组]
  • Python Web框架深度对比:Django vs Flask vs FastAPI(含优缺点与选型策略)
  • 盲盒抽谷机小程序:打造个性化消费的梦幻舞台
  • 性能优化揭秘:将淘宝商品 API 响应时间从 500ms 优化到 50ms 的技术实践
  • 龙岩互联网抖音seo招商
  • C++ 智能指针 std::unique_ptr、std::shared_ptr、std::weak_ptr
  • 猿辅导Java面试真实经历与深度总结(三)
  • Doris 数据导入
  • 网站建设+泰安saas建站平台有哪些
  • 动态规划之两个字符组/两个数组的dp问题
  • 【AI论文】UniVideo:面向视频的统一理解、生成与编辑