使用DropWizard处理长请求

前端之家收集整理的这篇文章主要介绍了使用DropWizard处理长请求前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个简单的DropWizard服务,我想要一个REST API来启动一个长期运行的处理任务 – 包括cpu和I / O绑定. REST调用不会等待任务完成,通知将通过轮询/长轮询/ Web套接字发生.

现在,我更愿意,如果我可以在Dropwizard中执行此操作并将所有内容保存在单个可部署的JAR中.我有什么选择?

更新:我感兴趣的是我在Dropwizard中运行长时间运行任务的选项,部署为没有外部依赖的单个jar.只是产生一个新线程?假设这样的请求很少,它可能会起作用,但应该有更好的选择.

解决方法

您可能想要使用托管资源:

http://www.dropwizard.io/1.0.5/docs/manual/core.html#managed-objects

设置线程池.然后,您的初始请求可以将消息推送到队列.您的线程池可以从队列中提取消息并异步处理它们.

您可以提供一个额外的端点,以便客户端可以获取异步进程的当前状态.

猜你在找的Java相关文章