1

我需要用 Java 开发一个客户端 Rest API,它使用一个带有异步 http 的库。更具体地说,我可以进行 Rest CRUD 操作,返回 http 响应的 Future。我的问题是,我的包装 API 应该如何处理这些 Future 对象?我应该只为 API 的用户提供 Future 并由他来处理它,还是应该开发一些线程机制?

4

2 回答 2

2

恕我直言,如果我是您的 API 的使用者,我宁愿您不要执行我的多线程处理,除非:

我的意思是我不认为你会通过返回 Future 来增加任何价值,事实上如果我想自己处理线程很烦人,但你提供的只是异步 API(返回Future)。

现在使您的 API 客户端Threadsafe是首选并且我确实感兴趣(也就是说,我不想每次使用它时都必须实例化一个新客户端)。

但是,如果您使用的是async-http-client (NIO)之类的东西,那么该死的返回Future.

于 2012-08-24T14:01:22.587 回答
0

为什么需要它?- 我觉得将它作为高负载系统的未来很重要。

  • 作为一个 API,拥有这样的功能会很有帮助,因为你不知道消费者是谁。
  • 对于一个网站来说,如果它需要支持高负载,那么仅仅等待http响应将是浪费cpu时间。而是让它异步,使 http worker 更有效地处理其他请求。

  • 使用可以为您简化此操作的库。

于 2014-06-18T09:36:14.620 回答