PHP-Java Bridge与RESTful Web服务:关于性能哪个更好?

时间:2012-06-26 08:00:35

标签: java php performance php-java-bridge

我们有一个drupal(PHP)CMS系统,它很快就超出了原来的要求。从那以后,Java后端已经构建完成,现在它已经完成了很多功能。这两个使用RESTful WS的通信。两个系统都在同一台服务器上运行,因此这是一个本地WS调用。即使这是本地电话,但感觉太笨重了,我觉得我们不应该真正使用网络服务进行这种集成。

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

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

提前致谢。

2 个答案:

答案 0 :(得分:1)

一些想法

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

    总而言之 - 如果您的RESTFul Web服务无法公开SOAP - 我会考虑这种方法,但是您需要验证drupal是否适用于FastCGI。

答案 1 :(得分:1)

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