#author("2019-05-09T02:24:45+00:00","","") #mynavi(AWSメモ) #setlinebreak(on); * 目次 [#uf13510d] #contents - 参考 -- [[https://docs.aws.amazon.com/ja_jp/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-long-polling.html]] -- [[https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sqs.html]] * 概要 [#ca7e569d] #html(<div style="padding-left: 10px;">) #html(</div>) * 準備 [#o28a9ab3] #html(<div style="padding-left: 10px;">) ** キューの作成 [#r749fef8] #html(<div style="padding-left: 10px;">) #html(</div>) #html(</div>) * 実装 [#i0bd24de] #html(<div style="padding-left: 10px;">) ** メッセージ送信処理 [#f65d4603] #html(<div style="padding-left: 10px;">) sqs_send_messages.py #mycode2(){{ # TODO }} #html(</div>) ** メッセージ受信処理 [#d04b5f8e] #html(<div style="padding-left: 10px;">) sqs_receive_messages.py #mycode2(){{ import boto3 client = boto3.client('sqs') response = client.get_queue_url( QueueName='string', QueueOwnerAWSAccountId='string' ) response = client.receive_message( QueueUrl='string', AttributeNames=[ 'All'|'Policy'|'VisibilityTimeout'|'MaximumMessageSize'|'MessageRetentionPeriod'|'ApproximateNumberOfMessages'|'ApproximateNumberOfMessagesNotVisible'|'CreatedTimestamp'|'LastModifiedTimestamp'|'QueueArn'|'ApproximateNumberOfMessagesDelayed'|'DelaySeconds'|'ReceiveMessageWaitTimeSeconds'|'RedrivePolicy'|'FifoQueue'|'ContentBasedDeduplication'|'KmsMasterKeyId'|'KmsDataKeyReusePeriodSeconds', ], MessageAttributeNames=[ 'string', ], MaxNumberOfMessages=123, VisibilityTimeout=123, WaitTimeSeconds=123, ReceiveRequestAttemptId='string' }} #html(</div>) サービスリソースを使用する場合 #html(<div style="padding-left: 10px;">) sqs = boto3.resource('sqs') queue = sqs.get_queue_by_name( QueueName='string', QueueOwnerAWSAccountId='string' ) sqs = boto3.resource('sqs') queue = sqs.Queue('url') receive_messages #html(</div>) #html(</div>) * 動作確認 [#ua272835] #html(<div style="padding-left: 10px;">) ** WaitTimeSeconds = 0 の時 [#b5661f80] #html(<div style="padding-left: 10px;">) MaxNumberOfMessages #html(</div>) ** WaitTimeSeconds = 10 の時 [#tad005fc] #html(<div style="padding-left: 10px;">) #html(</div>) #html(</div>)