egg 应用迁移 | 学习笔记

本文涉及的产品
函数计算FC,每月15万CU 3个月
简介: 快速学习egg 应用迁移

发者学堂课程【存量应用快速迁移egg 应用迁移】学习笔记,与课程紧密联系,让用户快速学习知识

课程地址:https://developer.aliyun.com/learning/course/342/detail/4013


egg应用迁移

 

计算型搬站,基于FC的函赘型Serverless,本平台提供NodeJS、Python两种语言的Serverless框架,由框架提供路由分发功能,让存量应用无需修改即可通过本平台部署到FC这种计算服务中,享受FC先进技术红利。

针对Egg应用,提供了基于Serverless框架的一种迁移方案,采用Serverless框架进行迁移,无需应用修改任何业务逻辑,零代码修改直接升级为Serverless架构,那么接下来大家看具体操作。

点击云开发平台进入快速开始页,选择应用搬站,选择语言为NodeJS计算型,应用名称,随便输入一个为Egg搬站,计算服务选择FC,剩下的都选默认。

1.png

 

点击完成创建,创建完成之后,选择开发部署打开IDE。

在IDE打开完成之后,需要把本地的应用代码就是EggJS代码拖拽到class IDE上面,在这里选择官方提供的password简单的应用,把代码拖拽上去,有文件覆盖,需要点击覆盖。文件拖拽完毕之后,可以看一下这个IDE中的资源管理器,package json,已经拖拽完毕,应用代码也已经完成,这边提供默认的几个Serverless框架。首先,ServerlessJS就是一个Serverless框架,然后这个应用是Egg应用,所以它是提供了一个关于egg的Serverless config配置文件,具体该如何上错?先打开readme,里面提供了egg应用迁移方案的地址,打开地址。

2.png

 

会进入下图页面,这个页面提供了相关操作方案。

3.png

 

首先会在package json中添加两个依赖。

完全按照这个来进行操作:

两个依赖是mime和request,把它放在dependencies里。

添加完依赖之后,要安装依赖,稍后进行安装。然后是需要把Serverless_config_egg js文件重命名为Serverless_config js

在这里就不进行重命名了,直接将内容拷贝一下,把Serverless_config_egg js文件覆盖掉。

 

最后需要配置运行时的逻辑,egg运行过程中会将运行日志默认打到当前的目录下面,当项目运行到线上的时候,它是有一定的规则的,就是FC不允许当前目录可写。所以必须要配置目录的书写规范,需要把日志写到当前磁盘的TMP下面,这样就完成了这个项目的迁移。

//将run目录和日志目录配置到/tmp临时目录,必须:

Config.rundir = /tmp;

Config.logger = {

Dir:/tmp;

}

在项目部署之前可以在本地安装一个依赖,在云端测试项目是否可以运行。Helloworld提供了两个路由,一个是路由,一个是foo路由

依赖安装完成之后可以通过IDE左上角提供的测试功能,在线上实时测试应用。

点击测试,会返回一个链接,打开测试链接,可以正常访问到Helloworld的根路径,还会有访问的日志输出,访问foo路径也会有相应请求值输出。

4.png

 

当调试完成之后,进行部署,选择要部署的环境以及灰度设置。

5.png

 

之后点击部署,等待部署完成即可。

相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
6月前
|
数据库
egg.js 24.7数据库迁移(二)
egg.js 24.7数据库迁移(二)
51 0
egg.js 24.7数据库迁移(二)
|
6月前
|
数据库
egg.js 24.6数据库迁移(一)
egg.js 24.6数据库迁移(一)
63 0
Py之utils:utils库的简介、安装、使用方法之详细攻略
Py之utils:utils库的简介、安装、使用方法之详细攻略
Py之utils:utils库的简介、安装、使用方法之详细攻略
|
6月前
|
Unix Linux 程序员
ClickHouse【环境搭建 01】Linux环境单机版在线安装 Code:210.DB::NetException + Init script is already running 问题处理
ClickHouse【环境搭建 01】Linux环境单机版在线安装 Code:210.DB::NetException + Init script is already running 问题处理
205 0
|
6月前
|
算法 Docker Python
Python【算法中心 03】Docker部署Django搭建的Python应用流程实例(Docker离线安装配置+Django项目Docker部署)
Python【算法中心 03】Docker部署Django搭建的Python应用流程实例(Docker离线安装配置+Django项目Docker部署)
105 0
|
关系型数据库 MySQL 数据库
Flask2.0 以后的启动和数据迁移
考虑到世面上比较少的flask2.0 的启动和 数据迁移方式的博客, 绝大多数都是基础flask1.1 左右的版本, 涉及了 flask_script等第三方, 所以记录下Flask2.0 以后 数据迁移方式的一个变化!
Flask2.0 以后的启动和数据迁移
|
XML 消息中间件 小程序
tp项目常用工具,composer
tp项目常用工具,composer
147 0
|
机器学习/深度学习 JSON IDE
KOA 应用迁移 | 学习笔记
快速学习 KOA 应用迁移
KOA  应用迁移 | 学习笔记
|
JSON 安全 Java
分布式整合之common工具模块搭建|学习笔记
快速学习分布式整合之common工具模块搭建
分布式整合之common工具模块搭建|学习笔记
|
JSON 安全 测试技术
egg创建后端项目(二)
简单来说,就是把业务逻辑代码进一步细化和分类,所以和数据库交互的代码都放到Service中。这样作有三个明显的好处。