2

我们有一个 drupal (PHP) CMS 系统,它很快就超出了最初的需求。此后构建了一个 Java 后端,它现在可以完成大部分功能。这两个通讯使用 RESTful WS。两个系统都运行在同一台服务器上,所以这是一个本地 WS 调用。尽管这是一个本地呼叫,但感觉太笨拙了,而且我觉得我们不应该真正使用 Web 服务来进行这种集成。

我相信 php-java 桥的性能会更好(http://php-java-bridge.sourceforge.net/pjb/),因为他们声称比通过 SOAP 进行本地 RPC 调用快 50 倍。我看到 php-java 桥使用 XML 流,所以我认为性能会类似于 XML-RPC。

我知道回答这个问题的最佳方法是编写 POC,但由于时间限制(截止日期紧迫),这是不可能的。所以我的问题是,是否有人对这些进行了基准测试,或者任何人都可以提供有关他们与这两种技术相关的经验的见解。特别是与性能有关的信息。

提前致谢。

4

2 回答 2

1

一些想法

  1. 您的 RESTFul WS 是否以 JSON 格式公开资源?与 XML 相比,JSON 格式处理起来更轻、更快
  2. 请记住 SOAP 通过给定的 XSD 进行验证,也许这个框架没有使用 XSD 来执行验证(这可能是有风险的)
  3. 上面的解决方案符合 JSR 223,即脚本引擎 JSR - 这很好 - 如果需要,您可以用其他供应商替换它
  4. 我看到它使用了一个快速的 CGI HTTP 服务器——据我所知,这是一个高度可扩展且具有非常好的 CGI 性能的服务器。

听起来这可能是一个很好的候选 - 与 SOAP 相比,该协议进行了优化(我有 SOAP 经验)。

总而言之 - 如果您的 RESTFul Web 服务不能公开 SOAP - 我会考虑这种方法,但是您需要验证 drupal 是否可以与 FastCGI 一起使用。

于 2012-06-26T08:43:44.143 回答
1

我也遇到过类似的情况,但最终决定使用 JSON 和 REST 而不是 php-java 桥来实现。降低复杂性和更多地重用作为 REST 公开的服务的重要性超过了对更好性能的需求。

于 2013-10-22T10:04:36.053 回答