当前位置: 首页 > 面试题库 >

RESTEasy客户代理开销?

厉钊
2023-03-14
问题内容

我正在使用客户端代理创建RESTEasy服务,并且到目前为止效果很好。但是,我确实注意到,在我的一些函数中,我看到的是同一行代码:

MyClass client = ProxyFactory.create(MyClass.class, "http://localhost:8080");

是否最好将其从函数中删除并使其成为类的成员变量以减少可能的开销?该服务将处理10000 reqs / min的负载。谢谢


问题答案:

例如,您可以将MyClass客户端指定为spring bean,并在需要时将其注入。请注意线程安全性,因为RestEasy代理客户端在Apache
Commons Http客户端以及默认情况下不是html" target="_blank">线程安全的SimpleHttpConnectionManager之下使用。

要在多线程环境(在Servlet容器中运行)中实现此目标,请执行以下操作:

MultiThreadedHttpConnectionManager connectionManager = new MultiThreadedHttpConnectionManager();
HttpClient httpClient = new HttpClient(connectionManager);

// Only needed if you have a authentication
Credentials credentials = new UsernamePasswordCredentials(username, password);
httpClient.getState().setCredentials(AuthScope.ANY, credentials);
httpClient.getParams().setAuthenticationPreemptive(true);

clientExecutor = new ApacheHttpClientExecutor(httpClient);

MyClass client = ProxyFactory.create(MyClass.class, "http://localhost:8080", clientExecutor);


 类似资料:
  • 我有一个使用RESTEasy的简单客户端,如下所示: 服务器配置为在以及一条有用的信息。正在抛出一个。除了包装在中之外,我如何使捕获异常并以字符串形式返回响应的有用消息。我尝试了各种实现,但似乎都是正确的。上述代码从未调用。我错过了什么? 我目前的解决方法是使用,然后执行并将原始状态填充到响应实体中。这样我就避免了异常抛出。

  • 我正在尝试编写简单的RESTEasy客户端。下面给出了示例代码: 我在行中得到异常: 我在控制台中看到以下错误: 更新:我还尝试在POM中添加resteasy jax-rs依赖关系。我还通过在web.xml中添加以下行来验证是否启用了ResteasyProviderFactory: 请查看以下maven依赖项列表: 但这不起作用。 但现在我看到了其他方法的类似异常: 我在行中看到了这个例外: 奇怪

  • 问题内容: 我正在玩RESTEasy以使用REST服务,并且正在使用Twitter的搜索API进行尝试。 所以我创建了这个接口: 并用以下命令调用它: 但是我得到了: ClientResponseFailure:无法找到内容类型为application / json; charset =“ utf-8”的MessageBodyReader并键入接口java.util.Set 我尝试使用POJO而不

  • 我有一个客户机包,其中定义了我的REST客户机,包含以下接口和模型: 编辑: 我使用的是quarkus-rest-client-jackson和quarkus-rest-client依赖项,任何地方都没有jsonb依赖项。 我试图缩小这个问题的范围:我已经将客户机/请求类移到我的主包中,并且我已经删除了lombok注释,并将我的具有Jackson注释的字段公之于众。还是同样的问题...谁能指出我做

  • 我有一个常规的云服务器设置,我有一个移动应用程序通过HTTP请求与服务器交谈。我也有一个Wifi设备,我需要发送消息,我想通过MQTT做到这一点。当移动应用程序发生一些变化时,我希望云服务器通过MQTT发布一个主题,这样wifi设备就可以接收消息。经纪人也可以是客户吗?我是不是理解错了?

  • 我在RestEasy客户端-3.0.8中得到以下异常