今天,又一张图片刷爆朋友圈
是的,腾讯云2019年度收入在第三季度破百亿,并且给员工推送了一个 H5,内含领取一部 iPhone 11 pro 作为纪念礼的消息。而在这张包含惊喜的 H5 推送背后,腾讯云云函数为其提供了底层技术支持,完美支撑了短时间内超万名用户的访问请求。
需求背景
技术实现
系统架构
系统需要实现:
结合以上需求,最终选择了腾讯云,以 API 网关+腾讯云云函数为核心的技术架构。腾讯云云函数是腾讯云提供的无服务器执行环境,具备自动扩缩容能力,支持高并发,且不需要操心主机购买、环境搭建等,开发效率高,无需担心运维。
并发能力、压力测试
活动涉及总人数超万人,为了确保万无一失,系统按照2000 QPS 的并发能力设计,云函数并发能力由云函数并发数量和云函数运行时间共同决定。这里,引入了 Redis,把数据库中所有名员工的数据提前写入 Redis 中,提高查询效率。非白名单员工或 Redis 过期后(此时应该已度过高峰期),再降级查询数据库内的员工信息,此方案下云函数的运行时间低至10ms 以下。
实际运行
活动进行时,监控显示一切正常,系统设计支持2000 QPS 的并发能力,最终平稳支撑项目运行,顺利度过瞬时高峰。
API网关监控
云函数监控
腾讯云里程碑专属 H5 推送项目,需求内容本身并不难,但需要做不少的工作才能确保万无一失。作为前端开发,Serverless 确实让前端更容易向全栈发展,且更容易开发出稳定性好、支持高并发的后端服务。
3min 快速体验 Serverless
简单五步,即可基于云函数,通过 Serverless Framework 快速部署 hello_world 函数。
1. 安装 Serverless Framework CLI
$ npm install -g serverless
2. 使用 create —template 命令参数,基于 tencent_nodejs 模板创建 hello_world
$ serverless create --template tencent-nodejs --path my-service
3. 执行 npm install 安装相关依赖
$ cd my-service$ npm install
4. 扫描微信二维码一键登录,部署函数到云端
$ serverless deploy
5.触发云函数
$ serverless invoke -f hello_world
部署完成后,即可在您的命令行中看到部署详情,也可以在腾讯云控制台看到对应资源。
感兴趣的读者也可以点击阅读原文,了解具体使用。
本文分享自 ServerlessCloudNative 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!