跳到主要内容

Vercel 部署个 Serverless 函数

· 阅读需 2 分钟
猿1993👨🏻‍💻
🥇一位后端打酱油程序猿ᴴᵉˡˡᵒ ᵂᵒʳˡᵈ,一名带着热血、暖男、码农、奶爸等各种buff加成的有志青年💫

各大厂商都在卷 Serverless Function,Serverless 是云计算的一种模型。

Serverless 是云计算的一种模型。以平台即服务(PaaS)为基础,无服务器运算提供一个微型的架构,终端客户不需要部署、配置或管理服务器服务,代码运行所需要的服务器服务皆由云端平台来提供, Serverless computing(无服务器运算,又被称为函数即服务 Function-as-a-Service,缩写为 FaaS)

Vercel 也有这个服务,小打小闹挺好的,据说流量高了后,这个服务很贵。

参考官方文档:vercel.com/docs/functions/quickstart

新建项目

新建个 Flask 项目,然后项目的结构是这样:

├── api
│   └── index.py
├── data
│   └── XXX
├── requirements.txt
├── static
├── templates
└── vercel.json
  1. api 是请求入口

  2. data 存放需要的文件数据

  3. template 存放模板数据,比如邮件模板

  4. requirements.txt 存放需要依赖的库

  5. vercel.json 函数配置文件,比如指定函数入口:

    1. {
      "rewrites": [
      {
      "source": "/(.*)",
      "destination": "/api/index"
      }
      ],
      "headers": [
      {
      "source": "/api/(.*)",
      "headers": [
      {
      "key": "Access-Control-Allow-Origin",
      "value": "https://blog.lichenghao.cn"
      },
      {
      "key": "Access-Control-Allow-Methods",
      "value": "*"
      },
      {
      "key": "Access-Control-Allow-Headers",
      "value": "*"
      }
      ]
      }
      ]
      }

‍ 我们在入口文件 index.py 中写个入门程序 hello world

from flask import Flask
from flask_cors import CORS

app = Flask(__name__, template_folder='../templates')
CORS(app)

@app.route('/')
def hello_world():
return 'Hello World!'

安装 vercel cli

全局安装 vercel 命令用于部署项目

npm install -g vercel

发布项目

在项目路径下登录,根据你的情况选择登录信息

vercel login

最后打包部署项目

vercel --prod

测试项目

登录 vercel 在 项目—>Setting—>Domains​,绑定自己的域名后,就可在国内访问了!

虽然有内存的限制和函数运算时长等限制,但是一些简单的应用应该能够满足,比如:解析下用户 IP,发送个邮件通知,后面我就打算利用这个函数解析纯真的社区 IP 库。

文章标题:Vercel 部署个 Serverless 函数
版权声明:内容遵守
许可协议。转载请注明出处!
侵权提示:部分信息可能来源于网络。如发现有侵权,请随时联系删除!

神评论

如需图片,可上传至免费图床后,使用图片外链即可。SM.MS