我错误地为 AWS Lambda 函数指定了错误的名称。现在,我想改变它的名字。我从给定的 stackoverflow 问题中发现,最好的方法是创建一个新函数并将完全相同的代码复制到其中。 是否可以重命名 AWS Lambda 函数?
我正在考虑这样做,但我只是担心数据丢失。由于我的 lambda 目前有 2 个 SNS 触发器,它不断接收数据。所以,如果我停止这个 lambda 并创建一个新的,我会在那段时间丢失一些数据。此外,如果我在删除前一个之前启动新的 lambda,我会在我的数据存储中两次输入一些条目。那么,有什么方法可以用来完成这项工作吗?
我想弄清楚什么是5小时后调用aws lambda函数的最佳方法.我有另一个lambda函数可以发出多个检索作业来从aws冰川中取出物品,我需要一个解决方案,一旦它们被检索,就会对每个物品运行另一个lambda函数,大约5个小时.我正在考虑使用sns但是想知道是否还有其他方法.任何输入都表示赞赏.
在SNS 消息过滤页面上有一个 AND/OR 逻辑的例子如下
AND 逻辑:通过使用多个属性名称(键)来应用 AND 逻辑。例如,政策:
{
"customer_interests": ["rugby"],
"price_usd": [{"numeric":[">", 100]}]
}
Run Code Online (Sandbox Code Playgroud)
OR 逻辑:通过为属性名称分配多个值来应用 OR 逻辑。例如,策略属性:
"customer_interests": ["rugby", "football", "baseball"]
Run Code Online (Sandbox Code Playgroud)
但是,我们如何为多个属性名称(键)应用“或”逻辑
例如,如果我想更改第一个示例,政策是什么
从
(customer_interests="rugby" AND price_usd > 100)
到
(customer_interests="rugby" 或 price_usd > 100)
我有简单的 API,连接到数据库,调用 FB API 等。什么是最好的服务方式。
1) 我首先从 EC2 开始。
好:够便宜。我可以控制一切
坏处:漫长的设置过程。需要控制一切。自己设置监控工具等。请记住很多。
2)接下来我将NodeJS移至EB并将DB移至RDS。
好:只需提交代码,其他所有事情都由服务处理
坏:负载均衡器 + 多实例 + RDS 成本很高。
3)Lambda,考虑迁移到Lambda + API Gateway 设置 看起来很容易实现,监控和支持 不知道要花多少钱。我知道里面有很多配置。
您有什么建议最适合简单的 API 吗?我还考虑只将图片生成移动到 Lambda,并在 EB 上保留简单的 API,如 AUTH、GET 用户等。
amazon-ec2 amazon-web-services node.js amazon-elastic-beanstalk aws-lambda
我使用phpmailer发送带有来自Amazon SES凭据的SMTP邮件.
我得到以下错误.
我在SES上的生产访问已启用.
SMTP -> FROM SERVER:220 email-smtp.amazonaws.com ESMTP SimpleEmailService-376766033
SMTP -> FROM SERVER: 250-email-smtp.amazonaws.com 250-8BITMIME 250-SIZE 10485760 250-AUTH PLAIN LOGIN 250 Ok
SMTP -> FROM SERVER:250 Ok
SMTP -> FROM SERVER:250 Ok
SMTP -> FROM SERVER:354 End data with .
SMTP -> FROM SERVER:554 Message rejected: Email address is not verified.
SMTP -> ERROR: DATA not accepted from server: 554 Message rejected: Email address is not verified.
SMTP Error: Data not accepted. Mailer Error: SMTP Error: Data not …Run Code Online (Sandbox Code Playgroud) 当发生软退回事件时,SES 会重试发送电子邮件多长时间。亚马逊 SES 电子邮件中显示“Amazon SES 重试发送电子邮件一段时间”,但没有指定具体时间。
我正在尝试创建一个仪表板,并希望有一个小部件来显示自动缩放中所有EC2 实例的 CPUUtilization 图表。每当通过自动扩展规则添加新实例时,仪表板小部件应自动包含新 EC2 实例的图表,并且当实例被删除时,它应删除该实例的图表。
当我选择自动缩放组作为指标时,它仅在图表中显示一行,尽管该自动缩放组中有 4 个实例。
那可能吗?如果是,我做错了什么?
amazon-ec2 amazon-web-services amazon-cloudwatch amazon-cloudwatch-metrics
我在python中使用boto3客户端.我正在将消息推送到sqs但是以错误的顺序接收它们.我可以看出他们的发送时间是正确的.
队列创建如下:
boto_session = boto3.Session(region_name=..,aws_access_key_id=.., aws_secret_access_key=...)
sqs_client = boto_session.resource('sqs', endpoint_url=endpoint_url)
sqs_client.create_queue(QueueName=...)
Run Code Online (Sandbox Code Playgroud)
推送消息的代码:
boto_session = boto3.Session(region_name=..,aws_access_key_id=..,aws_secret_access_key=...)
sqs_client = boto_session.resource('sqs', endpoint_url=endpoint_url)
queue = sqs_client.get_queue_by_name(QueueName=stream_name)
i = 0
while i < 10:
print 'b ' + str(i)
queue.send_message(MessageBody=raw_data.push(json.dumps(dict(id=i)))
sleep(2)
i += 1
Run Code Online (Sandbox Code Playgroud)
和轮询消息的代码:
sqs_resource = boto_session.resource('sqs', endpoint_url=endpoint_url)
queue = sqs_resource.get_queue_by_name(QueueName=queue_name)
while True:
messages = queue.receive_messages(MaxNumberOfMessages=1,VisibilityTimeout=10,WaitTimeSeconds=5)
for m in messages:
print m.data
queue.delete_messages(
Entries=[
{
'Id': m.message_id,
'ReceiptHandle': m.receipt_handle
}
]
)
Run Code Online (Sandbox Code Playgroud)
我运行了创建队列代码,然后我推送了消息,然后运行了一个进程来使用消息,如图所示.
我清楚地看到消息是随机排序的.
在sqs中有解决方案吗?或者我应该更换队列?
我正进入(状态
"__type": "com.amazon.coral.service#SerializationException"
Run Code Online (Sandbox Code Playgroud)
作为邮递员和 API Gateway 测试控制台中的回复
尝试使用 API 代理服务将记录直接发布到 dynamodb。我指的是这篇 AWS 文章 - https://aws.amazon.com/blogs/compute/using-amazon-api-gateway-as-a-proxy-for -动态数据库/
这是我的映射
{
"TableName": "TableNameGoesHere",
"Item": {
"id" : "$context.requestId"
"eventName" : "$input.path('$.eventName')",
"timestamp" : $input.path('$.timestamp'),
"answers": "$util.parseJson($input.path('$.answers'))"
}
}
Run Code Online (Sandbox Code Playgroud)
更新:我按照要求做了......并且它起作用了,但是现在如果我尝试添加一个 JSON 对象数组,它会给我上述相同的错误 - 这就是我现在想要做的。请帮忙 - 在谷歌上也找不到任何东西
#set($inputRoot = $input.path('$'))
{
"TableName": "Answer",
"Item": {
"id": {
"S": "$context.requestId"
},
"eventName": {
"S": "$input.path('$.eventName')"
},
"timestamp" : {
"N": "$input.path('$.timestamp')"
},
"answers": {
"S": "$input.path('$.answers')"
},
"Line": {
"S" : "[
#foreach($elem in $inputRoot.Line)
{ …Run Code Online (Sandbox Code Playgroud) 我需要构建一个瘦服务,其工作是:
通过 HTTP post 向客户端发送更新通知 webhook,通知他们作业已更新。
ID 为 XYZ 的作业由 10 - 1000 个较小的部分组成,我们需要更新它们的状态。1000 个零件的作业,可能需要 2 分钟我们只想每 10 秒左右更新一次(因此我们将发送此更新 webhook 12 次)。
我计划通过 SQS 对来自工作单元的更新消息进行排队,然后出队,执行去抖动并发送 webhook。我的问题是,我不知道如何对特定标识符 XYZ 执行去抖动。
有没有人有任何想法或经验可以分享?如何进行去抖动?
aws-lambda ×3
amazon-ec2 ×2
amazon-ses ×2
amazon-sqs ×2
amazon-sns ×1
debounce ×1
filter ×1
node.js ×1
phpmailer ×1
rename ×1