当前位置: 首页 > 知识库问答 >
问题:

Azure函数:理解多个应用程序上下文中的更改提要

樊博雅
2023-03-14

根据下面https://docs.microsoft.com/en-us/azure/cosmos-db/change-feed-processor上的图表,至少有4个分区密钥范围分布在两台主机之间。在这张图中,我很难理解主机和消费者之间的区别。在Azure Functions的上下文中,如果说主机是Function应用程序,而使用者是活动/暖实例,这是真的吗?

我想创建一个包含N多个函数应用程序的设置,每个应用程序都有0-200个活动实例(取决于工作负载)。同时,我希望阅读更改提要。如果我在每个应用程序中使用具有相同连接字符串和租约容器的COSMOSDBTrigger,这是自动处理还是需要手动实现?

共有1个答案

孔鸿宝
2023-03-14

您链接的文档主要用于更改提要处理器,但是Azure Functions绑定实际上在下面运行更改提要处理器。

当仅仅使用CFP时,它可能更容易理解,因为您主要控制实例和分发,但我将尝试将它映射到函数。

该文档提到了部署单元的概念:

这篇文章中的一个重要说明是,伸缩支持更高的CPU池,但不一定是更高的并行性。

正如文档所提到的,即使在单个实例上,CFP也会处理和读取它在独立任务上拥有的每个租约。问题是,所有这些并行处理都共享同一个CPU,所以如果您当前看到实例有CPU线程/瓶颈,添加更多实例将会有所帮助。

现在,在你的例子中,你想有N个功能应用程序,我假设每一个,做一些不同的事情。基本上,微服务部署将触发任何更改,但执行不同的任务或激发不同的业务流。

 类似资料:
  • 我们有一堆azure函数记录执行上下文的度量...您似乎无法使用OOTB或(至少在我所看到的情况下)来完成此操作,因为没有一个与我假设的名称为的等价物。 所以..此url(https://docs.microsoft.com/en-us/Azure/azure-functions/functions-monitoring#custom-telemetry-in-c-functions)显示了利用A

  • 问题内容: 到目前为止,我以前一直认为Web应用程序只能具有我们在 我这样想对吗? 我可以在一个Web应用程序中拥有多个调度程序Servlet吗?如果是,如何? 在什么情况下我们可能需要这样做? 整个Web应用程序中只能有一个应用程序上下文吗? 我们如何定义多个应用程序上下文? 非Spring应用程序中可以存在吗? 问题答案: 一个Web应用程序中可以有多个调度程序servlet吗? Web应用程

  • 问题内容: 我想将上下文根从“ / war_name”(默认)更改为“ /”。 因此,我创建了一个jboss-web.xml文件,并将其推送到WEB-INF目录中。 该文件的内容是: 不幸的是,这在战争部署期间导致以下错误: 但是,当我输入诸如/ RoomManagement之类的目录名称时,没有此问题。但是,如果我使用这个,我将无法访问/ RoomManagement中没有的JSP。 您是否有一

  • 我在Netbean中创建了名为TestA的新war应用程序。然后,我创建了新的Glassfish部署描述符glassfish-web.xml,内容如下: 然后我将我的应用程序部署到GF。上下文根仍然 /TestA,而不是 /new_context_root.为什么? Glassfish版本为3.1.2.2 断续器 如果我通过自动部署文件夹进行部署,则上下文根会正常更改,但不会从web-admin更

  • 我们在OKTA SAML SSO与Spring Security的集成方面遇到了很多问题。我们使用Spring Security的扩展来配置身份验证,在HTTP上一切正常,但是当我们尝试使用HTTPS时,身份验证仅在应用程序部署在根()上下文上时才起作用。当我们将上下文更改为其他内容时,它会停止工作,并开始抛出字段错误,有时使用不同的配置,它会出现重定向循环。 以下是我们正在使用的配置: 我们也应

  • 我正在编写一些代码,使用Cosmos作为我的存储来实现事件源。我的初始文档成功写入集合。然后,我设置了一个Azure函数,该函数在该集合的提要发生变化时触发,并将项目复制到另一个集合。 我的问题是,虽然如果我在本地调试函数应用程序,这一切都可以正常工作(更改通过并无问题地处理),但函数在作为函数应用程序发布后不会触发。该函数存在,但总执行计数始终为0。就像该函数没有在计时器上运行并检查提要。我的函