Azure 应用服务 VS WebJob

2024-05-05

我对单独使用应用程序服务和将应用程序服务与网络作业结合使用之间的差异感到困惑。

我有一个计算密集型任务(2-20 分钟),必须手动触发(用户不时要求它)。现在一切都发生在一个应用程序服务中。我正在考虑将这个繁重的过程提取到另一个应用程序服务中的网络作业中。这个新的应用程序服务将为空(不提供 api),但托管此 Web 作业,我将从第一个应用程序服务触发该作业。

我很烦恼第二个应用程序服务将为空。 我可以使用第二个应用程序服务来完成工作而不使用 webjobs(仅 WebApi 项目)吗?或者我应该坚持网络工作?这两种方法的优缺点是什么?


在我看来,我们不应该比较 web api 和 web jobs。因为这两个东西用于不同的环境。

网络工作的特点:

  • Web 作业可以配置为手动触发或在 日程。

  • Web 作业可以配置为持续运行(也称为始终持续运行)

  • Web 作业可以设置为根据其他 Azure 服务中的事件触发,例如添加到存储队列或服务总线队列或主题的新消息
  • Web 作业可以长时间运行
  • Web 作业可以是短期运行的
  • Web 作业可以用任何语言作为命令行可执行文件或脚本来实现

可以实施 Azure Web 作业来满足任何后台处理需求。

因此,如果您想使用后台处理并且不想将响应返回到任何其他应用程序。我建议你可以选择webjobs。

Web api很容易构建HTTP服务供客户获取响应。

所以这是用来与他人互动的。所以如果你想得到结果并在任何其他地方使用。您可以选择 Web api。

Web API 功能:

  • 属性路由
  • CORS - 跨源资源共享
  • OWIN(.NET 开放式 Web 接口)自托管
  • Web API OData ...

总而言之,如果计算不会与其他人交互(将结果返回给客户),我建议您可以选择Web作业。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Azure 应用服务 VS WebJob 的相关文章

随机推荐

  • 相当于一个允许重复键的排序字典

    我需要一个数据结构 可以通过与对象关联的浮动键对对象进行排序 从低到低的在前 问题是键代表成本 所以经常有重复 我不关心这一点 因为如果两个具有相同的成本 我只会抓住第一个 因为它没有区别 问题是编译器抱怨 是否有一种数据结构的行为方式相同
  • 导入数据期间解析日期格式的最佳方法

    我创建了在数据导入 400 K 记录 期间解析视图不同日期格式的方法 我的方法捕获 ParseException 并尝试在不同时使用下一种格式解析日期 问题 在数据导入期间设置正确的日期格式是更好的方法 更快 吗 private stati
  • ASP.NET Core 测试 - 没有方法 'public static IHostBuilder CreateHostBuilder(string[] args)

    我正在尝试在测试中设置我的应用程序并在中使用Startup s Configure method context Database EnsureCreated 并期待着Sqlite文件出现在Test sbin文件夹 这是我的代码 using
  • 为什么实体框架会生成大参数?如何减少它们?

    在一个非常简单的数据库查询中 service GetAll
  • UserDict 类的优点?

    使用有什么好处UserDict class 我的意思是 我真正得到的不是 class MyClass object def init self self a 0 self b 0 m MyClass m a 5 m b 7 我将写下以下内容
  • 如何设置 Eclipse 以停止发生异常的线路?

    如何设置 Eclipse 在发生异常时停止 我有一个 Eclipse 断点设置来在异常时中断 在下面的代码示例中 我遇到的问题是 Eclipse 尝试打开 Integer 源代码 有没有办法让调试器在我的代码示例中显示的位置中断 如果我向下
  • 当Where子句中的术语不在数据库中时,如何从MySQL数据库返回0?

    如果 WHERE 子句中的邻域不存在 如何让 mysql 数据库返回 0 因此 在下面的示例中 旧城区不在数据库中 我希望数据库返回 0 个事件而不是空结果 SELECT incidents neighborhoods FROM myTab
  • canvas:如何在一个变换语句中完成平移、倾斜、旋转...?

    最近几天我在学习 变换 现在我知道如何通过变换的矩阵进行平移 旋转 倾斜 缩放 但如果我想在一个转换语句中执行上述所有操作 我该怎么办 ctx transform a b c d e f 当我们想要通过变换旋转某些东西时 我们必须为每个参数
  • C - '=' 标记之前的预期表达式...在没有 '=' 的行上

    我疯狂地试图找出这个与现实 我的代码没有明显联系的错误消息 我一直在这里搜索并得出一个结论 你会讨厌 typedef 隐藏的指针 抱歉 这超出了我的控制范围 教授以这种方式提供了代码 我正在编辑问题中指定的代码 我弹出完整节点以避免每个推送
  • 在 Rails 5 控制器集成测试中设置 cookie.signed

    想象一下这样的场景 有一个控制器集成测试调用一个控制器方法 其中cookie signed用于一些完整性检查 控制器 app controllers foo controller rb def index entity FooEntity
  • 如果我不保留 IBOutlet 会怎样?

    如果我这样做 interface RegisterController UIViewController
  • Chrome 的萤火虫

    谁能推荐一个类似于 Firebug 的不错的 Google Chrome 扩展程序 我确实看到这里有几个类似的问题 但答案似乎非常过时 Thanks It s built in Press Ctrl Shift I Or Tools gt
  • EntityFramework:“参数值超出范围。”

    我在 EntityFramework 模型优先 中保存小数时遇到问题 在我的 EDMX 中 我声明我的属性为 Decimal 30 10 然后我尝试保存该数字 1215867935736100000 结果是 Parameter value
  • 视频流上的 TCP 与 UDP

    我刚从网络编程考试回来 他们问我们的问题之一是 如果您要传输视频 您会使用 TCP 还是 UDP 请解释一下存储视频和实时视频流 对于这个问题 他们只是希望得到一个简短的答案 TCP 用于存储视频 UDP 用于实时视频 但我在回家的路上想到
  • “上下文模式”的这种实现看起来不错吗? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我有多个处理单元可能存在于一个数组中 每个处理单元都有自己的参数 我想使用以下方式传达每个处理单元的参数上下文模式在它被建议作为另一个问题的解答 ht
  • Apache2 mod_wsgi 403 禁止错误

    我已经正确配置了它 但后来我决定重新安装我的 Debian 顺便从 wheezy 切换到 jessie 版本 问题是这样的 我有一个 python mod wsgi 应用程序 mnt doc Python www index py ls l
  • 将十六进制字节数组解码为特定代码页在随后编码时会产生错误结果

    我创建了一个简单的应用程序 如下所示 String stringValue new String new byte 0x00 0x00 0x00 0x25 273 byte valueEncoded Arrays copyOfRange s
  • 如何使用环回设置 OAuth 2.0 服务器

    我想使用名为 Loopback component oauth2 的包使用 Loopback 设置 OAuth 2 0 服务器 文档在这里 https docs strongloop com display public LB OAuth
  • 使用工作表作为数据源的 VSTO Excel 的简单示例

    我想我遇到了 最简单的答案是最难找到的答案 的情况 而且我还没有遇到过任何搜索能够以直接的方式给我这个答案 这是为了Excel 2010 and VS 2010在现有 VSTO C 项目中 我有一个 Excel 工作表 其中包含 4 列数据
  • Azure 应用服务 VS WebJob

    我对单独使用应用程序服务和将应用程序服务与网络作业结合使用之间的差异感到困惑 我有一个计算密集型任务 2 20 分钟 必须手动触发 用户不时要求它 现在一切都发生在一个应用程序服务中 我正在考虑将这个繁重的过程提取到另一个应用程序服务中的网