Google app engine 在App Engine/Java上从后端启动前端延迟任务

Google app engine 在App Engine/Java上从后端启动前端延迟任务,google-app-engine,Google App Engine,是否可以从App Engine/Java上的延迟后端启动延迟前端任务。延迟任务是使用特定主机在后端启动的,其代码如下: queue.add(withPayload(new MyDeferredTask()).header("Host", BackendServiceFactory.getBackendService().getBackendAddress("backend1", 1)); 这很有效。如果从该后端启动延迟任务,则该任务也会在后端运行。是否有要使用的特定主机,或在前端显式启

是否可以从App Engine/Java上的延迟后端启动延迟前端任务。延迟任务是使用特定主机在后端启动的,其代码如下:

queue.add(withPayload(new MyDeferredTask()).header("Host",
    BackendServiceFactory.getBackendService().getBackendAddress("backend1", 1));
这很有效。如果从该后端启动延迟任务,则该任务也会在后端运行。是否有要使用的特定主机,或在前端显式启动延迟任务的其他方法

更新


在最初的问题中,我遗漏了一些重要信息:我说的是延迟任务,其中传递了有效负载。从后端启动延迟任务将在同一后端启动新的延迟任务。我想知道的是,当从后端启动延迟任务时,是否可以在前端显式启动延迟任务。上面的原始问题已被修改以反映这一点。

只需使用
URL获取服务调用前端“您要运行的servlet”的
URL
,或者使用servlet的URL将任务添加到一个队列中即可


前端只需处理对应用程序的所有HTTP调用,并将其发送到web.xml文件中配置的servlet,以回答我的老问题,特别是延迟任务-如果您有一个任务在后端运行,并且希望在前端启动一个任务,您应该明确指定前端实例的主机,即myapp.appspot.com。如果未指定主机,则任务将在与起始代码相同的实例上运行

要明确地从前端启动,无论调用方运行在哪个实例上,请执行以下操作:

Queue queue = QueueFactory.getQueue("my-queue");
TaskOptions taskOptions = TaskOptions.Builder.withPayload(new MyDeferredTask());
taskOptions.header("Host", "myappid.appspot.com");
queue.add(taskOptions);

谢谢然而,我遗漏了一点关键信息——我的问题是从后端启动延迟任务,而不是URL引用的标准任务。我已经更新了原来的问题。