Azure应用服务VS Web工作
问题描述:
我对使用应用服务和应用服务与web作业之间的差异存在困惑。Azure应用服务VS Web工作
我有一个必须手动触发的计算激烈任务(2-20分钟)(用户不时要求)。现在一切都发生在一个应用服务中。我正在考虑将这个沉重的过程提取到另一个应用程序服务中的webjob。这个新的应用程序服务将是空的(没有api服务),但主持这个网络工作,我会从第一个应用服务触发。
我很困扰,第二个应用程序服务将是空的。 我可以使用第二个应用程序服务来完成工作而不使用webjobs(仅WebApi项目)吗?或者我应该坚持webjobs?这两种方法的优缺点是什么?
答
在我看来,我们不应该比较web api和web jobs。因为这两件事用于不同的环境。
的webjobs功能:
网上工作可以被配置为手动触发或在 时间表运行。
网上工作可以被配置为连续运行(又名不停地运转,所有的时间)
- 网上工作可以设置基于其他Azure服务,事件被触发,如一个新的传递消息加入到存储队列或服务巴斯队列或主题
- 网上工作可以长期运行
- 网上工作可以短期运行
- 网上工作可以用任何语言来实现为一个可执行命令行或脚本
可以实现Azure Web Jobs以满足任何后台处理需求。
所以,如果你想使用后台处理,并不想返回任何其他应用程序的响应。我建议你可以选择webjobs。
Web api很容易为客户构建HTTP服务来获得响应。
所以这是用来与他人互动。所以如果你想得到结果并在其他地方使用。你可以选择web api。
的网页API功能:
- 属性路由
- CORS - 跨源资源共享
- OWIN(开放的Web接口.NET)自托管
- 的Web API的OData ...
总而言之,如果计算不会与其他人交互(将结果返回给客户) ,我建议你可以选择网络工作。
我认为你正在寻找词microweb服务看看它可能会帮助你@Dmitry –
这个想法没有错,但你也可以检查Azure函数。取决于“计算密集型”的含义,但它可能是一个不错的选择。尽管如果你已经有了WebJobs,那么坚持下去可能会更容易一些。 –
我阅读了关于天青功能 - 他们不会工作,因为他们对他们的持续时间有限制 - 不超过5分钟 – Dmitry