标签: serverless-architecture

在serverless.yml文件中引用AWS API Gateway的主机名以获取其他CloudFormation资源吗?

我正在使用无服务器框架使用S3,Lambda和API网关创建图像大小调整服务。这与此处的概念相似,但是将使用Serverless来设置和配置整个堆栈。

现在,我需要找到一种体面的方法来引用serverless.yml文件中生成的API网关的主机名。这就是我所拥有的资源。(只是一个片段)

imageBucket:
  Type: AWS::S3::Bucket
  Properties:
    BucketName: ${env:IMAGE_BUCKET}
    WebsiteConfiguration:
      RoutingRules:
        -
          RedirectRule:
            Hostname: ${HOSTNAME HERE}
            HttpRedirectCode: 302
          RoutingRuleCondition:
            HttpErrorCodeReturnedEquals: 404
Run Code Online (Sandbox Code Playgroud)

$ {HOSTNAME HERE}的显示位置,我需要为无服务器框架生成的API Gateway API的主机名。

现在,我能想到的最好的方法是在某个地方创建一个CNAME别名,并在我的API前面使用它。然后,我将该CNAME作为环境变量传递,然后在此文件中引用它。不过这对我来说并不理想。我希望有人能够将这个项目拉下来,并能够仅使用存储桶名称来运行它。反正有做到这一点吗?

amazon-web-services aws-cloudformation aws-api-gateway serverless-framework serverless-architecture

2
推荐指数
1
解决办法
299
查看次数

S3 还是 DynamoDb 用于用户存储?

我想在无服务器架构中使用 AWS Lambda 和 Cognito,并且好奇人们的想法是将 S3 存储桶用于用户数据存储,而不是像 DynamoDb 这样的东西?有什么优点/缺点?

amazon-s3 amazon-web-services amazon-dynamodb amazon-cognito serverless-architecture

2
推荐指数
1
解决办法
1637
查看次数

ConflictException:无服务器 AWS 中该域名的基本路径已存在

我使用 AWS lambda 和 NodeJS 环境构建了应用程序。对于部署目的,我使用无服务器框架。现在,当我尝试使用带有 Nodejs 模板的无服务器框架将我的服务部署到 AWS 时。它已部署到服务器,但未将自定义域名映射到我的服务。之前我映射了它,之后自动映射了我的域名。现在,当我尝试重新部署服务时,它会抛出无法映射客户域的错误。我已附上下面的错误日志。你可以检查一下。您能帮我解决这个问题吗?

以下是我的命令的输出sls deploy -s local

Serverless: Running "serverless" installed locally (in service node_modules)
Serverless: Load command interactiveCli
Serverless: Load command config
Serverless: Load command config:credentials
Serverless: Load command config:tabcompletion
Serverless: Load command config:tabcompletion:install
Serverless: Load command config:tabcompletion:uninstall
Serverless: Load command create
Serverless: Load command install
Serverless: Load command package
Serverless: Load command deploy
Serverless: Load command deploy:function
Serverless: Load command deploy:list
Serverless: Load command deploy:list:functions
Serverless: Load command invoke …
Run Code Online (Sandbox Code Playgroud)

node.js serverless-framework serverless-architecture serverless aws-serverless

2
推荐指数
1
解决办法
5630
查看次数

无服务器框架是否支持任何类型的多云负载平衡?

无服务器框架是否支持将相同的API部署到多个云提供商(AWS,Azure和IBM)并根据传统的负载均衡器方法(即循环或延迟)将请求路由到每个提供商?

无服务器框架是否直接支持此功能?

无服务器是否与全局负载平衡器(例如dyn或neustar)集成?

aws-lambda serverless-framework openwhisk azure-functions serverless-architecture

1
推荐指数
1
解决办法
563
查看次数

如何限制无服务器 lambda 函数的并行执行

我正在使用 AWS 并使用无服务器框架。我的无服务器 lambda 函数被事件触发。然后我与数据库交谈,我可以用数据库打开的连接数量有限制。

所以我只想一次运行 5 个 lambda 函数并将其他事件排入队列。我知道有:

    provisionedConcurrency: 3 # optional, Count of provisioned lambda instances
    reservedConcurrency: 5 # optional, reserved concurrency limit for this function. By default, AWS uses account concurrency limit
Run Code Online (Sandbox Code Playgroud)

因此,在这种情况下,指定数量的长时间运行的作业将在那里,它们将为事件提供服务。

但我想要的不是事件排队,而是触发函数,以便一次最多运行 5 个函数。

我想知道 AWS 是否支持这种事件排队的概念?

aws-lambda serverless-framework serverless-architecture serverless aws-serverless

1
推荐指数
1
解决办法
1230
查看次数

无服务器架构与微服务的关系

无服务器架构和微服务的关系对吗?

  • 无服务器架构(Azure Functions 或 Amazon Lambda)访问多个微服务(Amazon Elasticache 或 Amazon Redis 缓存)。
  • 微服务提供没有服务器可扩展性问题的功能。

如果不是,正确的关系是什么?

serverless-architecture

0
推荐指数
1
解决办法
336
查看次数

我应该使用哪个 aws 数据库?

我有一个遗留项目,我喜欢逐个迁移。现在,数据紧密相连。

例如:

  • 航班信息
  • 船员信息
  • 乘客信息
  • 机场
  • 航班也可以有多个机场

我还希望拥有可扩展且可灵活更改结构的数据库。我正在使用 AWS。

我查看了 DynamoDB,它具有我正在寻找的灵活性,但是当我发现很难以一对多的方式查询特定的单个项目时。

我也知道在 RDS 中更改结构或架构是多么不灵活。

有什么建议?

database database-design amazon-web-services amazon-dynamodb serverless-architecture

0
推荐指数
1
解决办法
1922
查看次数