{"id":13593106,"url":"https://github.com/justjavac/deno_serverless_aliyun","last_synced_at":"2025-04-30T10:08:13.459Z","repository":{"id":65976785,"uuid":"259837363","full_name":"justjavac/deno_serverless_aliyun","owner":"justjavac","description":"为阿里云 serverless 平台添加 Deno Runtime","archived":false,"fork":false,"pushed_at":"2022-07-25T14:11:29.000Z","size":40,"stargazers_count":60,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-02-25T06:43:25.899Z","etag":null,"topics":["aliyun","aliyun-fc","deno","deno-module","serverless","serverless-functions"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/justjavac.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":[],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":"https://github.com/justjavac/buy-me-a-coffee"}},"created_at":"2020-04-29T05:56:00.000Z","updated_at":"2022-08-03T02:45:26.000Z","dependencies_parsed_at":"2023-02-19T19:20:16.123Z","dependency_job_id":null,"html_url":"https://github.com/justjavac/deno_serverless_aliyun","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":"justjavac/deno_starter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justjavac%2Fdeno_serverless_aliyun","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justjavac%2Fdeno_serverless_aliyun/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justjavac%2Fdeno_serverless_aliyun/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justjavac%2Fdeno_serverless_aliyun/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/justjavac","download_url":"https://codeload.github.com/justjavac/deno_serverless_aliyun/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242635331,"owners_count":20161437,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aliyun","aliyun-fc","deno","deno-module","serverless","serverless-functions"],"created_at":"2024-08-01T16:01:16.627Z","updated_at":"2025-03-09T02:30:40.599Z","avatar_url":"https://github.com/justjavac.png","language":"TypeScript","funding_links":["https://github.com/justjavac/buy-me-a-coffee"],"categories":["TypeScript"],"sub_categories":[],"readme":"# deno_serverless_aliyun\n\nDeno + Serverless = Awesome\n\n## 背景\n\n目前阿里云的函数计算服务只支持 Nodejs、Python、PHP、Java、.Net。本项目使用阿里云的 custom runtime 功能开发了可运行 Deno 的 Serverless 环境。\n\n## 使用\n\n首先安装官方命令行工具 [Serverless Devs](https://docs.serverless-devs.com/serverless-devs/install):\n\n```shell\nnpm install @serverless-devs/s -g\n```\n\n或\n\n```shell\nyarn global add @serverless-devs/s\n```\n\n安装成功后运行 [`s config`](https://docs.serverless-devs.com/serverless-devs/command/config) 配置 Account ID、Access Key ID、Secret\nAccess Key、Default Region Name。\n\n克隆（或下载）本仓库:\n\n```shell\ngit clone git@github.com:justjavac/deno_serverless_aliyun.git\n```\n\n## 部署\n\n```shell\ncd deno_serverless_aliyun\ns deploy\n```\n\n自定义部署:\n\n1. 使用 Deno 打包 TypeScript 文件。这一步是可选的，提前打包文件而不是在运行时再编译可以提升 Deno Serverless 的冷启动性能。\n\n   ```shell\n   deno task build\n   ```\n\n2. 构建 Deno Serverless 运行环境：\n\n   ```shell\n   s build\n   ```\n\n3. 部署\n\n   ```shell\n   s deploy\n   ```\n\n## 测试\n\n部署完成后我们可以测试刚才的函数。\n\n```shell\ns invoke --event \"Hello World\"\n```\n\n控制台输出:\n\n```plain\n...\nFC Invoke Result:\nHello World\n```\n\n第一次运行时函数需要冷启，会稍微有点慢。\n\n```plain\nDuration: 9.27 ms, Billed Duration: 12 ms, Memory Size: 512 MB, Max Memory Used: 41.50 MB\nDuration: 1.66 ms, Billed Duration: 2 ms, Memory Size: 512 MB, Max Memory Used: 41.62 MB\nDuration: 1.41 ms, Billed Duration: 2 ms, Memory Size: 512 MB, Max Memory Used: 41.87 MB\nDuration: 1.50 ms, Billed Duration: 2 ms, Memory Size: 512 MB, Max Memory Used: 42.25 MB\nDuration: 1.41 ms, Billed Duration: 2 ms, Memory Size: 512 MB, Max Memory Used: 42.50 MB\n```\n\n### 许可协议\n\n[deno_serverless_aliyun](https://github.com/justjavac/deno_serverless_aliyun) 基于 MIT 许可协议发布。详细信息可以查看\n[LICENSE](./LICENSE) 文件。\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjustjavac%2Fdeno_serverless_aliyun","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjustjavac%2Fdeno_serverless_aliyun","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjustjavac%2Fdeno_serverless_aliyun/lists"}