You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何每30秒在服务器请求URL触发Google Cloud Function?

实现每30秒触发Google Cloud Function的方案

方案一:创建两个Cloud Scheduler定时作业(最可靠)

Google Cloud Scheduler支持包含秒的6字段cron表达式(格式:秒 分 时 日 月 周),完全可以实现每30秒触发一次:

  • 第一个作业:设置cron表达式为 0 * * * * *,触发你的Cloud Function URL
  • 第二个作业:设置cron表达式为 30 * * * * *,同样触发同一个URL

两个作业会分别在每分钟的0秒和30秒执行,刚好满足每30秒一次的需求,而且每个作业独立运行,可靠性更高——就算其中一个偶尔失败,另一个仍能正常触发。

方案二:用中间Cloud Function实现单次触发两次调用

如果不想维护两个定时作业,可以创建一个中间的Cloud Function,让Cloud Scheduler每分钟触发一次这个中间函数,由它完成两次目标函数的调用:

  1. 创建新的Cloud Function,设置为HTTP触发器(让Cloud Scheduler通过HTTP调用它)
  2. 在中间函数的代码里,先调用目标Cloud Function的URL,sleep30秒后再调用一次。以Python为例:
import requests
import time
import os

TARGET_URL = os.environ.get("TARGET_FUNCTION_URL")

def trigger_target(request):
    # 第一次调用目标函数
    requests.get(TARGET_URL)
    # 等待30秒
    time.sleep(30)
    # 第二次调用目标函数
    requests.get(TARGET_URL)
    return "OK"
  1. 在Cloud Scheduler里创建一个每分钟触发的作业(cron表达式 * * * * *),触发这个中间函数的URL

注意:要给中间函数设置足够的超时时间(默认90秒足够,sleep30秒+两次HTTP调用耗时不会超过),同时确保中间函数有访问目标函数URL的权限(比如目标函数需要身份验证的话,中间函数要带上对应的认证信息)。这个方案的缺点是如果中间函数执行出错,会漏掉一次目标函数的调用,可靠性不如方案一。

内容的提问来源于stack exchange,提问作者Benjamin2002

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 13:48:13