2017-03-05 7 views
0

Ich würde gerne wissen, ob ich ein Skript basierend auf einer SQS-Nachricht ausführen kann.Führen Sie ein Skript basierend auf SQS-Nachricht

Meine Anforderung ist Skript in EC2 auszuführen, wenn ich eine Warteschlangennachricht in SQS erhalte.

Ich verwende AWS SDK, um mit SQS zu interagieren.

Dank & Grüße, Srivignesh KN

+0

einfach Ihr Programm schreiben SQS Nachricht und Lauf Prozess auf sie zu analysieren. – mootmoot

Antwort

1

Ein SQS Nachricht ein Skript nicht automatisch auslösen kann auf Ihrem EC2-Server auszuführen. Eine SQS-Nachricht wird nicht automatisch ausgeführt. Sie müssen eine Anwendung erstellen, die nach SQS-Nachrichten fragt und dann die erforderlichen Aktionen basierend auf den empfangenen Nachrichten durchführt.

+0

Danke @mark, ich suche nach Beispielen, um die sqs-Warteschlange mit aws-sdk abzufragen und jede Aktion basierend auf der sqs-Nachricht auszuführen. Schätze deine Hilfe. –

0

@Mark, danke für die Vorschläge.

Ich war in der Lage, eine Lösung zu finden und dies auf folgende Weise mit Boto-Bibliothek zu implementieren.

import boto.sqs 
#--------------Establishing Connection ------------------ 
conn = boto.sqs.connect_to_region(
    "myregion", 
aws_access_key_id='myaccesskey', 
aws_secret_access_key='mysecretaccesskey') 
print conn.get_all_queues() 
#----------------Processing the queue ------------------ 
my_queue=conn.get_queue('MySqsQueue') 
print "My Queue is ",my_queue 
rs=my_queue.get_messages() 
length=len(rs) 
print "Number of messages in the queue is",length 
m=rs[0] 
MsgBody=m.get_body() 
print "Message Body is ",MsgBody 
---My Script Execution/Processing--- 
#--------------Clearing the queue--------------- 
conn.purge_queue(my_queue) 

Dank & Grüße,

Srivignesh KN

Verwandte Themen