问题标签 [serverless-architecture]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
748 浏览

python-sphinx - 在无服务器模型中使用 sphinx

我目前正在使用 sphinx 从 bitbucket 存储库中的 ReStructuredText 文件自动生成我的文档站点。

这当然都是内部托管/托管的,但我一直在考虑是否可以将其切换为更无服务器的模型,使用 FaaS 生成站点,然后使用基于云的站点托管来进行实际托管(例如 S3静态网站托管)。

我想知道是否可以以编程方式使用 sphinx(例如在 AWS Lambda 或 Azure 函数中)?

谢谢,约翰

0 投票
1 回答
430 浏览

deployment - 无服务器应用程序的部署 (CI-CD) 管道

我创建了一个简单的 node express MongoDB 应用程序,它有 3 个 API 端点来执行基本的 crud 操作。如果我将其作为服务部署到 Heroku 并使用 bitbucket-pipeline 执行 CI-CD,这将为我完成这项工作。最重要的是,我可以让 Heroku 管道拥有多个阶段的环境,例如开发和生产。

在完成上述所有操作后,我的管道就完成了,并为此感到高兴。

现在回到无服务器,我已经将我的 API 端点作为 lambda 函数部署到 AWS,这是目前唯一的环境(比如说 DEV)。

现在如何在无服务器架构中实现类似于前面提到的管道?

那里的所有解决方案都没有建议(也许我错过了一些)将在开发环境中尝试和测试的实际代码推广到生产环境。而是部署一组新代码,这是一个限制吗?

0 投票
1 回答
378 浏览

aws-lambda - 在 AWS Serverless Repository 的 SAM 模板中为 Lambda 添加完整的 DynamoDB 访问权限

我想在 AWS 无服务器存储库中为 lambda 提供完整的 DynamoDB 访问权限。但是他们提供的策略模板没有这些权限

0 投票
1 回答
1026 浏览

java - AWS Java Lambda JVM 实例

假设我有一个 AWS lambda 函数

假设 lambdaFunction1 在 SNS 主题中的任何新消息上触发。10 条 SNS 消息会触发多少个 JVM 实例?

AWS lambda 是在其自己的 JVM 中执行每个 lambda,还是重新利用相同的 JVM 实例。

0 投票
1 回答
75 浏览

serverless - 无服务器(如 aws lambda 和谷歌云功能)如何在基础设施级别工作

我想深入了解无服务器架构(如 aws lambda 和谷歌云功能)他们如何部署和运行该功能,我听说他们将为每个请求设置一个实例。那不是真的很昂贵而且效率低下吗?或者如果他们重用实例或容器,他们如何处理或管理并发、自动扩展和实例管理?

0 投票
2 回答
2814 浏览

amazon-web-services - 使用无服务器框架在 API Gateway 和 Lambda 上提供多个 api 版本

我正在使用 API Gateway 和 Lambda(无服务器框架)构建一个无服务器应用程序,并试图找到一种方法来提供我们应用程序 API 的多个版本。

这是我能想到的方法。

无服务器.yml

列表.js

fooUtil.js

但是,我需要以这种方式将“ver”参数传递给所有函数。

有什么方法更容易(并且可测试)从请求中获取版本号,如下所示?

fooUtil.js

我不喜欢划分存储库或 git 分支来管理多个版本。

0 投票
1 回答
578 浏览

graphql - 使用身份验证的 graphql 模式拼接

我的想法是使用 graphql 和无服务器创建一个微服务方法。

我正在考虑为 dynamodb 中的每个表创建一个服务,然后创建一个 apigateway 服务,并在 apigateway 服务中使用 graphql-tool 将模式拼接在一起。

这项工作非常好,我很满意。

但现在我想为我的 graphql 查询和突变添加授权。

我在 apigateway 中添加了一个自定义 autherizer,它从客户端解析 JWT 令牌并将其发送到带有 userId 的 graphql 上下文

但现在我想为我的解析器添加授权。

最好的方法是什么?

我希望它尽可能模块化,最好(我认为)是在 apigatway 服务中添加授权,以便我的其他服务保持清洁。但我不知道怎么做?

有任何想法吗?

0 投票
0 回答
165 浏览

node.js - 如果我使用无服务器架构,是否会执行 JIT 优化?

JVM 和 V8 都对它们生成的代码执行优化和反优化,但优化通常需要 VM 在代码运行时对其进行分析。

现在,如果我的应用程序在服务器上运行,那将不是问题,因为代码始终在运行,但如果我使用无服务器,这些函数将以零星的方式运行(仅当它们是必需的),这将不允许 VM 分析或优化我的功能。

那么,这是否意味着运行无服务器会因缺乏优化而本质上变慢,或者 FaaS 是否以不同的方式工作以允许优化我的代码?

0 投票
1 回答
471 浏览

aws-lambda - Aws lambda 函数多个 jar 与单个 jar

假设您有一个功能可以reserve a dining table分解为多个 lambda 函数,例如:

现在你会把以上所有的 lambdas 放在 1 个罐子里还是每个 lambda 罐子都有一个罐子?

0 投票
1 回答
212 浏览

cloudflare - 可以从 cloudflare 工人那里掏钱吗?

在谷歌云函数中,很容易使用 shell 甚至运行本机 linux 二进制文件child_process.execSync(command),这就是我能够gcf.cr在谷歌云函数中运行本机水晶代码的方式。

一目了然地与 Cloudflare Workers 玩耍这似乎是不可能的,因为我什至做不到require('child_process');

Cloudflare Workers 是否不允许炮击?如果是这样,那么不幸的是,它的用处对我来说大大降低了。