Openwhisk:增加并发请求的数量



我有一个分布式Openwhisk设置,当我尝试一次对一个用户执行30多个请求时,我收到以下错误:

错误:无法调用操作"素数":并发过多 请求中(计数:30,允许:30(

知道我如何增加这个数字吗?

如果您使用的是 ansible 方法来部署 OpenWhisk,则可以使用以下 ansible-playbook 环境变量覆盖进行部署

-e limit_invocations_per_minute=999999 -e limit_invocations_concurrent=999999

如果要执行其他类型的部署,则需要使用相应的环境变量来部署控制器容器,以覆盖任何这些相关值。

"LIMITS_ACTIONS_INVOKES_PERMINUTE": "{{ limits.invocationsPerMinute }}"
"LIMITS_ACTIONS_INVOKES_CONCURRENT": "{{ limits.concurrentInvocations }}"
"LIMITS_TRIGGERS_FIRES_PERMINUTE": "{{ limits.firesPerMinute }}"
"LIMITS_ACTIONS_SEQUENCE_MAXLENGTH": "{{ limits.sequenceMaxLength }}"

添加到@csantanapr答案中,您可以将它们添加到openwhisk.yml playbook中。

ansible-playbook -i environments/<environment>  -e limit_invocations_per_minute=999999 -e limit_invocations_concurrent=999999 openwhisk.yml

如果您使用非 ansible 方法来运行 openwhisk,您可以在此处参考问题。你也可以参考这个。

您可以修改文件core/standalone/src/main/resources/standalone.conf。如果你看这部分:

config {
controller-instances = 1
limits-actions-sequence-maxLength = 50
limits-triggers-fires-perMinute = 60
limits-actions-invokes-perMinute = 60
limits-actions-invokes-concurrent = 30
}

您可以修改limits-actions-invokes-concurrent的值和任何其他限制。

然后,当您运行 openwhisk 时,您需要通过-c参数、--args参数提供文件。这样:

sudo ./gradlew core:standalone:bootRun --args='-c /path/to/openwhisk/core/standalone/src/main/resources/standalone.conf'

就是这样。


你也可以"构建然后运行",如下所示:

sudo ./gradlew :core:standalone:build
sudo java -jar ./bin/openwhisk-standalone.jar -c /path/to/openwhisk/core/standalone/src/main/resources/standalone.conf

相关内容

  • 没有找到相关文章

最新更新