进行无服务器开发的框架sst介绍
在项目中一直在使用serverless框架。但最近偶然接触了一下它的一个竞争对手:sst,感觉貌似也很不错。而且sst的作者貌似是一个华裔。
图源:sst官网截图
和serverless一样,sst也提供了一个命令行工具,用于创建一个应用框架:
1 | npm i -g [email protected] |
进入my-sst-app目录,就能看到已经创建好的应用。如果需要的话,可以在sst.json中更新应用设置:
1 | { |
然后运行:
npm start
sst会自动部署应用到AWS。可以通过类似下面的URL进行调用和测试了:
https://xxxxxxxx.execute-api.eu-west-1.amazonaws.com/
同时,sst会提供一个即时的测试环境,在这里可以看到实时调用,传递过来的参数,返回值等.:
sst还会提供一个集成环境,能够查看使用到的各种AWS资源:比如Lambda函数,Cognito用户池,S3 Bucket,RDS,GraphQL等。
sst目前还非常新,它目前只支持AWS,不像serverless同时支持AWS,Azure,和Google Cloud。同时它支持的语言也有限,比如就不支持Java。
要说优点的话,感觉sst和AWS CDK的结合似乎更加自然。在serverless中,通常需要定义使用到的所有AWS资源(使用yaml或者TS),serverless会自动将这些yaml配置转换为CloudFormation。而在sst中,则是直接使用CDK,这样对于开发人员来说,灵活性就更大了。
期待这个框架越来越好用。