我们已经使用Apache Camel作为独立应用程序约2年了。它运行得非常好,但每次添加新路由时需要重新启动进程来升级应用程序成为一个问题。
我们正在寻找一种新的部署解决方案,可以允许我们在不必重启主进程的情况下部署新路由。
对于我们来说,重新编写Java DSL路由到XML中没有问题,但问题在于其中大多数(以及可能的未来路由)使用自定义的bean、处理器、组件等注入了一些太复杂而无法用纯XML / Java DSL路由表达的逻辑。
通过搜索Camel文档,似乎可以使用spring-boot或Karaf / OSGI进行XML路由的“热部署”。
但我不知道是否可以“热部署”这些XML路由所需的bean、处理器、组件等类。 OSGI / Karaf看起来很有希望,但我从未使用过这两种技术,而且一开始很难理解它们的目的。
哪种部署方法和哪种技术可以允许我们“热部署”路由和bean类?