├── README.md └── README_en.md /README.md: -------------------------------------------------------------------------------- 1 | ![](https://serverless-article-picture.oss-cn-hangzhou.aliyuncs.com/1638187918372_20211129121158776024.png) 2 | 3 |

中文 | English

4 | 5 | 6 | ----- 7 | 8 | ***更多应用案例,可以参考 Serverless Regsitry:[http://www.devsapp.cn](http://www.devsapp.cn)*** 9 | 10 | ----- 11 | 12 | 13 | > 本仓库是Serverless Devs阿里云系列的Awesome,在这里可以查看到关于阿里云相关组件的大部分内容。除了下面正文中的详细信息,您还可能需要关注: 14 | > 1. [Serverless Devs与CICD的结合](https://github.com/Serverless-Devs/Serverless-Devs/blob/master/docs/zh/cicd.md) 15 | > 2. [函数计算组件文档](https://github.com/devsapp/fc) 与 [函数计算快速入门文档](https://github.com/devsapp/start-fc) 16 | > 3. [Serverless 应用引擎(SAE)文档](https://github.com/devsapp/sae) 与 [Serverless 应用引擎(SAE)快速入门文档](https://github.com/devsapp/start-sae) 17 | > 更多关于案例和内容,可以参考以下目录。 18 | 19 | - [Hello World](#hello-world) 20 | - [Web Framework应用案例](#web-framework应用案例) 21 | - [静态网站应用案例](#静态网站应用案例) 22 | - [场景合集](#场景合集) 23 | - [AI场景](#ai场景) 24 | - [音视频处理案例](#音视频处理案例) 25 | - [Serverless架构下数据库使用](#serverless架构下数据库使用) 26 | - [其他](#其他) 27 | - [活动场景](#活动场景) 28 | 29 | ## Hello World 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 51 | 63 | 86 | 97 | 98 |
HTTP函数Event函数Custom RuntimeCustom Container
40 | fc-http-node.js6
41 | fc-http-node.js8
42 | fc-http-node.js10
43 | fc-http-node.js12
44 | fc-http-node.js14
45 | fc-http-php7.2
46 | fc-http-python2.7
47 | fc-http-python3.6
48 | fc-http-java8
49 | fc-http-golang 50 |
52 | fc-event-node.js6
53 | fc-event-node.js8
54 | fc-event-node.js10
55 | fc-event-node.js12
56 | fc-event-node.js14
57 | fc-event-php7.2
58 | fc-event-python2.7
59 | fc-event-python3.6
60 | fc-event-java8
61 | fc-event-golang 62 |
64 | Golang Event函数
65 | Golang Websocket函数
66 | Nodejs10 Event函数
67 | Nodejs10 Websocket函数
68 | Nodejs12 Event函数
69 | Nodejs12 Websocket函数
70 | PHP74-Swoole Event函数
71 | PHP74-Swoole HTTP函数
72 | Python37 Event函数
73 | Python37 HTTP函数
74 | Python37 Websocket函数
75 | C++ Event函数
76 | C++ HTTP函数
77 | Java8-SpringBoot
78 | Ruby example
79 | Powershell example
80 | F# example
81 | TypeScript example
82 | Lua example
83 | Dart example
84 | Rust example 85 |
87 | C++ Event函数
88 | Node.js 14 Event函数
89 | Python3.9 Event函数
90 | C++ HTTP函数
91 | Springboot HTTP函数
92 | ASP.Net Core HTTP函数
93 | Golang Websocket函数
94 | Node.js14 Websocket函数
95 | Python3.9 Websocket函数 96 |
99 | 100 | 101 | ## Web Framework应用案例 102 | 103 | 将一个传统框架部署到阿里云Serverless平台的方法有很多,可以选择Custom、Custom Container以及原生编程语言的运行时。这其中Custom和原生语言运行时方案,除了启动命令/入口函数不同之外,区别并不是很大,可以根据自己需求进行实现,Custom Container方案相对来说更简单,但是镜像的冷启动速度相对Custom和原生语言运行时比较慢。 104 | 105 | 目前函数计算仓库收录以下常见框架的部署案例: 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 |
No.:fire:NodejsPythonPHPGoJavaOthers
1:fire:Express [custom]:fire::fire:Flask [python3]Think PHP [custom]BeeGoTomcat/JettyGatsby
2Egg [custom]Tornado [custom]laravel [custom]Gin [custom]SpringBoot [custom]Hugo [custom]
3Nextjs [custom]Bottle [python3]Discuz [custom]Quarkus
4Nuxtjs [custom]Web.py [python3] :fire::fire::fire: WordPress [custom]
5 :fire::fire::fire: Hapi [custom]Django [python3] :fire::fire::fire: Zblog [custom]
6Koa [custom]FastAPI [custom]Ecshop [custom]
7Nest [custom]Web2pyMetinfo [custom]
8Midway-koa [custom]Pyramid [python3]Whatsns [custom]
9Serverless-Baota [custom]Typecho [custom]
9Kodbox [custom]
188 | 189 | > 除了上面的案例之外,还提供了两个简单的实践应用: 190 | > - [基于Express框架的todoList应用](https://github.com/devsapp/start-web-framework/blob/master/example/todolist-app/src):`s init todolist-app` 191 | > - [基于Django框架的博客应用](https://github.com/devsapp/start-web-framework/blob/master/example/django-blog/src):`s init django-blog` 192 | 193 | > SSR 框架: 194 | > - [nuxt-ssr](https://github.com/devsapp/start-web-framework/tree/master/web-framework/nodejs/nuxt-ssr/src): `s init start-nuxt-ssr` 195 | 196 | 197 | ## 静态网站应用案例 198 | 199 | - 静态网站案例: 200 | - [hexo应用](https://github.com/devsapp/start-website/tree/master/hexo/src) `s init website-hexo` 201 | - [docusaurus应用](https://github.com/devsapp/start-website/tree/master/docusaurus/src) `s init website-docusaurus` 202 | - [vuepress应用](https://github.com/devsapp/start-website/tree/master/vuepress/src) `s init website-vuepress` 203 | 204 | > 当然,上面所列举的静态网站案例都是build之后部署到对象存储等,您也可以直接部署到函数计算(尽管这并不是一个值得推荐的做法),您可以参考[start-static-site文档](https://github.com/devsapp/start-static-site) , 也可以尝试执行命令`s init start-static-site`进行初始化 205 | 206 | ## 场景合集 207 | 208 | ### AI场景 209 | 210 | - [PyTorch案例](https://github.com/devsapp/start-ai/tree/master/start-pytorch/src) `s init start-pytorch` 211 | - [Tensorflow案例](https://github.com/devsapp/start-ai/tree/master/start-tensorflow/src) `s init start-tensorflow` 212 | - [OCR案例](https://github.com/devsapp/start-ai/tree/master/start-ocr/src) `s init start-ocr` 213 | - [目标检测案例](https://github.com/devsapp/start-ai/tree/master/image-prediction-app/src) `s init image-prediction-app` 214 | 215 | ### 音视频处理案例 216 | 217 | - [弹性高可用的高度自定义音视频处理](https://github.com/devsapp/start-ffmpeg/tree/master/ffmpeg-app/src): `s init ffmpeg-app` 218 | - [对直播视频流截图的应用](https://github.com/devsapp/start-ffmpeg/tree/master/rtmp-snapshot/src): `s init rtmp-snapshot` 219 | - [一个对浏览器全景录制](https://github.com/devsapp/start-ffmpeg/tree/master/headless-ffmpeg/src): `s init headless-ffmpeg` 220 | 221 | ### Serverless架构下数据库使用 222 | 223 | - python案例 224 | - [mysql案例](https://github.com/devsapp/start-fc-db/tree/main/python/mysql/src): `s init start-fc-mysql-python` 225 | - [redis案例](https://github.com/devsapp/start-fc-db/tree/main/python/redis/src): `s init start-fc-redis-python` 226 | - [mongodb案例](https://github.com/devsapp/start-fc-db/tree/main/python/mongodb/src): `s init start-fc-mongodb-python` 227 | - [sql-server案例](https://github.com/devsapp/start-fc-db/tree/main/python/sql_server/src): `s init start-fc-sql-server-python` 228 | - [postgresql案例](https://github.com/devsapp/start-fc-db/tree/main/python/postgresql/src): `s init start-fc-postgresql-python` 229 | - [Lindorm案例](https://github.com/devsapp/start-fc-db/tree/main/python/lindorm/src): `s init start-fc-lindorm-python` 230 | 231 | ### 其他 232 | - 基于 puppeteer 的截图 Web 应用: 233 | - [基于Node.js的案例](https://github.com/devsapp/start-puppeteer/tree/master/puppeteer-nodejs/src): `s init puppeteer-nodejs` 234 | - [基于Container的案例](https://github.com/devsapp/start-puppeteer/tree/master/puppeteer-container/src): `s init puppeteer-container` 235 | - [word转pdf的应用](https://github.com/devsapp/start-word2pdf): `s init start-word2pdf` 236 | - [pdf转图片的应用](https://github.com/devsapp/start-pdf2img): `s init start-pdf2img` 237 | - [电商后端管理系统](https://github.com/devsapp/start-fc-mall-admin): `s init start-fc-mall-admin` 238 | - [现代应用解决方案](https://github.com/devsapp/modern-web-application): `s init modern-web-application` 239 | 240 | #### 活动场景 241 | 242 | > 这一部分记录的是一些活动的小案例,仅供学习使用 243 | 244 | - [基于函数计算的红白机游戏](https://github.com/devsapp/fc-nes-game): `s init fc-nes-game` 245 | - [基于函数计算的盲盒游戏](https://github.com/devsapp/blindbox-game): `s init blindbox-game` 246 | - [创意活动Jamsatck站点](https://github.com/devsapp/start-jamstack-activities): `s init start-jamstack-activities` 247 | - [Serverless架构的弹幕应用](https://github.com/devsapp/start-barrage): `s init start-barrage` 248 | -------------------------------------------------------------------------------- /README_en.md: -------------------------------------------------------------------------------- 1 | ![](https://serverless-article-picture.oss-cn-hangzhou.aliyuncs.com/1638187918372_20211129121158776024.png) 2 | 3 |

中文 | English

4 | 5 | > This repository is Awesome of the Alibaba Cloud series by Serverless Devs, where you can view most of the Alibaba Cloud related components. In addition to the details in the main text below, you may also want to pay attention to: 6 | > 1. [Combination of Serverless Devs and CICD](https://github.com/Serverless-Devs/Serverless-Devs/blob/master/docs/zh/cicd.md) 7 | > 2. [Function Compute Component Documentation](https://github.com/devsapp/fc) and [Function Compute Quick Start Documentation](https://github.com/devsapp/start-fc) 8 | > 3. [Serverless Application Engine (SAE) Documentation](https://github.com/devsapp/sae) and [Serverless Application Engine (SAE) Quick Start Documentation](https://github.com/devsapp/start- sae) 9 | > For more cases and content, please refer to the following catalogue. 10 | 11 | - [Hello World](#hello-world) 12 | - [Web Framework application case](#web-framework-application-case) 13 | - [Static website application case](#static-website-application-case) 14 | - [Scene Collection](#scene-collection) 15 | - [AI scene](#ai-scene) 16 | - [Audio and video processing case](#audio-and-video-processing-case) 17 | - [Database usage under Serverless architecture](#database-usage-under-serverless-architecture) 18 | - [Others](#others) 19 | - [Activity scene](#activity-scene) 20 | 21 | ## Hello World 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 43 | 55 | 78 | 89 | 90 |
HTTP functionsEvent functionCustom RuntimeCustom Container
32 | fc-http-node.js6
33 | fc-http-node.js8
34 | fc-http-node.js10
35 | fc-http-node.js12
36 | fc-http-node.js14
37 | fc-http-php7.2
38 | fc-http-python2.7
39 | fc-http-python3.6
40 | fc-http-java8
41 | fc-http-golang 42 |
44 | fc-event-node.js6
45 | fc-event-node.js8
46 | fc-event-node.js10
47 | fc-event-node.js12
48 | fc-event-node.js14
49 | fc-event-php7.2
50 | fc-event-python2.7
51 | fc-event-python3.6
52 | fc-event-java8
53 | fc-event-golang 54 |
56 | Golang Event function
57 | Golang Websocket function
58 | Nodejs10 Event function
59 | Nodejs10 Websocket function
60 | Nodejs12 Event function
61 | Nodejs12 Websocket function
62 | PHP74-Swoole Event function
63 | PHP74-Swoole HTTP function
64 | Python37 Event function
65 | Python37 HTTP function
66 | Python37 Websocket function
67 | C++ Event function
68 | C++ HTTP function
69 | Java8-SpringBoot
70 | Ruby example
71 | Powershell example
72 | F# example
73 | TypeScript example
74 | Lua example
75 | Dart example
76 | Rust example 77 |
79 | C++ Event function
80 | Node.js 14 Event function
81 | Python3.9 Event function
82 | C++ HTTP function
83 | Springboot HTTP function
84 | ASP.Net Core HTTP function
85 | Golang Websocket function
86 | Node.js14 Websocket function
87 | Python3.9 Websocket function 88 |
91 | 92 | 93 | ## Web Framework application case 94 | 95 | There are many ways to deploy a traditional framework to the Alibaba Cloud serverless platform. You can choose Custom, Custom Container, and the runtime of the native programming language. Among them, the Custom and native language runtime solutions are not very different except for the different startup commands/entry functions. They can be implemented according to their own needs. The Custom Container solution is relatively simple, but the cold start speed of the image is relatively high. and native language runtime is slower. 96 | 97 | Currently, the Function Compute repository includes deployment cases for the following common frameworks: 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 |
No.:fire:NodejsPythonPHPGoJavaOthers
1:fire:Express [custom]:fire::fire: Flask [python3]Think PHP [custom]BeeGoTomcat/JettyGatsby
2Egg [custom]Tornado [custom]laravel [custom]Gin [custom]SpringBoot [custom] Hugo [custom]
3Nextjs [custom]Bottle [python3]Discuz [custom]Quarkus
4Nuxtjs [custom] Web.py [python3] :fire::fire::fire: WordPress [custom]
5 :fire::fire::fire: Hapi [custom]Django [python3] :fire::fire::fire: Zblog [custom]
6Koa [custom]FastAPI [custom]Ecshop [custom]
7Nest [nodejs12]Web2pyMetinfo [custom]
8Midway-koa [custom]Pyramid [python3]Whatsns [custom]
9Serverless-Baota [custom]Typecho [custom]
9Kodbox [custom]
180 | 181 | > In addition to the above cases, two simple practical applications are provided: 182 | > - [Express framework based todoList app](https://github.com/devsapp/start-web-framework/blob/master/example/todolist-app/src): `s init todolist-app` 183 | > - [Django framework based blog application](https://github.com/devsapp/start-web-framework/blob/master/example/django-blog/src): `s init django-blog` 184 | 185 | > SSR frameworks 186 | > - [nuxt-ssr](https://github.com/devsapp/start-web-framework/tree/master/web-framework/nodejs/nuxt-ssr/src): `s init start-nuxt-ssr` 187 | 188 | 189 | ## Static website application case 190 | 191 | - Static website case: 192 | - [hexo app](https://github.com/devsapp/start-website/tree/master/hexo/src) `s init website-hexo` 193 | - [docusaurus app](https://github.com/devsapp/start-website/tree/master/docusaurus/src) `s init website-docusaurus` 194 | - [vuepress app](https://github.com/devsapp/start-website/tree/master/vuepress/src) `s init website-vuepress` 195 | 196 | > Of course, the static website cases listed above are all deployed to object storage after building, etc. You can also deploy directly to Function Compute (although this is not a recommended practice), you can refer to the [start-static-site documentation](https://github.com/devsapp/start-static-site) , you can also try to execute the command `s init start-static-site` to initialize 197 | 198 | ## Scene Collection 199 | 200 | ### AI scene 201 | 202 | - [PyTorch case](https://github.com/devsapp/start-ai/tree/master/start-pytorch/src) `s init start-pytorch` 203 | - [Tensorflow case](https://github.com/devsapp/start-ai/tree/master/start-tensorflow/src) `s init start-tensorflow` 204 | - [OCR case](https://github.com/devsapp/start-ai/tree/master/start-ocr/src) `s init start-ocr` 205 | - [Object detection case](https://github.com/devsapp/start-ai/tree/master/image-prediction-app/src) `s init image-prediction-app` 206 | 207 | ### Audio and video processing case 208 | 209 | - [Flexible and highly available highly customized audio and video processing](https://github.com/devsapp/start-ffmpeg/tree/master/ffmpeg-app/src): `s init ffmpeg-app` 210 | - [Apply to live video stream screenshot](https://github.com/devsapp/start-ffmpeg/tree/master/rtmp-snapshot/src): `s init rtmp-snapshot` 211 | - [One-to-browser panorama recording](https://github.com/devsapp/start-ffmpeg/tree/master/headless-ffmpeg/src): `s init headless-ffmpeg` 212 | 213 | ### Database usage under Serverless architecture 214 | 215 | - python case 216 | - [mysql case](https://github.com/devsapp/start-fc-db/tree/main/python/mysql/src): `s init start-fc-mysql-python` 217 | - [redis case](https://github.com/devsapp/start-fc-db/tree/main/python/redis/src): `s init start-fc-redis-python` 218 | - [mongodb case](https://github.com/devsapp/start-fc-db/tree/main/python/mongodb/src): `s init start-fc-mongodb-python` 219 | - [sql-server case](https://github.com/devsapp/start-fc-db/tree/main/python/sql_server/src): `s init start-fc-sql-server-python` 220 | - [postgresql case](https://github.com/devsapp/start-fc-db/tree/main/python/postgresql/src): `s init start-fc-postgresql-python` 221 | - [Lindorm case](https://github.com/devsapp/start-fc-db/tree/main/python/lindorm/src): `s init start-fc-lindorm-python` 222 | 223 | ### Others 224 | - Screenshot web application based on puppeteer: 225 | - [Node.js-based case](https://github.com/devsapp/start-puppeteer/tree/master/puppeteer-nodejs/src): `s init puppeteer-nodejs` 226 | - [Container-based case](https://github.com/devsapp/start-puppeteer/tree/master/puppeteer-container/src): `s init puppeteer-container` 227 | - [word to pdf application](https://github.com/devsapp/start-word2pdf): `s init start-word2pdf` 228 | - [Application of pdf to image](https://github.com/devsapp/start-pdf2img): `s init start-pdf2img` 229 | - [E-commerce backend management system](https://github.com/devsapp/start-fc-mall-admin): `s init start-fc-mall-admin` 230 | - [Modern Application Solutions](https://github.com/devsapp/modern-web-application): `s init modern-web-application` 231 | 232 | #### Activity scene 233 | 234 | > This part records some small cases of activities, for learning purposes only 235 | 236 | - [Red and white game based on function computing](https://github.com/devsapp/fc-nes-game): `s init fc-nes-game` 237 | - [Function Computation Based Blindbox Game](https://github.com/devsapp/blindbox-game): `s init blindbox-game` 238 | - [Creative Activities Jamsatck Site](https://github.com/devsapp/start-jamstack-activities): `s init start-jamstack-activities` 239 | - [Barrage Application of Serverless Architecture](https://github.com/devsapp/start-barrage): `s init start-barrage` 240 | --------------------------------------------------------------------------------