当前位置: 首页 > 知识库问答 >
问题:

前端 - 云函数的执行环境是怎样的?

鲜于致远
2024-04-26

如果是普通的云服务器,假如在服务器上部署了一个应用,并对数据库执行 CRUD 操作,那么这个时候后台应用和数据库都是长时间运行的,不同的用户请求都指向该服务器,应用的代码执行和数据库的数据存储都发生在该服务器上。如果使用云函数开发,不同的用户请求是指向同一个服务器还是根据用户的位置安排不同的服务器来处理对应的云函数? 如果云函数是类似 CDN 一样在边缘执行,是不是涉及到云函数的代码分发和冷启动,这样的话如果云函数操作数据库,为了保持数据一致性,数据库是否安排特定的服务器来处理,这样在冷启动时去连接远程的数据库是否特别耗费时间?

共有1个答案

林俭
2024-04-26

如果我没记错的话,云函数一般是用类似容器的技术启动,启动之后会维持一段时间。没人访问再关闭。所以会有冷启动的问题,即没人用的服务第一次很慢。

云函数应该是自动调配,选在离用户最近的节点启动。所以云函数的实例可能会很多,而且多次请求不一定会命中同一个云函数容器。

所以云函数一般也不应该直接连接数据库,因为会占用大量的连接数,很容易把数据库搞死。需要自己维护连接池。或者使用云数据库提供的 http 接口,由云服务器厂商来维护连接池。

 类似资料:
  • 当代码在运行时,它所在的执行环境非常重要。 执行上下文 在 JavaScript 中,执行上下文与执行环境关系密切,它与函数和变量的声明息息相关,通常认为有两种执行上下文: 全局上下文——代码首次执行的默认环境; 函数上下文——当代码执行进入函数体中。 让我们来看一段包含这几种执行上下文的代码: // 全局上下文​var hello = 'Hello!';​function introduce()

  • 想捋清“环境变量管理”的整个脉络关系是怎样的。 资料显示有两大类: 第一:常见的做法是使用构建工具(如Webpack或Rollup)的插件来处理环境变量。 第二:使用运行时环境变量,例如使用Node.js的process.env对象来获取环境变量的值。 一些关键字:如 “process.env.NODE_ENV”,"dotenv + cross-env+ webpack DefinePlugin"

  • 问题内容: 作者:HappyLittleFish 问题答案:

  • redis的get指令执行过程是怎么样的?

  • 我需要在我的服务器上运行函数 但是由于安全原因被禁用,但是PHP执行函数正在运行和。 是否可以使用php函数执行相同的操作? 禁用功能 链接,符号链接,执行,通过,proc_close,proc_get_status,proc_open,shell_exec,系统,流行,关闭

  • useEffect 的依赖项使用了 [],那么内部的 effect 函数只会在初始渲染时执行,那么监听的 onMove 函数应该第一次组件函数执行时创建的 onMove,如果把 useEffectEvent 去掉,那么 canMove 也应该是第一次渲染时使用的 canMove,之后切换 canMove 是不会改变 canMove 的值的。如果使用了 useEffectEvent, 那么 canM