首页 > 其他分享 >D_06 DotnetCore.CAP在项目中的应用

D_06 DotnetCore.CAP在项目中的应用

时间:2022-08-28 15:22:33浏览次数:78  
标签:订阅 CAP 06 cap DotnetCore 节点 消息

描述

在项目中,DotnetCore.CAP 可以作为分布式事务、消息队列的解决方案,详见官方文档:https://cap.dotnetcore.xyz/,此处不过多的讲解。本文主要讲解官方文档没有说明,但是在实际项目确实必不可少的要点。

消息会被集群中的每个节点都消费的问题?

查询cap的源码可以知道:

(1)cap的重试进行器会每60s会执行检查一次,针对失败或者正在进行中的消息,如果重试次数不超过50次、4分钟之前,则请阅的节点就会查询出来进行发布到订阅调度器中,执行任务。因此针对订阅处理的时间超过4分钟没有成功,那么消息就会被每个集群节点查询出来,就会造成数据重复消费。

针对这个问题需要加入幂等性的进行处理

 

 (2)kafka作为消息队列,如果假如新的组则订阅者会从头消费消息,可以在订阅入口通过时间过滤调无用的消息;

 

标签:订阅,CAP,06,cap,DotnetCore,节点,消息
From: https://www.cnblogs.com/hjwcore/p/16632811.html

相关文章

  • Spring5.2.x-06-Spring扫描原理
    在ConfigurationClassPostProcessor内部完成扫描在扫描的时候,为什么要用asm,如果直接用类,可能会把static里的直接执行了,spring尽量做到不直接影响用户(比如这......
  • CF1506G 题解
    前言题目传送门!更好的阅读体验?校内考试题目。写一篇题解。思路首先记录每个字符出现了多少次,然后创建单调栈。看当前字符是否入栈,如果没有入栈,就不停pop(),直到:栈......
  • 06.python闭包
    python闭包什么样的函数是闭包函数?满足以下条件:闭:外层函数嵌套了一个内层函数。包:内层函数调用外层函数命名空间内的名字。举例如下:defout_func():#外层函数......
  • Day06集合-LinkedList
    LinkedList1.特点:链表结构实现,查询慢,增删快2.LinkedList使用/*LinkedList的使用*/publicclasslinkedListDemo01{publicstaticvoidmain(String[]args......
  • Day06集合-Set
    Set接口1.概述无序,五下标,元素不可重复2.Set接口使用/***set接口使用(同collection)*/publicclasssetDemo{publicstaticvoidmain(String[]args){......
  • Day06-泛型
    泛型1.泛型介绍泛型是JDK1.5引入的新特性,本质是参数化类型,把类型作为参数传递常见形式有:泛型类,泛型接口,泛型方法语法:<T,....>:T称为类型占位符,表示一种引用数据......
  • 关于我在.net core6时JWT 出现错误:IDX10653
      IDX10653:Theencryptionalgorithm'System.String'requiresakeysizeofatleast'System.Int32'bits.Key'Microsoft.IdentityModel.Tokens.Symmetr......
  • MySQL在grant时报错ERROR 1064 (42000)
    网上查到的grant方式大多会报错,主要原因是MySQL版本8.0后不能再使用原来的方式查询MySQL版本SELECTversion();在8.0版本下grantallprivilegesontest.*tote......
  • CF1060F
    所以为什么$n$是50啊(感觉真的,太难想了。首先各个点的答案可以分开算,假设当前点为x.其次这个期望没啥意义,直接先计算方案数再除一下就行了。还有就是只有删边是有一......
  • 1706C - Qpwoeirut And The City
    /**|~~~~~~~|*||*||*......