无服务器与自定义服务器 Next.js

问题描述 投票:0回答:1

我目前正在尝试找出并比较在 next.js 上构建和运行应用程序的两种方法的优缺点:

  • 自定义服务器(我的项目中当前使用的方法)
  • Serverless(Next.Js 团队强烈推荐的方法)

无服务器方法在 Next.js 文档中被描述为强烈推荐的方法。他们还建议使用 Vercel,它内置了对 next.js 中无服务器方法的支持。

我的应用程序使用天蓝色云进行托管。我的应用程序是作为自定义服务器方法构建和运行的。我还将使用 CDN 来缓存页面。 有谁有在 azure 基础设施和 CDN 中使用以下工具实现 next.js 的经验:

  • 自定义服务器方法?
  • 无服务器方法?

有什么我应该注意的陷阱吗? Azure 和 CDN 哪种方法更好?我看到有关自定义服务器方法可能会导致 CDN 上缓存内容出现问题的讨论。

next.js cdn
1个回答
0
投票

无服务器功能的一些好处:

  • 无服务器函数被设计为无状态的。每个函数执行都是独立且隔离的,这意味着攻击者不会像在 Slowloris 攻击中那样保持打开状态的持久连接或线程:

Slowloris 是一种拒绝服务攻击程序,允许 攻击者通过打开和维护来压垮目标服务器 攻击者和攻击者之间存在许多同时的 HTTP 连接 目标。

无服务器函数被设计为等待很短的时间,如果没有快速获得完整的请求,则会终止函数执行。

  • 每个传入请求都由无服务器函数的单独实例处理,这意味着对一个请求的攻击不会影响其他请求。

  • 无服务器函数专为快速执行而设计,通常包括每次执行的严格超时。

  • 与可能为每个请求分配长时间运行的线程或内存的传统 Web 服务器不同,无服务器函数不会长时间占用资源。一旦函数执行完毕,它就会被释放,为下一个请求释放资源。

  • 无服务器函数采用即用即付模式运行,您只需为函数使用的实际计算时间付费。

  • 与传统服务器相比,使用无服务器函数可以更快地处理动态内容,因为无服务器函数是轻量级的,并且仅在需要时执行。

© www.soinside.com 2019 - 2024. All rights reserved.