迁移 Express 到函数计算

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
可观测可视化 Grafana 版,10个用户账号 1个月
简介: 本文介绍如何将 Express 应用部署到函数计算。与传统的部署方法相比,您可将传统的 Express 应用一键部署至远端直接用于生产。跳过购买机器等步骤的同时,还拥有了弹性伸缩、按量付费和免运维等特性。

barby-dalbosco-bzC3Emeb3-0-unsplash.jpg

首先介绍下在本文出现的几个比较重要的概念:

函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准备计算资源,并以弹性伸缩的方式运行用户代码,而用户只需根据实际代码运行所消耗的资源进行付费。函数计算更多信息 参考
Fun: Fun 是一个用于支持 Serverless 应用部署的工具,能帮助您便捷地管理函数计算、API 网关、日志服务等资源。它通过一个资源配置文件(template.yml),协助您进行开发、构建、部署操作。Fun 的更多文档 参考

备注: 本文介绍的技巧需要 Fun 版本大于等于 3.6.3。
2

背景信息

Express 是一个基于 Node.js 平台的极简、灵活的 Web 应用开发框架,它提供一系列强大的特征,帮助你创建各种 Web 和移动设备应用。

步骤一:准备环境

本文介绍的方法,不需要安装 Docker,仅仅安装 Fun 即可,最简单的方式就是直接下载可执行的二进制文件。

  1. 安装 Fun 到本机。详情请参见安装文档
  2. 执行 fun --version 检查安装是否成功。

步骤二:迁移应用

  1. 执行以下命令创建一个 Express 项目,详情请参见 Express application generator,或者您可以按照官方描述的步骤创建简单的 Hello world example,若有 Express 项目则跳过该步骤。

     npx express-generator
  2. 执行以下命令进入刚创建的示例项目中或您的项目中。

    cd <project-name>
  3. 执行以下命令依赖安装。

    npm install
  4. 执行以下命令运行项目。

    • MacOS、Linux 平台运行项目:

      DEBUG=myapp:* npm start
    • windows 平台运行项目:

      set DEBUG=myapp:* & npm start
  5. 执行命令 fun deploy -y 将项目部署至函数计算。
    Fun 会自动进入部署流程。

      $fun deploy -y
      current folder is not a fun project.
      Generating /Users/txd123/Desktop/Express/bootstrap...
      Generating template.yml...
      Generate Fun project successfully!
      ========= Fun will use 'fun deploy' to deploy your application to Function Compute! =========
      using region: cn-qingdao
      using accountId: ***********3743
      using accessKeyId: ***********Ptgk
      using timeout: 60
    
      Collecting your services information, in order to caculate devlopment changes...
    
      Resources Changes(Beta version! Only FC resources changes will be displayed):
      ...  ...  ...  ...
                   trigger httpTrigger deploy success
           function Express deploy success
      service Express deploy success
    
      Detect 'DomainName:Auto' of custom domain 'Domain'
      Request a new temporary domain ...
      The assigned temporary domain is 15795585-XXX.test.functioncompute.com,expired at 2020-04-12 10:46:25, limited by 1000 per day.
      Waiting for custom domain Domain to be deployed...
      custom domain Domain deploy success

    部署完成后,您可以根据部署成功的日志看到,函数计算为您生成了临时域名 ,您通过这个临时域名直接访问刚刚部署的应用。

    注意:临时域名仅仅用作演示以及开发,具有时效性,如需用作生产,请绑定已经在阿里云备案的域名,详情请参见绑定自定义域名

总结

本文介绍如何将 Express 应用部署到函数计算。与传统的部署方法相比,您可将传统的 Express 应用一键部署至远端直接用于生产。跳过购买机器等步骤的同时,还拥有了弹性伸缩、按量付费和免运维等特性。

阿里巴巴云原生关注微服务、Serverless、容器、Service Mesh 等技术领域、聚焦云原生流行技术趋势、云原生大规模的落地实践,做最懂云原生开发者的技术圈。”

相关实践学习
基于函数计算一键部署掌上游戏机
本场景介绍如何使用阿里云计算服务命令快速搭建一个掌上游戏机。
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
容灾 Serverless
《云迁移与云容灾-Serverless架构企业数据备份和迁移》电子版地址
云迁移与云容灾-Serverless架构企业数据备份和迁移
515 0
《云迁移与云容灾-Serverless架构企业数据备份和迁移》电子版地址
|
机器学习/深度学习 JSON JavaScript
Express应用迁移 | 学习笔记
快速学习Express应用迁移
87 0
Express应用迁移 | 学习笔记
|
弹性计算 监控 NoSQL
如何把 ThinkPHP 5 的项目迁移到阿里云函数计算来应对流量洪峰?
Serverless 是以后的趋势,开发者能够有更多的精力去关注业务层。从开始预计迁移到代码的修改以及阿里云函数计算 FC 文档查阅,到迁移成功,花费了大概 3 天的时间,对阿里云函数计算 FC 有了更深层次的认知。
如何把 ThinkPHP 5 的项目迁移到阿里云函数计算来应对流量洪峰?
|
弹性计算 前端开发 JavaScript
如何将传统 Web 框架迁移部署到 Serverless 架构?
与其说 Serverless 架构是一个新的概念,不如说它是一种全新的思路,一种新的编程范式。
198998 0
|
弹性计算 监控 NoSQL
如何把thinkphp5的项目迁移到阿里云函数计算来应对流量洪峰?
如何把thinkphp5的项目迁移到阿里云函数计算来应对流量洪峰?
202 0
如何把thinkphp5的项目迁移到阿里云函数计算来应对流量洪峰?
|
运维 负载均衡 安全
为什么我要迁移 SpringBoot 到函数计算
面对流量洪峰,我们再也不会手忙脚乱了,函数计算自动会帮我们扩容!很好的解决了我们的 API 场景和不定时执行各种不同任务的场景。
为什么我要迁移 SpringBoot 到函数计算
|
弹性计算 JavaScript 前端开发
ServerlessDev+云效流水线迁移Express+NodeJS前端应用至函数计算
笔者所在的公司,PC端页面使用了NodeJS进行部署。由于函数计算(FC)对nodejs有非常优秀的支持,笔者就将整个前端项目由ECS部署迁移至函数计算。
399 0
ServerlessDev+云效流水线迁移Express+NodeJS前端应用至函数计算
|
2月前
|
人工智能 数据管理 Serverless
阿里云数据库走向Serverless与AI驱动的一站式数据平台具有重大意义和潜力
阿里云数据库走向Serverless与AI驱动的一站式数据平台具有重大意义和潜力
404 2
|
2月前
|
人工智能 运维 Cloud Native
、你如何看待阿里云数据库走向Serverless与AI驱动的一站式数据平台?
、你如何看待阿里云数据库走向Serverless与AI驱动的一站式数据平台?
147 2
|
3月前
|
JSON 安全 Serverless
在使用阿里云函数计算(FC)服务时,您可以通过自定义域名来访问部署好的云函数
在使用阿里云函数计算(FC)服务时,您可以通过自定义域名来访问部署好的云函数【1月更文挑战第23天】【1月更文挑战第112篇】
220 7

相关产品

  • 函数计算