apache.camel_Apache Camel 2.12 –支持后退,以减少不太积极的轮询路线
apache.camel
這是另一篇博客文章,介紹了下一個Apache Camel 2.12版本中即將進行的改進和新功能。
在上一個博客中,我談到了路由直接支持的cron表達式 。 這篇博客文章與之相關,因為我們對輪詢路由具有另一個新功能(使用計劃的輪詢使用者)。
默認情況下,計劃的輪詢路由將以固定速率(通常每半秒)輪詢新消息。 盡管在某些用例中,新消息并非在一天內平均分布,但可能趨向于成批到達。 因此,在沒有新消息到達的時間段內,計劃的輪詢使用者將不會提取新消息,但仍會以相同的速度尋找新消息。
因此,我們引入了一個回退功能,該功能可以讓您在沒有消息的情況下讓計劃的輪詢使用者檢查不那么主動。
為了證明這一點,我們引入了3個新選項
默認情況下,無論是否有要提取的消息,計劃的輪詢使用者都是靜態的,使用相同的輪詢頻率。 從Camel 2.12開始,您可以使用退避功能將計劃的輪詢使用者配置為更加動態。 這使調度程序在空閑時或行中有X個錯誤時可以跳過N個輪詢。 有關backoffXXX選項的更多信息,請參見上表。
例如,要讓FTP使用方退回一會兒空閑,可以這樣做:
from("ftp://myserver?username=foo&passowrd=secret?delete=true&delay=5s&backoffMultiplier=6&backoffIdleThreshold=5").to("bean:processFile");在此示例中,FTP使用者將每5秒輪詢一次新的FTP文件。 但是,如果它已經連續5次處于空閑狀態,那么它將使用6的乘數來回退,這意味著它將改為每5 x 6 = 30秒輪詢一次。 當使用者最終獲取文件時,退避將重置,使用者將返回并每隔5秒輪詢一次。
在JMX中,您可以查看退回是否已啟動,因為使用者將擁有屬性backoffCounter> 0。
您可以在以下位置找到更多詳細信息
- 輪詢消費者
- 文件組件
翻譯自: https://www.javacodegeeks.com/2013/08/apache-camel-2-12-backoff-support-for-less-aggressive-polling-routes.html
apache.camel
總結
以上是生活随笔為你收集整理的apache.camel_Apache Camel 2.12 –支持后退,以减少不太积极的轮询路线的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 了解Java中的可克隆接口
- 下一篇: 如何在Mac电脑中添加普通账户电脑如何加