我需要在使用Ruby与Java进行SOAP集成之间做出决定.我的整个Web应用程序都是基于Ruby on Rails构建的,并且有一个重要的后端组件必须使用SOAP与遗留系统集成.
Java拥有广泛的SOAP库,如Apache Axis,似乎可以很好地与这种“遗留”Web服务集成,而Ruby有一些像Savon和handSOAP这样的宝石.
我偏向于使用Ruby库,但我担心性能/可伸缩性问题.使用Ruby附带的性能/可伸缩性问题是什么?
为了获得更多上下文,与遗留系统的集成有两个组成部分:日常流程,其性能不太重要;以及实时查询引擎,其性能非常重要,因为用户在处理查询时正在等待.
解决方法:
我最近面临同样的挑战.我最初使用Java,但最终将所有内容移植到Ruby上,使用Builder来构造请求,将Nokogiri移植到解析响应中.我还使用SoapUI来帮助开发/调试请求.
为什么我最后使用Ruby而不是Java …
>更简单的基础设施.如果您不需要,为什么在您的架构中有两种不同的范例.如果您的站点是Ruby on Rails,除非您需要,否则为什么要将Java引入其中.
> Java有一些很好的库,比如Axis,可以将SOAP请求转换为对象.但这确实不是一个大问题.但是,当我的大部分逻辑都在Ruby中时,真的不是那么多.通过Nokogiri与DOM合作比使用中间Java对象要容易得多.
>我的所有逻辑(ActiveRecord模型对象,验证等)都是Java语言.我不得不复制像数据库持久性这样的逻辑,以便在Java代码和Rails代码之间进行通信……嘘
>性能问题似乎是一个红色的鲱鱼.如果您正在发出SOAP请求,网络开销可能是您的瓶颈,而不是语言解析/执行.
原文地址:https://codeday.me/bug/20190621/1254955.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。