关于spring intergration的流量控制问题
各位好,小弟有一问题请教情况:
最近在使用spring intergration进行开发,使用了一个轮询器int-jdbc:inbound-channel-adapter的功能,但在数据量大的时候,由于轮询的频率和每次获取的数目是写死在配置上的,所以经常导致mq消息堵死。
xml代码:
<task:executor id="adpCommOrgDBBULLETINTaskExecutor" pool-size="1" queue-capacity="0" rejection-policy="DISCARD"/>
<int-jdbc:inbound-channel-adapter
id="adpCommOrgDBBULLETIN"
query="select * from BT_BUL_ORG_MAPPING as b where b.STATUS='W' limit 0,10"
update="update BT_BUL_ORG_MAPPING set STATUS='A' where BULLETIN_ID in (:bulletinId) and BT_BUL_ORG_MAPPING.STATUS not in ('S','I')"
channel="chlOrgDBInput_MNG_BULLETIN_SET"
row-mapper="btBulOrgMappingRowMapper"
data-source="defaultDataSource"
update-per-row="false"
max-rows-per-poll="50"
auto-startup="false">
<int:poller fixed-rate="1000" max-messages-per-poll="10" task-executor="adpCommOrgDBBULLETINTaskExecutor">
<int:transactional transaction-manager="defaultTxManager"/>
</int:poller>
</int-jdbc:inbound-channel-adapter>
问题:
请问spring intergration或者其他spring的框架有没有可以实现流量控制这一功能,比如说高峰时能自动降低数据库轮询频率等。求大虾和朋友们指点一下。
--------------------编程问答-------------------- 顶一下!!求助求助 --------------------编程问答-------------------- 不明白为什么要采用数据库轮询机制。
网上有很多关于数据库轮询的文章,但是我个人感觉所有经历的项目都没有采用数据库轮询。
补充:Java , Java EE