0

我已经使用 HTTPListener 实现了一个简单的 HTTP 服务器,我需要从 HTTPListerner 启动一个运行大约 10 分钟的进程。当用户发出请求时,我不希望用户在浏览器中等待,直到进程完成,因为它会超时。所以我启动进程并返回一个状态。我怎样才能启动这个过程?

4

2 回答 2

1

进程.开始

还可以查看启动流程时的选项

于 2013-09-02T20:14:35.507 回答
1

在我看来,你应该:

  1. 接收请求并为其分配唯一 ID
  2. 启动进程
  3. 将唯一 ID 发回给用户
  4. 允许用户使用您的 ID 取回您的处理状态

如果这些 ID 存储在内存中或文件/数据库中,这是您的选择(取决于您的应用程序)。

另外考虑一下,如果这个简单的 HTTP 服务器托管在 IIS 上,那么 IIS 有机会在必要时立即终止您的进程,因此启动长时间运行的进程并不是一个好主意。

您应该使用 HTTP 服务器接收请求,然后从后端服务启动该过程。

于 2013-09-03T11:18:42.970 回答