• 迁移 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 应用一键部署至远端直接用于生产。跳过购买机器等步骤的同时,还拥有了弹性伸缩、按量付费和免运维等特性。

  • 相关阅读:
    关于R文件
    Android View的Adapter
    java基础---->java多线程之Join(二)
    java基础---->多线程之Runnable(一)
    java基础---->多线程之Daemon(五)
    java基础---->多线程之priority(四)
    java高级---->Thread之CountDownLatch的使用
    java高级---->Thread之Semaphore的使用
    java框架---->quartz整合spring(一)
    springdata----->spring集成redis(一)
  • 原文地址:https://www.cnblogs.com/yunqishequ/p/12672390.html
Copyright © 2020-2023  润新知