paulwong

          EIP in SPRING INTEGRATION

          • idempotent receiver
          冪等型,同一個(gè)MESSAGE,如MESSAGE ID都一樣,在MESSAGING系統(tǒng)中不管運(yùn)行多少次,結(jié)果都一樣,為啥?因?yàn)橹貜?fù)的MESSAGE,都被忽略了。
          方案:
          消息被處理后,從消息中取出ID,放入META-DATA-STORE中,后續(xù)處理消息時(shí),要從META-DATA-STORE中檢查是否有值。

          下面這個(gè)方案,ID的存儲(chǔ)和判斷是否重復(fù)消息都在一個(gè)INTERCEPTOR中搞定。
          https://stackoverflow.com/questions/50401460/spring-integration-dsl-configure-idempotent-receiver-to-identify-duplicates
          https://www.javacodegeeks.com/2015/09/monitoring-and-management.html


          claim-check
          將MESSAGE的PAYLOAD存在STORE中,返回一個(gè)ID,這個(gè)ID即claim-check,如果需要取MESSAGE的DETAIl時(shí),可從STORE中取出MESSAGE。
          https://github.com/spring-projects/spring-integration/blob/master/src/reference/asciidoc/claim-check.adoc


          posted on 2019-10-25 11:03 paulwong 閱讀(492) 評(píng)論(0)  編輯  收藏 所屬分類: SPRING INTERGRATION

          主站蜘蛛池模板: 汉沽区| 通许县| 兴山县| 定结县| 宁安市| 米脂县| 宝清县| 会东县| 台北县| 灵石县| 贵溪市| 桓台县| 淮阳县| 金山区| 克什克腾旗| 峨眉山市| 苍溪县| 安宁市| 会泽县| 漯河市| 永吉县| 达日县| 东源县| 宁德市| 沙田区| 漯河市| 伊吾县| 平顶山市| 兰坪| 鄄城县| 右玉县| 灌阳县| 柞水县| 安庆市| 林周县| 南木林县| 彩票| 灵寿县| 乌拉特前旗| 饶平县| 新乡市|