2016-11-30 59 views
1

我做了一個快速谷歌,並沒有能夠找到任何權威性的聲明。基本上,我正在嘗試從SQS中讀取事件並對其進行處理,並且預計asio將由greenlet處理。boto3是否支持greenlet?

那麼boto3的粒度可以在greenlet中使用嗎?我是否需要每個greenlet的會話/客戶端?我需要額外的互斥嗎?

+0

你對此有什麼信息? – vks

+0

@vks迄今沒有。 – xis

回答

0

Boto3不,但你可以猴補丁botocore。

在你的模塊,你會總是需要猴補丁第一,之後使用botocore會話,例如頂部:

from gevent import monkey 
monkey.patch_all() 

import botocore.session 


def fetch_file(bucket, key): 
    session = botocore.session.get_session() 
    client = session.create_client('S3') 
    return client.get_object(
     Bucket=bucket, 
     Key=key 
    ) 

    result = gevent.spawn(fetch_file('mybucket', 'sd.txt'))