问题标签 [eai]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
249 浏览

spring-boot - 异步微服务的断路器..?

有一个 ActiveMQ 队列 ( QueueA)。服务 ( MyService) 订阅消息、处理它并将消息发送到另一个 ActiveMQ 队列 ( QueueB)。

考虑一个有数千条消息的场景QueueA。同时,QueueB是下来。如果在向QueueB. 它应该在特定时间段内测试滚动窗口(例如,100 条连续消息在 60 秒内失败)并停止从QueueA. 然后,它应该通过再发送一条消息来测试服务是否在 15 分钟左右后启动。如果仍然失败,QueueA请再次停止消费 15 分钟。

现在,正在发生的事情是所有消息都出错了,我们必须再次重新处理每条消息。有一种恢复机制,但由于当前架构的限制,恢复机制变得超负荷。

这有什么模式吗?它是同一个断路器吗(我在同步上下文中知道它)。如果是这样,不确定 Java / Spring Boot / Apache Camel 中是否有解决方案。是的,这就是我们目前使用的技术堆栈。即使您可能不了解此特定技术平台,该模式的任何指南也会有所帮助。

我还在 StackOverflow 中阅读了以下问题。

断路器模式是否也适用于异步请求?

感谢并感谢您花时间帮助我。

0 投票
1 回答
56 浏览

design-patterns - 异步通道的断路器以及死信通道

我需要将断路器与死信通道 (DLC) 一起使用。错误输出的消息应发送至 DLC。当电路打开时,不应使用其他消息。现在我已经实现如下:

问题是如果启用 DLC,这将无法按预期工作。但是,如果我注释以“”开头的行errorHandler(deadLetterChannel(),它将起作用 - 意味着上述代码仅适用于默认错误处理程序。

我的问题是 - 我希望错误消息进入错误队列并且我希望启用断路器。有什么办法吗?非常感谢您的宝贵时间。

0 投票
2 回答
93 浏览

routes - 如何为 Camel 组件/端点编写 Camel Quarkus 扩展?

我有一个自己的骆驼组件/端点,我在Spring Boot App的许多路线中成功使用了它。我正在尝试迁移到camel quarkus并在我的应用程序中使用相同的路由。

通过简单地添加相关依赖项,无法在我的camel-quarkus 应用程序中使用此组件/端点: quarkus无法像Spring Boot那样发现此组件/端点

显而易见的解决方案是编写一个使用这个camel-component的quarkus扩展:使用相应的camel-components实现jdbcfilesqlquarkus扩展。

如果我们查看其运行时模块的 sql 的 pom-xml,我们会发现它使用了等效的camel-sql 组件

我的问题是,即使按项目构建(我正在使用 eclipse),quarkus 仍然没有发现组件/端点,quarkus 显示它已经安装了我的扩展。我在互联网上搜索了很长时间,但没有找到任何有用的来源。

0 投票
0 回答
38 浏览

email - 为什么正则表达式不适用于输入类型“电子邮件”?

我使用了输入类型为“电子邮件”的正则表达式模式,它应该支持 ASCII 和 Unicode 字符。

但是,当我尝试提交时,即使是 ASCII 电子邮件地址,它也会显示“请匹配请求的格式”。

代码如下:

为什么会这样。任何有关这方面的信息将不胜感激。

谢谢你。