请帮助新手:
我想到的是:
项目#3和#4是我遇到大部分问题的地方:不知道这里做了什么 项目#6我相信我对如何做有一些想法,但很想听听你的建议
我所知道的是:
提前感谢您的所有输入。
答案 0 :(得分:0)
您当然可以使用代码从Web角色实例中找到辅助角色实例的内部端点。有关详细信息,请参阅此主题:How to get web role input endpoint in worker role?。
但是我发现你的方法存在一个问题。您提到Web角色将使用内部端点与worker角色进行通信,以发送数据,然后等待worker角色处理该数据并发回响应。虽然从技术上讲它可能会这样做,但它会导致一些可扩展性问题,因为您现在正在占用您的Web角色。此外,您必须在代码中决定哪个工作者角色实例应该处理数据(假设有多个实例)。
我的建议是获取请求并将请求数据保留在blob存储中。您将获得blob的URL。然后使用blob的URL在队列中写入消息。将消息写入队列后,您的Web角色可以通知用户该请求已提交。工作者角色实例将定期轮询此队列并处理该消息。他们将从消息内容中获取blob URL,获取内容并对其进行处理。处理完工作后,工作者角色可以写入队列/表,指示工作已完成。 Web角色可以不断轮询此表或队列,一旦任务完成,它就可以通知用户。