2017-02-17 6 views
-1

Ich habe eine Aws Lambda-Funktion, die in VPC ist, und auch eine Aws Redis Elasticache, die auch in der gleichen VPC ist. Ich möchte Daten mithilfe Jedis Java-Client in meinem Aws Lambda-Funktion auf diesen Cache stellen, Code ist wie unten,Verwendung von Jedis Client in Aws Lambda

Jedis jedis = new Jedis("cache_url",6379); 
jedis.set("testkey", "testvalue"); 

aber wenn ich versuche, diesen Code-Block zu rufen, bekam ich eine Ausnahme connect Timeout

Meine Aws Lambda-Funktion wird sehr häufig von einer AWS-IOT-Regel ausgelöst. Was kann diesen Fehler verursachen? Wie kann ich Jedis bei meiner Aws Lambda-Funktion entsprechend verwenden?

+0

ist Ihr elasticache, haben Port 6379 geöffnet, überprüfen Sie die eingehenden Regeln –

+0

Vielen Dank, eingehende Sicherheitsregelkonfiguration der Cache-Gruppe ist geschlossen, wenn ich die Sicherheitsgruppe konfiguriere, die 6379 erlaubt. Es funktioniert richtig. –

+0

Lass mich das einfach als Antwort hinzufügen, damit auch jeder andere, der hier stolpert, das herausfindet ... –

Antwort

1

Das Verbindungs-Timeout bedeutet normalerweise, dass der Lambda nicht in der Lage ist, mit Ihnen zu sprechen. Überprüfen Sie die Sicherheitsgruppe auf dem Elasticache, und stellen Sie sicher, dass es eingehende Regel hat, um TCP-Verbindungen auf 6379 zuzulassen.