新玩具:基于腾讯云 SCF 的 HTTP 探活函数

2021-07-27 00:39:14 +08:00
 mreasonyang

简介

基于 Golang 开发了一款简单易用的 HTTP 拨测云函数,入口函数与腾讯云 Serverless SCF SDK 绑定。

与目前腾讯云中默认的拨测函数不同的是,url-tester-func 支持将非 200 响应码作为预期值且通知机制由邮件变更为了 Telegram Bot 。使用者借助腾讯云提供的免费 Serverless 调用配额即可搭建一套简单的 HTTP 接口探活服务。

功能

FAQ

  1. 和 UptimeRobot 等网站比有什么优势?本质上还是个实现简单的小玩具,一定要说优势的话可能就是可以自主部署并方便做二次定制吧~
  2. 服务费用开销如何?目前各个厂商的 Serverless 产品都配有每月至少 100w 次的免费调用配额,以本函数的使用场景看通常是不会造成任何费用的
  3. 只支持腾讯云吗?目前个人用腾讯云的产品比较多,未来也会逐渐支持其他厂商的,欢迎 star 关注~

使用指引

3049 次点击
所在节点    分享创造
16 条回复
madlifer
2021-07-27 00:50:34 +08:00
能否获取该网页的 http 代码 比如 404 403 和网页内容关键词监控?
mreasonyang
2021-07-27 01:08:04 +08:00
@madlifer 目前在功能上对非 200 的情况都是支持的,包括 4XX/5XX 以及超时、握手失败等都可以监控到并发送提醒。但对于响应码是 200 但 body 包含错误信息的情况还不支持。这个场景确实也挺常见,后面会支持下
ihipop
2021-07-27 09:35:57 +08:00
@mreasonyang 没看代码但是腾讯云 fc 可以访问 telegram 的 api ?
docx
2021-07-27 09:47:12 +08:00
腾讯云函数 SCF 的免费配额并不包含外网出流量。频繁监测将造成扣费。
ihipop
2021-07-27 10:01:58 +08:00
@ihipop 原来是部署在海外,那测国内就不太稳定了。最近回国经常 reset
orqzsf1
2021-07-27 10:20:00 +08:00
借楼问下,这样不会有出流量吗?要结算费用的吧
PerFectTime
2021-07-27 10:42:27 +08:00
流量要钱
mreasonyang
2021-07-27 12:05:18 +08:00
@dzyou2007 理论上外网出确实有费用,但由于目前只算出不算入,而这个探测场景的出流量很小,所以只监测几个网站的话每个月的账单都会被校准为 0 元。当然如果确实监测内容很多且频繁的话就需要搞个轻量机器反代下了。
mreasonyang
2021-07-27 12:07:17 +08:00
@ihipop 嗯嗯,TG 只能海外了。后面要是有时间可以支持下 Server 酱 ,这样就能在国内部署了
mreasonyang
2021-07-27 12:09:37 +08:00
@orqzsf1 个人使用的场景很难达到收费阈值。不过大量使用的话仍然需要搞个轻量机器反代解决外网出的计费问题。可以参考给楼上的回复
madlifer
2021-07-27 12:13:05 +08:00
给个工具型产品思路:

现在 VPS 行业用的 WHMCS 销售系统,一些服务器资源如果已经卖空的情况下,打开购买页面会显示“out of stock”字样,如果有购买了该款服务器的客户没有续费,会把资源重置后自动 /手动上架。

因为目前 VPS 商家大部分都会做一些活动型服务器,价格很便宜,就有人需要监控 购买页面的开放情况,如果可以购买,发送提醒,或者尽量能够做到自动抢购。

如果要获得比较高的 GithubStar 数量的话,可以尝试做一下这个产品

之前有人根据我的建议做过类似的东西,技术上通过 curl 查找网址页面关键字“out fo stock”方式实现。

往往做这样一个网站需要监控很多条,甚至用户自定义添加监控。但数量多了随之而来的问题就是查询很慢。间隔几分钟才能循环一次。

解决方案只能是通过给 URL 标号,一台服务器从 0 标号开始循环,第二台服务器从 10 、20 标号循环,成本就比较高。

如果能通过 serverless 的方式来做的话成本应该能降下去不少,感兴趣的话可以联系我做前台的产品设计,我也比较有兴趣。
docx
2021-07-27 12:17:10 +08:00
@mreasonyang

只是看你在费用方面没提到流量,而得出结论不会造成任何费用,所以做一点补充,以免不知情的人误解。

流量很小的情况下确实会被计费精度抹零。
这个只有在高频率,或多站点,或同地域还存在其他项目访问外网导致累计时进位才会出现扣费。
mreasonyang
2021-07-27 12:24:31 +08:00
@dzyou2007 明白,这个其实和用量有关,稍后我 append 下说明,在文档中也会加上提示。感谢提醒
mreasonyang
2021-07-27 13:06:53 +08:00
@madlifer
完全理解这个场景,我个人也有这种使用诉求。
不过从实现上来看这个需求更像是标准的爬虫,应该还会涉及到一些反反爬的操作,和本文这个小工具的初衷不太一致。
后面会考虑下看看要不要开个新项目来做,到时候一起合作呀,哈哈
madlifer
2021-07-27 13:45:32 +08:00
@mreasonyang 可以加个绿色 bWFkbGlmZXIxMzM3
mreasonyang
2021-08-01 14:31:20 +08:00
@ihipop 已支持 Server 酱和 Qmsg 酱,可以部署在国内给微信和 QQ 发通知啦~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/791945

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX