2015-01-04 65 views
0

我試圖使用JDBC入站通道適配器,並遇到一些混淆。彈簧集成:JDBC入站通道適配器

首先,哪一個更有效地使用:指定max-rows-per-poll或查詢語句中使用limit? 其次,爲避免重複的讀數,是否有處理每個輪詢的最後一條消息之後運行輪詢器而不是fixed-rate?我可以使用update,但在流中有動態更新查詢。

我的整合流程有點像jdbc:inbound-channel-adapter -> http:outbound-channel-adapter -> jdbc:outbound-channel-adapter(根據http:outbound-channel-adapter的響應更新每一行)。它應該處理大量的行。

回答

0
  1. LIMIT更有效。
  2. 只要你使用DirectChannel秒(默認),並在輪詢沒有任務執行,接下來的投票不會運行,直到當前的完成,而不論觸發的。
+0

'接下來的調查,直到當前completes'將不會運行是否意味着接下來的調查只發生後,該批次的整個交易完成? – nebula 2015-01-04 16:05:02

+0

是的,只要沒有異步切換到另一個線程;當輪詢線程返回到任務調度程序時,它會查詢觸發器以查看下一輪輪詢應該發生的時間,並安排它;如果時間已過,它將立即運行。因此,如果運行任務的時間少於費率本身,「固定費率」將是準確的。 – 2015-01-04 16:10:46

+0

我問這個問題的原因是我在中間某個地方有'http:outbound-channel-adapter',這可能需要一些時間才能得到響應。我想這不會是問題。 – nebula 2015-01-04 16:16:24

相關問題