云托管是为开发者提供的云原生全托管的容器后端云服务,控制台界面简洁,操作便捷,并且为开发者首个环境赠送 3 个月的免费额度,果断创建环境来试一试。
产品优势
网络加速与网络安全
低网络延迟: 客户端请求从微信就近节点经过微信专线到达服务,服务端内网专线访问微信接口。
免费防DDoS攻击: 服务端接口可以禁止公网访问,只接受客户端请求通过专线访问,从根本上杜绝DDoS可能且无需支付额外费用。(专线安全性由微信团队支持,与微信客户端安全级别相同)
天然免鉴权:项目服务可以直接获取微信服务端接口令牌,由小程序或公众号端发送的请求,免鉴权直接获取用户信息。
开放接口服务:提供所有微信服务端接口的免密中转,集成「微信支付」,无需加解密处理。
消息推送服务:微信生态内各种消息,可配置多个服务和具体路径来接收,无需关心消息的加密和解密。
免除服务器运维工作
自动流水线:提供流水线能力,可以实现从代码仓库到服务发布的全自动流程,无需反复登录控制台操作。
部署安全可控:提供灰度发布、定向开发测试、版本回滚等多样部署能力,业务更新迭代更稳更安全。
机器人提醒:提供企业微信机器人提醒,第一时间告知发布情况。
日志系统:对服务运行提供实时日志收集和查询能力,支持多种检索语法。资源监控:实时反映环境各个服务和各种资源的使用消耗情况,以及服务内版本运行的具体情况。
资源告警:提供丰富的告警渠道,实时感知环境资源使用的各项指标运行情况,支持自定义规则。
集成SDK:小程序和公众号开发接入,可直接使用自带的SDK操作,无需自己封装。
服务端所需资源一站式管理
MySql:提供「Serverless形态的Mysql」,根据业务使用需求自动扩缩容,不产生瓶颈;
对象存储:简单配置就可以在服务内和客户端使用,自带安全域名校验,CDN缓存加速和其他安全能力;
可延展性:可以结合其他云资源搭配使用,随心选择合适的云上资源,打造自己的服务体系。
今天以部署一个GitHub开源的网易云音乐 API项目为例带领大家入门微信云托管,快速部署自己的后端应用!
项目介绍
网易云音乐 NodeJS 版 API GitHub:https://github.com/Binaryify/NeteaseCloudMusicApi
- 全部接口已升级到最新
- 具备登录接口,多达200多个接口
- 更完善的文档
项目的部署选择易操作上手的微信云托管,可以很方便的使用容器服务,降低操作门槛。
部署项目
1. 准备代码
将本项目fork到自己仓库或者下载到本地。
$ git clone https://github.com/Binaryify/NeteaseCloudMusicApi.git
2. 创建服务
进入云托管官网(https://cloud.weixin.qq.com/),扫码选择目标小程序登录,创建云托管环境;
创建成功后,将进入当前环境的服务管理页面;
点击「新建服务」,输入服务名称,如允许公网访问服务,开启即可;
服务创建完成后点击「服务详情」即可查看云托管自动分配的公网及内网域名。
3. 发布版本
依次点击「管理」-「版本列表」-「新建版本」,根据自己意愿选择代码库拉取(需授权)或本地代码上传,填写完成相关信息后点击确定。
该项目已完成代码容器化,大家可自行查看Dockerfile
文件。
代码容器化为必须步骤,否则无法将代码构建成镜像部署到容器实例上。
提交后点击「日志」可查看部署进度,创建成功后版本的状态将会由创建中转为正常。
4. 部署发布
版本创建成功还不能通过域名访问项目,需要完成发布操作。
点击「部署发布」,选择发布的版本后点击「全量发布」。
发布成功后通过访问刚才服务详情中的公网域名就可以看到效果了,如下图。
总结
本项目实战只使用了云托管基础的容器服务能力,如果你还想做更多,可以试用其他更多能力,比如:
- CI/CD流水线部署发布
- 版本测试和灰度发布
- 负载均衡
- 自定义域名,备案
- 日志监控告警
- ServerLess版本的Mysql数据库
基本上覆盖了后端开发所需使用的所有能力,很适合入门学习使用。
作者:云开发布道师王卓林
参考资料
云托管:https://cloud.weixin.qq.com
云托管文档:https://developers.weixin.qq.com/miniprogram/dev/wxcloudrun/src/basic/guide.html
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。