簡體   English   中英

延遲一段時間后關閉 RESTEasy 客戶端

[英]Close RESTEasy client after a certain delay

我試圖在一定延遲(例如 5 秒)后關閉 RESTEasy 客戶端,看來我正在使用的當前配置根本不起作用。

     HttpClient httpClient = HttpClientBuilder.create()
            .setConnectionTimeToLive(5, TimeUnit.SECONDS)
            .setDefaultRequestConfig(RequestConfig.custom()
                    .setConnectionRequestTimeout(5 * 1000)
                    .setConnectTimeout(5 * 1000)
                    .setSocketTimeout(5 * 1000).build())
            .build();

ApacheHttpClient43Engine engine = new ApacheHttpClient43Engine(httpClient, localContext);

ResteasyClient client = new ResteasyClientBuilder().httpEngine(engine).build();

根據文檔,無論是否有有效負載,ConnectionTimeToLive 都應該關閉連接。

請在附件中找到鏈接

https://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/7.3/html-single/developing_web_services_applications/index#jax_rs_client

在我的具體情況下,有時會有一些延遲,並且有效負載以塊的形式發送(低於 socketTimeout 間隔,因此連接保持活動狀態,並且可能會發生客戶端活動數小時)

我的主要目標是殺死客戶端並釋放連接,但我覺得配置中缺少一些東西。

我正在使用wiremock通過在卡盤中發送有效負載來復制這個特定場景。

.withChunkedDribbleDelay

關於配置的任何線索?

您可以嘗試使用.withFixedDelay(60000) 而不是.withChunkedDribbleDelay()。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM