OSGi服务的消息总线 我正处于一个项目中,我们将基于一套基于OSGi服务的更大规模的定制技术迁移一个主要的软件系统。为此,我们可能需要一种与OSGi服务配合良好的消息总线 同步和异步传递 仅点对点 保证交付-最好通过文件持久化 严格的消息顺序来自同一个客户端(异步模式),但必须来自不同的客户端 支持流程到流程和节点到节点,但不是严格要求

OSGi服务的消息总线 我正处于一个项目中,我们将基于一套基于OSGi服务的更大规模的定制技术迁移一个主要的软件系统。为此,我们可能需要一种与OSGi服务配合良好的消息总线 同步和异步传递 仅点对点 保证交付-最好通过文件持久化 严格的消息顺序来自同一个客户端(异步模式),但必须来自不同的客户端 支持流程到流程和节点到节点,但不是严格要求,osgi,message-queue,message-bus,Osgi,Message Queue,Message Bus,首选开源解决方案,但不是必需的 我已经看过了(如中所建议的),但似乎效果不太好 所以问题是,哪些技术与上述技术相匹配?您不是在寻找ESB吗?是一个: 灵活的开源集成容器,将Apache的特性和功能统一到一个强大的运行时平台中,您可以使用该平台构建自己的集成解决方案。它提供了一个完全由OSGi提供支持的企业级ESB 看起来您在这里谈论的是ESB。如果是这样的话,那么你可以看看。它是由一个引擎驱动的。它使用OSGi作为模块化框架,因此您可以根据需要添加/删除功能。基于相同的OSGi核心平台,wso2

首选开源解决方案,但不是必需的

我已经看过了(如中所建议的),但似乎效果不太好


所以问题是,哪些技术与上述技术相匹配?

您不是在寻找ESB吗?是一个:

灵活的开源集成容器,将Apache的特性和功能统一到一个强大的运行时平台中,您可以使用该平台构建自己的集成解决方案。它提供了一个完全由OSGi提供支持的企业级ESB


看起来您在这里谈论的是ESB。如果是这样的话,那么你可以看看。它是由一个引擎驱动的。它使用OSGi作为模块化框架,因此您可以根据需要添加/删除功能。基于相同的OSGi核心平台,wso2提供了消息代理、业务流程服务器(ODE)等一整套服务

免责声明:我为wso2工作。

Tony

我刚刚完成了一个非常相似的成功项目,请允许我与您分享我的经验,以节省您的时间和贵公司的资金。首先也是最重要的是,ESB在8年前被提出时是一个非常好的主意。他们解决了一个重要的问题:如何以那些讨厌的程序员能够理解的方式定义业务问题?其目标是开发一个系统,允许业务人员创建一个软件解决方案,只需很少或根本不需要烦人的开发人员交互,就能更好地吸收用于管理奖金的资金

为了回答这个问题,许多组织中的优秀人员提出了JBI、BPMN和许多其他解决方案,让业务人员对他们想要“数字化”的业务流程进行建模。但实际上,它们在一个非常关键的层面上都存在缺陷:它们解决了业务问题,但没有解决集成问题。因此,这些实现中的许多都是不成功的,除非由某个高价顾问完成,即使这样,您的前景也很渺茫

与此同时,一些真正聪明的人在90年代末出版了一本名为《企业集成模式》的书,其中确定了60多种用于解决常见集成问题的设计模式。许多执行ESB的人意识到他们的问题不是业务建模。相反,问题在于如何集成它们现有的应用程序。为了帮助解决这个问题,Michael Strachan和一些真正聪明的人启动了Apache软件基金会项目“骆驼”。Camel是一个严格的企业集成模式实现,另外还有大量的组件,旨在让像您和我这样的人把东西连接在一起

所以,如果您认为您的业务流程只是需要将数据从一个应用程序发送到另一个应用程序,并在应用程序之间进行适当的数据转换,那么Camel就是您的答案。现在,如果您想根据数据库中的一组可配置规则来创建“路由”(要发送数据的一系列指定的应用程序端点),该怎么办?嗯,骆驼也能做到!这是一个终点!无论如何,不要做传统的ESB,它已经过时了。绝对要做骆驼的事


请告诉我这是否有帮助。

OSGi规范定义了一个组件“事件管理”,它是一个轻量级发布子事件子系统。 从RFC0157:

事件管理指定事件源向其发送事件的方式 事件侦听器。事件源可以创建具有主题和 属性并请求事件管理员将事件传递给事件管理员 声明对特定事件主题感兴趣和/或 属性值。事件源可以请求同步(和 无序)交付或异步(有序)交付

与您的要求相比,它的得分如下:

  • 同步和异步传递:检查
  • 仅点对点:否。发布订阅
  • 保证交付-最好通过文件持久化:NO
  • 从同一客户端(异步模式)订购的严格消息:YES
  • 对流程到流程的支持:if(流程==OSGi服务)->Yes
  • 支持节点到节点:尚未。这些家伙 分布式OSGi一直在致力于此,但我还没有看到 任何具体的东西

我喜欢Camel的概念,但最近决定使用(更轻的)事件管理,因为我的需求有限+1给骆驼上的迈克。我会仔细研究一下,然后在决定之前比较各种选项。

是访问@maasg提到的事件管理服务的一种更好的方式。

谢谢,很快:-)我会尽快查看ServiceMix。谢谢你的评论。我完全同意。我正在寻找一种非常低级的方法来帮助在更大的产品基础上以一种通用的方式连接到服务。。。我不是在寻找任何类型的商业建模。所以我会看一看骆驼,看看它在哪里合适。。。