【发布时间】:2017-09-07 06:05:38
【问题描述】:
我正在使用 API 网关通过 https 调用 Java AWS Lambda。
我有一个案例,我很快就知道我想从我的 Lambda 返回什么状态,但我还有更多工作要做,这不会影响状态。
有没有办法向调用者提供状态,但不会结束 Lambda 的执行?
我试过了:
@Override
public void handleRequest(InputStream inputStream, OutputStream outputStream, Context context) throws IOException {
JsonWriter writer = new JsonWriter(new OutputStreamWriter(outputStream));
writer.beginObject();
writer.name("statusCode").value("200");
writer.endObject();
writer.flush();
writer.close();
try {
// this wait represents other work my Lambda is doing,
// e.g. DB calls, requests to other webservices
Thread.sleep(10 * 1000);
} catch (InterruptedException e) {
}
}
但是调用者仍然需要 10 秒才能看到状态。 有什么方法可以做我想做的事吗?
我想让我的应用程序尽可能简单,并尽可能少地启动 Lambda,而不会让调用者等待不必要的时间。
【问题讨论】:
标签: java amazon-web-services aws-lambda