• 2022年8月22日

阿里云Serverless之函数计算(FC)产品部署.NET6记录

最近开发.NET 6 WebApi,因为使用频率不高,单独开设服务器并不划算,想起阿里云有个Serverless函数计算服务,决定尝试下是否可以降低部署成本。

产品链接:阿里云函数计算(FC)

.NET 6项目概述:

开发语言:C#

开发框架:.NET 6 WebApi(MVC)

数据库:Mysql

第三方SDK:AliyunSDK

项目已开发完成且编译发布,获得包含HelloApi.dll等系列文件。

上线流程:

一、项目文件中的HelloApi.dll直接Ctrl+c再Ctrl+v,然后重命名复制出来的文件未HelloApi,将所有文件压缩成zip压缩包。

二、开通阿里云函数计算服务(具体通过上面的产品链接进入自行开通)并进入控制台

三、进入服务及函数页面,创建服务

四、进入新建的服务,创建函数,填写相关设置后点创建。

选择自定义运行时平滑迁移Web Server,选择.NET 6运行环境,选择通过ZIP包上传代码
选择刚刚压缩好的zip压缩包,启动命令:dotnet ./HelloApi.dll

五、进入新创建的函数,点测试函数,看是否预期的结果即可完成。

主要遇到的问题点:

1、端口问题

由于阿里云函数计算监听端口默认为9000,在编译.NET6项目时,需要在program.cs中设定监听端口,例如本例的代码:

app.Urls.Add("http://*:9000");

2、域名问题

阿里云函数计算是可以绑定自己的域名并且可以设定SSL,具体操作如下:

进入域名管理
填写要绑定的域名,设定是否启用https、选择相应证书或者自己上传证书,路由配置根据需要设定路径(默认/* 一般不修改)、服务名称、指向的函数及相应版本。

完成以上步骤后,做好相应解析即可通过域名访问到你刚创建的函数计算项目。

通过本次实践可以发现,.net部署又多了个新方案,不需要再独立开设服务器减少不必要的成本。我们创建函数计算时不需要考虑服务器配置、带宽,该服务的计费方式提供了一定量的免费额度,低频应用除了支付出流量的费用外几乎不需要成本。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注