Vercel是什么?本篇文章带大家了解一下Vercel,并介绍一下在Vercel中部署 Node 服务的方法,希望对大家有所帮助!
之前在写面试常客:HTTP 缓存时,曾经就强缓存和协商缓存写过两个demo,但缓存要在服务端做,只能贴上代码,不能在网页上感受(虽然我贴了gif)
笔者的所有 demo 例子都放在 github page 上,其特点是不需要服务器即可部署静态资源,但它不具备部署服务端应用能力
最近笔者在了解 CI/CD 方面的知识点,想起了 Vercel,就想着能否将服务端应用架在 vercel 上呢?
Vercel 是什么
Vercel 是一个开箱即用的网站托管平台,方便开发者快速部署自己的网站。它在全球都拥有 CND 节点,因此比 Github 官方自带的 github pages 更加稳定,访问速度更快
Koala聊开源 曾经对其有过介绍:Vercel 与 Next.js:开源全明星团队背后的商业逻辑
文字版:Vercel 与 Next.js:开源全明星团队背后的商业逻辑
https://juejin.cn/post/7057333396359348255
简单的说,它能极简部署应用到服务端,且是免费不用买服务器
官网
Vercel 官网:https://vercel.com/
Vercel 工作流官网(网页效果炫酷):https://vercel.com/workflow
常见命令行
将 Vercel 下载到全局(npm i vercel -g
),不知道有什么命令就-h
笔者对其了解有限,这里罗列下笔者知道的命令
-
vercel login
:登录 Vercel 账号 -
vercel dev
:本地开启服务 -
vercel dev --bug
:本地开启服务并打印日志 -
vercel
:部署本地资源到 Vercel 上 -
vercel --prod
:更新本地网页
vercel 可以用 vc 来代替,vc 是 Vercel 的缩写
部署静态服务
我们现在已经对 vercel 有所了解,前文中说到 Vercel 能简化开发者部署服务,那它能简化到什么程度呢?
这里我们从零部署一个简易静态服务
本地安装 Vercel
npm i vercel -g
登录 Vercel
vercel login
选择好连接的方式后,会在网站弹出
哟哟,man。what's your name?
创建一个HTML文件,后续我们要将其上传至 Vercel 服务器上
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Vercel Demo</title> </head> <body> <h1>Vercel Demo</h1> </body> </html>
本地测试一番,输入命令行
vercel dev
因为我们这是第一次执行,根目录下没有.vercel
,所以要填写一些必要信息,这时你的本地和 Vercel 服务器就绑定好了
部署服务
vercel
在 https://vercel-sample-ten.vercel.app/ 中能访问到我们的静态服务
在截图中我们也看到了这句话Deployed to production. Run vercel --prod to overwrite later
,后续我们要更新资源,用 vercel --prod
即可
好了,除去必要的登录,我们就用了三个命令就把本地服务部署到 Vercel 服务器上
-
vercel dev
:开发时使用,查看应用是否跑得起来 -
vercel
:部署服务 -
vercel --prod
:更新应用(资源)
可以登录 Vercel 后台查看部署情况
部署 Node 服务
回归主题,最终我们想部署的是 Nodejs 服务,是后端服务,而非前端静态资源服务,这是关键
同样建立新项目
mkdir vercel-koa2 cd vercel-koa2 npm init -y npm i koa -S touch index.js
编写 index.js
中的内容
const Koa = require('koa'); const app = new Koa(); app.use(async ctx => { ctx.body = 'Hello Vercel'; }); app.listen(3008, () => { console.log('3008项目启动') });
PS: 3000端口默认会被 Vercel 使用,所以 Koa 服务要换个端口
使用命令vercel dev
发现给我报错了,理由是 package.json
的 scripts 中没有 build 快捷符,修改之
... "scripts": { "build": "node index.js", }, ...
再次使用 vercel dev
,node 服务跑起来了
于是乎我们部署它
vercel
搞半天没部署上去,后台查看也是无果,呜呼悲哉
google后,发现原来还有一个 vercel.json,可以用 vercel.json 配置和覆盖 vercel 默认行为
下载 @vercel/node
包
npm i @vercel/node -S
填写配置:
{ "version": 2, "builds": [ { "src": "index.js", "use": "@vercel/node" } ] }
执行 vercel
部署服务
访问地址:https://vercel-koa2-t511069160.vercel.app
至此,就完成了 Koa 服务的部署
与部署静态资源多了两个步骤
下载 @vercel/node
和配置 vercel.json
延伸思考
Vercel 当然不止笔者所说的这一功能,它还可以自定义域名、serverless、全球支持的 CDN等等
可以毫不夸张地说,用 Vercel 来代替繁琐的云服务器,配合 Github Action 做 CI/CD,就
个人开发者或小团队而言,这或许就是神器
后续笔者也会尝试用 Vercel 部署一些小应用,实践出真理
附上项目地址:https://github.com/johanazhu/vercel-demo
原文地址:https://juejin.cn/post/7094911994226016292
作者:山头人汉波
更多node相关知识,请访问:nodejs 教程!
以上是Vercel是什么?怎么部署Node服务?的详细内容。更多信息请关注PHP中文网其他相关文章!

JavaScript在Web开发中的主要用途包括客户端交互、表单验证和异步通信。1)通过DOM操作实现动态内容更新和用户交互;2)在用户提交数据前进行客户端验证,提高用户体验;3)通过AJAX技术实现与服务器的无刷新通信。

理解JavaScript引擎内部工作原理对开发者重要,因为它能帮助编写更高效的代码并理解性能瓶颈和优化策略。1)引擎的工作流程包括解析、编译和执行三个阶段;2)执行过程中,引擎会进行动态优化,如内联缓存和隐藏类;3)最佳实践包括避免全局变量、优化循环、使用const和let,以及避免过度使用闭包。

Python更适合初学者,学习曲线平缓,语法简洁;JavaScript适合前端开发,学习曲线较陡,语法灵活。1.Python语法直观,适用于数据科学和后端开发。2.JavaScript灵活,广泛用于前端和服务器端编程。

Python和JavaScript在社区、库和资源方面的对比各有优劣。1)Python社区友好,适合初学者,但前端开发资源不如JavaScript丰富。2)Python在数据科学和机器学习库方面强大,JavaScript则在前端开发库和框架上更胜一筹。3)两者的学习资源都丰富,但Python适合从官方文档开始,JavaScript则以MDNWebDocs为佳。选择应基于项目需求和个人兴趣。

从C/C 转向JavaScript需要适应动态类型、垃圾回收和异步编程等特点。1)C/C 是静态类型语言,需手动管理内存,而JavaScript是动态类型,垃圾回收自动处理。2)C/C 需编译成机器码,JavaScript则为解释型语言。3)JavaScript引入闭包、原型链和Promise等概念,增强了灵活性和异步编程能力。

不同JavaScript引擎在解析和执行JavaScript代码时,效果会有所不同,因为每个引擎的实现原理和优化策略各有差异。1.词法分析:将源码转换为词法单元。2.语法分析:生成抽象语法树。3.优化和编译:通过JIT编译器生成机器码。4.执行:运行机器码。V8引擎通过即时编译和隐藏类优化,SpiderMonkey使用类型推断系统,导致在相同代码上的性能表现不同。

JavaScript在现实世界中的应用包括服务器端编程、移动应用开发和物联网控制:1.通过Node.js实现服务器端编程,适用于高并发请求处理。2.通过ReactNative进行移动应用开发,支持跨平台部署。3.通过Johnny-Five库用于物联网设备控制,适用于硬件交互。

我使用您的日常技术工具构建了功能性的多租户SaaS应用程序(一个Edtech应用程序),您可以做同样的事情。 首先,什么是多租户SaaS应用程序? 多租户SaaS应用程序可让您从唱歌中为多个客户提供服务


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

禅工作室 13.0.1
功能强大的PHP集成开发环境

WebStorm Mac版
好用的JavaScript开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

Dreamweaver Mac版
视觉化网页开发工具