前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数千台 iPhone 同时送出,刷屏朋友圈的纪念礼有这些黑科技

数千台 iPhone 同时送出,刷屏朋友圈的纪念礼有这些黑科技

作者头像
腾讯云serverless团队
发布2019-12-27 16:40:06
1K0
发布2019-12-27 16:40:06
举报
文章被收录于专栏:Tencent Serverless 官方专栏

今天,又一张图片刷爆朋友圈

是的,腾讯云2019年度收入在第三季度破百亿,并且给员工推送了一个 H5,内含领取一部 iPhone 11 pro 作为纪念礼的消息。而在这张包含惊喜的 H5 推送背后,腾讯云云函数为其提供了底层技术支持,完美支撑了短时间内超万名用户的访问请求。

需求背景

  • 需求描述:腾讯云向员工发放激励,最终需要输出微信 H5 页面;
  • 开发挑战:只有1名工程师,两天内完成方案设计,开发,测试,上线!

技术实现

系统架构

系统需要实现:

  • 根据员工属性直出H5页面,领手机的员工直接在前端切换至手机页面;
  • 考虑到这种内部活动会同时推送,会出现瞬时并发高峰,然后马上趋于平稳。出于成本和架构合理性的考虑,应该选择支持高峰并发请求,又可以自动扩容缩容的服务架构。

结合以上需求,最终选择了腾讯云,以 API 网关+腾讯云云函数为核心的技术架构。腾讯云云函数是腾讯云提供的无服务器执行环境,具备自动扩缩容能力,支持高并发,且不需要操心主机购买、环境搭建等,开发效率高,无需担心运维。

并发能力、压力测试

活动涉及总人数超万人,为了确保万无一失,系统按照2000 QPS 的并发能力设计,云函数并发能力由云函数并发数量和云函数运行时间共同决定。这里,引入了 Redis,把数据库中所有名员工的数据提前写入 Redis 中,提高查询效率。非白名单员工或 Redis 过期后(此时应该已度过高峰期),再降级查询数据库内的员工信息,此方案下云函数的运行时间低至10ms 以下。

实际运行

活动进行时,监控显示一切正常,系统设计支持2000 QPS 的并发能力,最终平稳支撑项目运行,顺利度过瞬时高峰。

API网关监控

云函数监控

腾讯云里程碑专属 H5 推送项目,需求内容本身并不难,但需要做不少的工作才能确保万无一失。作为前端开发,Serverless 确实让前端更容易向全栈发展,且更容易开发出稳定性好、支持高并发的后端服务。

3min 快速体验 Serverless

简单五步,即可基于云函数,通过 Serverless Framework 快速部署 hello_world 函数。

1. 安装 Serverless Framework CLI

代码语言:javascript
复制
$ npm install -g serverless

2. 使用 create —template 命令参数,基于 tencent_nodejs 模板创建 hello_world

代码语言:javascript
复制
$ serverless create --template tencent-nodejs --path my-service

3. 执行 npm install 安装相关依赖

代码语言:javascript
复制
$ cd my-service$ npm install

4. 扫描微信二维码一键登录,部署函数到云端

代码语言:javascript
复制
$ serverless deploy

5.触发云函数

代码语言:javascript
复制
$ serverless invoke -f hello_world

部署完成后,即可在您的命令行中看到部署详情,也可以在腾讯云控制台看到对应资源。

感兴趣的读者也可以点击阅读原文,了解具体使用。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-12-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 ServerlessCloudNative 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 Redis
腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档