2013-11-27 62 views
0

哪种方法可以提供更好的性能?通过REST或通过JNDI消费服务

一种方法 - 让HTTP URL连接到消费REST服务

第二种方法 - 做一个JNDI查找,然后调用该对象的API来使用该服务

+2

与位置透明度不同的是性能问题。就像你今天的其他问题一样,很难猜出你真正想知道的。 – Henry

+0

@Henry那么,性能没有什么区别?请让我知道在我的问题中有什么令人困惑 – gurvinder372

+1

也许有,但你不会看到它。你将要面临的最大瓶颈是网络性能,而不是代码性能。而且由于这两种方式最终都会进行HTTP调用,所以没有区别。在出现实际性能问题之前,您不应该担心性能问题。过早优化是一个非常不好的习惯。 – Gimby

回答

1

正如在JNDI vs HTTP/TCP已经回答了, JNDI独立于传输协议。它只是访问目录服务的Java API。

将此与JDBC进行比较:它是与数据库交谈的Java API。实际的通信取决于JDBC驱动程序。它甚至可以是直接调用的内存数据库,也可以是用供应商特定的网络协议调用的远程数据库。

在您在问题JNDI描述的第二方法将被用来定位用于web服务的存根对象。一旦获得存根,JNDI就不在游戏中。

当在存根的方法被调用时,将存根它翻译成HTTP请求,因为一个RESTful web服务被调用。但是,再一次,这不再是正在做它的JNDI。

明智的性能,存在除了用于第二种方法中,附加的查找步骤没有差别。

+0

感谢您提供明确的答案,非常有帮助 – gurvinder372