作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在通过 Spring 集成开发多属性微服务。我从数据库(例如 LOGIN 表)获取每个属性的登录凭据。 LOGIN 表有这些字段; LOGIN.username、LOGIN.pass 和 LOGIN.period(轮询者的周期)。如果我想使用基于 LOGIN.period 字段的不同轮询器配置的微服务,我该怎么做?
@Bean
public IntegrationFlow start() {
return IntegrationFlows
.from(() -> DAO.getLoginList()) // from a web service.
.split() // splits the each login credentials for each property.
.channel("X_CHANNEL") // subscribes to a channel todo business logic.
.get();
}
是否可以实现一个组件,根据数据库中的 LOGIN.period 值在不同的轮询器配置中进行工作流程?
最佳答案
根据 Artem Bilan 的回答,我实现了 IntegrationFlowContext 和 IntegrationFlow 实例;
@Autowired
IntegrationFlowContext flowContext;
@Bean
public void setFlowContext() {
List<Login> loginList = DAO.getLoginList(); // a web service
loginList.forEach(e -> {
IntegrationFlow flow = IntegrationFlows.from(() -> e, c -> c.poller(Pollers.fixedRate(e.getPeriod(), TimeUnit.SECONDS, 5)))
.channel("X_CHANNEL")
.get();
flowContext.registration(flow).register();
});
}
关于spring-integration - 是否可以为数据源中的每个实体配置轮询器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64122660/
我是一名优秀的程序员,十分优秀!