小编Roh*_*han的帖子

来自API网关VS kinesis Streams的Lambda

背景

我正在研究AWS kinesis,API网关.

据我所知,每当请求访问API网关时,我都可以将数据转发到流中,或者我可以选择触发lambda(将进行一些处理).

思考与质疑

所以,我的想法是,如果我可以直接从API网关触发lambda(当请求到达时,它是实时的),有一个kinesis流(用于实时数据处理)的优势是什么?

我可以删除流并直接从API网关触发lambda(甚至为不同的任务创建多个API)

在这种情况下的任何想法!

amazon-kinesis aws-lambda

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

boto3的IO错误download_file

背景

我正在使用boto3代码从s3下载文件,这是以下代码。

for record in event['Records']:
    bucket = record['s3']['bucket']['name']
    key = record['s3']['object']['key']
    print (key)
    if key.find('/') < 0 :
    if len(key) > 4 and key[-5:].lower() == '.json': //File is uploaded outside any folder

        download_path = '/tmp/{}{}'.format(uuid.uuid4(), key)
    else:
        download_path = '/tmp/{}/{}'.format(uuid.uuid4(), key)//File is uploaded inside a folder
Run Code Online (Sandbox Code Playgroud)

如果在s3存储桶中上传了新文件,则会触发此代码,并且此代码会下载该新上传的文件。

将其上传到任何文件夹之外时,此代码可以正常工作。

但是,当我在目录中上载文件时,会发生IO错误。这是我遇到的IO错误的转储。

[Errno 2]没有这样的文件或目录: /tmp/316bbe85-fa21-463b-b965-9c12b0327f5d/test1/customer1.json.586ea9b8:IOError

test1是s3存储桶中的目录,其中上载了customer1.json。

询问

有什么想法,如何解决这个错误?

amazon-s3 python-2.7 boto3 aws-lambda

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

无需管理员权限即可通过 SSH 连接到 VM 的 IAM 角色

背景

要通过 ssh 进入 Google Compute Engine 中的 VM 实例,我需要为用户提供 instanceAdmin 角色,这将管理控制权授予用户,这有时可能是一个安全问题。

询问

Google Compute Engine 是否提供任何 IAM 角色,允许用户通过 SSH 连接到实例,在其上运行程序但没有管理员访问权限(不向用户提供实例管理员角色)??

google-compute-engine google-cloud-platform google-iam

4
推荐指数
2
解决办法
5362
查看次数