为 Retrofit 创建新对象会减慢服务响应时间吗?

Does creating new object for Retrofit slows the service response time?

每次使用网络服务时,我都使用改造来创建新对象。 Web 服务响应时间很好。但是当在应用程序中尝试时它会变慢。

这会影响响应吗?

Retrofit retrofit = new Retrofit.Builder()
            .baseUrl(ApiConstants.BASE_URL)
            .addCallAdapterFactory(new ErrorCallback.ErrorHandlingCallAdapterFactory())
            .addConverterFactory(GsonConverterFactory.create())
            .build();

在 Retrofit 文档中,构建、baseUrl、addCallAdapterFactory、addConverterFactory 操作不建立任何连接。这是有道理的,因为它们仅用于准备 Retrofit 实例以进行通信。

此外,考虑到 restful 服务通常使用 HTTP 进行通信,因此无需为每个会话建立连接。每次调用 Web 服务 api 的操作时都会建立连接。

因此,每次创建实例不会影响通信,但会影响客户端cpu和不必要的内存资源。

创建一个新的 Retrofit 实例确实会影响响应时间,我可以通过我自己最近的经验来证实这一点。如果我为每个请求创建新实例,我得到的响应时间是 >= 1700 毫秒,而当我使用单个实例进行 API 调用时,我在 <= 500 毫秒内得到响应。