我在IBM Bluemix中使用openwhisk玩了一下,现在我正在寻找一种方法来实现一次性行动。
我知道我可以按照固定的时间间隔,在一个" cron"时尚使用&feed; /whisk.system/alarms/alarm'。我正在寻找的是类似于at
linux命令。
我认为最接近的是另一台用于生成事件的服务器,但我希望成为无服务器"尽可能。
另一个不理想的解决方案是使用js setTimeout
但是......我想这会浪费执行时间。 (并且可能达到执行时间限制)
提前致谢。
答案 0 :(得分:2)
使用包含相应字段的cron计划,并将maxTriggers
参数设置为1.
maxTriggers
参数确保在单个事件之后,再次调用触发器。
可以从命令行创建一次性触发器。
这是一个触发器在1月1日@ 00:00运行一次的示例。
wsk trigger create new_year --feed /whisk.system/alarms/alarm
-p cron '0 0 1 0 *'
-p maxTriggers 1
-p trigger_payload '{"message":"Happy New Year!"}'
开源代码库中存在一个未解决的问题,即为这类事件提供更好的支持。 https://github.com/apache/incubator-openwhisk-package-alarms/issues/89