Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在面向服务的体系结构中何时使用web api而不是依赖注入_Java_Api_Dependency Injection_Soa_Asp.net Web Api - Fatal编程技术网

Java 在面向服务的体系结构中何时使用web api而不是依赖注入

Java 在面向服务的体系结构中何时使用web api而不是依赖注入,java,api,dependency-injection,soa,asp.net-web-api,Java,Api,Dependency Injection,Soa,Asp.net Web Api,在一个项目中,每个请求消息都有不同的处理器,可以根据配置启用或禁用这些处理器。我有两个选项,一个是在我的应用程序中使用这些处理器的jar库并使用其类,另一个选项是使每个处理器像一个独立的web api一样获取并返回json对象,这样,这些处理器之间的通信将基于web api而不是使用jar库。 你认为这些选项中哪一个更好,我在做出这样的决定时需要考虑什么。 谢谢取决于服务内容,但总体而言 使用jar将节省客户端和新服务之间的网络跳数 相反,如果jar占用了大量资源,那么将其作为一个单独的服务放

在一个项目中,每个请求消息都有不同的处理器,可以根据配置启用或禁用这些处理器。我有两个选项,一个是在我的应用程序中使用这些处理器的jar库并使用其类,另一个选项是使每个处理器像一个独立的web api一样获取并返回json对象,这样,这些处理器之间的通信将基于web api而不是使用jar库。 你认为这些选项中哪一个更好,我在做出这样的决定时需要考虑什么。
谢谢

取决于服务内容,但总体而言

  • 使用jar将节省客户端和新服务之间的网络跳数
  • 相反,如果jar占用了大量资源,那么将其作为一个单独的服务放在另一台机器上可能会更有效
  • jar文件作为项目依赖项很容易管理,而api服务可能涉及更复杂的发布过程
  • 如果您管理jar文件,您可能会更紧密地耦合代码,因为您可以控制它。拥有一个api在某种程度上推动您编写更干净的代码
我认为这实际上取决于您的jar在做什么,以及您在自己的jar中打包的服务最有意义的是什么