Apache camel 一个osgi模块中有多个上下文-需要注意什么?
应用程序有几个camel上下文,每个上下文做自己的事情,因此不需要彼此通信。它们位于同一模块中,因为它们共享一些类 在单个osgi模块中存在多个上下文的情况下,是否有需要注意的问题Apache camel 一个osgi模块中有多个上下文-需要注意什么?,apache-camel,osgi,Apache Camel,Osgi,应用程序有几个camel上下文,每个上下文做自己的事情,因此不需要彼此通信。它们位于同一模块中,因为它们共享一些类 在单个osgi模块中存在多个上下文的情况下,是否有需要注意的问题 在这种情况下,建议和最佳做法是什么?这是相当主观的。IMHO:要考虑的两件大事是过程控制和升级影响。请记住--在捆绑包升级过程中,所有上下文都将停止,然后重新启动 您仍然能够在驼峰上下文和路由级别执行细粒度过程控制(启动、停止、暂停、恢复),而不必依赖于bundle start | stop 如果您想要细粒度的升级能
在这种情况下,建议和最佳做法是什么?这是相当主观的。IMHO:要考虑的两件大事是过程控制和升级影响。请记住--在捆绑包升级过程中,所有上下文都将停止,然后重新启动 您仍然能够在驼峰上下文和路由级别执行细粒度过程控制(启动、停止、暂停、恢复),而不必依赖于bundle start | stop
如果您想要细粒度的升级能力,您可以将Java类放在它们自己的包中,导出包。然后将Camel上下文放在它们自己的包中,并从共享包导入Java类。然后,您就可以对Camel上下文进行单独升级,而不必同时升级所有上下文(并强制所有上下文停止)。这是相当主观的。IMHO:要考虑的两件大事是过程控制和升级影响。请记住--在捆绑包升级过程中,所有上下文都将停止,然后重新启动 您仍然能够在驼峰上下文和路由级别执行细粒度过程控制(启动、停止、暂停、恢复),而不必依赖于bundle start | stop
如果您想要细粒度的升级能力,您可以将Java类放在它们自己的包中,导出包。然后将Camel上下文放在它们自己的包中,并从共享包导入Java类。然后,您就可以对Camel上下文进行单独的升级,而不必一次升级所有上下文(并强制所有上下文停止)。一个建议:使用无状态的bean/processors/aggregators 有关正文处理的所有与状态相关的信息必须位于Exchange标头/属性中
static final
常量很好。配置只读属性也很好。有一个建议:使用无状态的bean/processors/aggregators 有关正文处理的所有与状态相关的信息必须位于Exchange标头/属性中
static final
常量很好。配置只读属性也很好