【问题标题】:What is the correct way to run a non-API service in Quarkus?在 Quarkus 中运行非 API 服务的正确方法是什么?
【发布时间】:2019-11-17 08:54:46
【问题描述】:

我了解 Quarkus 拥有主线程,但似乎没有一种干净的方式来启动不提供 REST 端点的服务。我有一个连接到数据源并将数据流写入数据库的服务,没有 API。我能找到的最佳解决方案是观察启动事件:

fun onStart(@Observes event: StartupEvent)

然后注入我的服务实例并在那里启动它。

有更好的建议吗?

【问题讨论】:

    标签: quarkus


    【解决方案1】:

    您的用例是什么?

    启动服务的方式有很多种: - 像你一样听系统/CDI事件, - 使用调度程序(参见 Quarkus 指南), - 通过收听传入消息使用 JMS 或 Kafka 等消息传递, - 使用 Apache Camel,您可以通过收听几乎任何内容来触发您的服务:jms、文件、计时器、电子邮件等。

    【讨论】:

    • 就像我在问题中所说的那样,这很简单,服务的工作是启动、连接到远程 web-socket 并将数据流持久化到数据库中。而已。似乎最好/唯一的选择是处理启动事件,因为不会有像 Kafka 消息这样的外部触发器..
    猜你喜欢
    • 1970-01-01
    • 2014-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-19
    • 2019-11-22
    相关资源
    最近更新 更多