我们正在开发一个应用程序集成器,它同时向各种 Web 服务发送请求,聚合每个 Web 服务返回的数据并将其格式化以显示在 UI 上。每个 web 服务都可能有专有的 xml 格式。此外,我们不会损害用户体验。
我们为此需求确定了 ESB(Servicemix/Mule)和 Async Http Client。
谁能建议哪个更好的选择?Async Http Client 似乎很合适,因为它在 servicemix 上是轻量级的。
谢谢,阿米特帕特尔
我们正在开发一个应用程序集成器,它同时向各种 Web 服务发送请求,聚合每个 Web 服务返回的数据并将其格式化以显示在 UI 上。每个 web 服务都可能有专有的 xml 格式。此外,我们不会损害用户体验。
我们为此需求确定了 ESB(Servicemix/Mule)和 Async Http Client。
谁能建议哪个更好的选择?Async Http Client 似乎很合适,因为它在 servicemix 上是轻量级的。
谢谢,阿米特帕特尔
您也可以为此使用Apache Came l...
它支持广泛的组件和消息传递模式,轻量级并且具有灵活的部署模型(独立、spring、maven、webapp、OSGi 等)。
你已经回答了你自己的。是的,ESB 是不错的选择。你可以使用骡子。
第二个选项是异步消息传递,但它会很复杂,因为您必须正确编排服务。
嗯,我们对纯 java 与 ESB(mule 和 spring 集成)的编码进行了生产力测试。我们有 3 名开发人员在所有 3 个版本(mule、SI 和没有 ESB 的纯 Java)中做同样的事情。他们在不使用 ESB 时完成速度快了 6 倍,我们在问题中提供了很多可以利用 ESB 的东西,但最终它没有帮助....所有 xml 编码和 api 用法的混淆导致了低效的开发团队。不仅如此,在市场上也很难找到 ESB 开发人员。
注意:我们甚至聘请了一位一直在做的高级 spring 集成人员,他在纯 java 中完成代码的速度也更快。他喜欢弹簧集成,在接受了我的测试后,他改变了主意。
IE。请注意,使用错误的框架可能会导致巨大的生产力损失。6次是一个巨大的惩罚。我的意思是 1 个月和 6 个月有很大的不同。
6 倍的生产力损失值得花一周时间进行自己的开发人员生产力测试。有些人跟我争辩说他们还不知道这个框架,这就是为什么我们让一个高级的 spring 集成人员来参加测试。
另外,请确保您的测试至少需要一个小时左右......只是从您将要编写的应用程序中开发一些虚假但现实的要求,以便您在运行研究时在应用程序上取得进展。我也有兴趣看到更多结果。