92 Stimmen

Emulation von Amazon SQS während der Entwicklung

Ich bin ziemlich daran interessiert, einige Entwicklung mit Amazon SQS, vielleicht SimpleDB zu beginnen, meine Frage ist dies, gibt es irgendwelche Open-Source-Lösungen, die die Funktionalität, nur für die Zwecke der Entwicklung zu imitieren. Ich bin bereits auf das Eucalyptus-Projekt gestoßen ( http://open.eucalyptus.com ) zur Schaffung einer EG-ähnlichen Wolke.

Ich habe keinen Erfolg mit Google gehabt, ich vermute, es ist, weil die Kosten für den Eintritt so billig ist, aber trotzdem, weiß jemand von etwas wie dieses?

144voto

adamw Punkte 7349

Für SQS schrieb ich ElasticMQ , das Sie entweder eingebettet (es ist in Scala geschrieben, läuft also auf der JVM) oder eigenständig ausführen können. I

53voto

Mifeet Punkte 11758

Wenn Sie ein Testdouble für mehr als nur SQS benötigen, können Sie versuchen LocalStack .

Um SQS zu simulieren, verwendet es intern ElasticMQ erwähnt von adamw.

Sie können LocalStack z. B. über Docker starten und es wird die folgenden Dienste starten:

42voto

BigJoe714 Punkte 6582

Einige der Amazon-SDKs haben einen "Mock"-Modus, das heißt:

Der Mock-Service ist eine alternative Möglichkeit um den Beispielcode zu verwenden. Der Service ruft AWS nicht auf, sondern gibt stattdessen eine Antwort zurück, die Sie an Ihre Bedürfnisse anpassen können. Ihren Bedürfnissen anpassen können (die XML-Antwort Dateien befinden sich im Verzeichnis Mock). Der mock-Service macht es Ihnen leicht, die testen, wie Ihre Anwendung mit verschiedene Antworten.

Für SQS scheinen die Perl- und PHP-SDKs über einen Mock-Modus zu verfügen. Ich weiß, dass das .NET SDK für Amazon RDS auch den Mock-Modus hat.

Das Java SDK enthält keine Mock-Implementierungen:

Die Client-Mock-Implementierungen wurden entfernt. Stattdessen können Entwickler ermutigt, flexiblere und voll ausgestattete Mock-Bibliotheken zu verwenden, wie z.B. EasyMock , jMock

Wenn das SDK, das Sie verwenden werden, nicht über den Mock-Modus verfügt, können Sie wahrscheinlich eine ähnliche Funktion erstellen, die die vorkonfigurierten Antworten zurückgibt, anstatt den Dienst tatsächlich aufzurufen.

Siehe hier für weitere Informationen

18voto

Paul A. Fortin Punkte 285

GoAws - https://github.com/p4tin/goaws - wurde gerade als Beta-Version veröffentlicht. (Haftungsausschluss - ich bin der Entwickler).

3voto

Peter Hizalev Punkte 144

Wenn Sie in .NET oder Mono arbeiten, können Sie versuchen Stratosphäre . Es hat lokale Implementierungen, die SimpleDB, SQS und S3 nachahmen. Für die SimpleDB-Imitation wird SQLite verwendet, für SQS und S3 werden Nachrichten/Objekte im Dateisystem gespeichert.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X