2010-08-28 150 views
3

如果我從EC2實例創建SQS隊列而未指定API調用中的區域,那麼將在哪個區域創建隊列。來自EC2實例的Amazon SQS區域

當我運行

boto.sqs.regions()

我得到4個區域從非EC2的機器,我得到

[RegionInfo:us-east-1, RegionInfo:eu-west-1, RegionInfo:us-west-1, RegionInfo:ap-southeast-1]

從EC2機在亞太地區,我得到

[RegionInfo:us-east-1, RegionInfo:eu-west-1, RegionInfo:us-west-1]

亞馬遜是否根據EC2實例區域設置了SQS區域。有沒有辦法訪問其他區域隊列?

我使用python Boto庫。

回答

2

在boto庫中,您必須指定要連接的區域,否則默認爲US-EAST區域。老版本的boto python庫(1.9)沒有東南亞地區,因此也存在上述問題。

1

有沒有辦法訪問其他區域隊列?

無論您在哪裏創建SQS隊列,都可以從任何地方訪問它。我們在美國東部創建了隊列,但是歐盟和亞洲的機器從隊列中讀取數據。

唯一的區別是交通價格:

單個區域內亞馬遜SQS和Amazon EC2之間傳送的數據是免費的。在不同地區的Amazon SQS和Amazon EC2之間傳輸的數據將按正常數據傳輸速率收費。

+0

但我無法使用Boto Python庫將區域設置爲EC2中的當前SQS區域。所以我應該假設它將當前使用的區域作爲默認區域。 – sheki 2010-08-30 06:12:22

+0

以上是圖書館版本的問題。 – sheki 2010-08-30 18:04:54