2016-04-25 4 views
0

Ich verwende Jedis und ich möchte eine einzelne Pipeline erstellen, die mehrere unabhängige Transaktionen (Multi/Exec-Blöcke) enthält.Mehrere Redis-Transaktionen (multi/exec) in einer einzelnen Pipeline mit Jedis

Von dem, was ich bisher gesehen habe, scheint es nur möglich zu sein, eine ganze Pipeline in eine atomare Transaktion umzuschalten.

Pipeline pipeline = jedis.pipelined(); 
pipeline.multi(); // Does not return a Jedis Transaction 
// From there, everything done on Pipeline is in a single transaction. 

Ich würde pipeline.multi() eine Transaction zurückzukehren erwartet.

Ich vermute, dass die gesamte Pipeline in einer einzigen Transaktion mehr kostet als mehrere kleinere Transaktionsblöcke in einer einzigen Pipeline.

Wird dies von Redis unterstützt? Wenn ja, kann das mit Jedis gemacht werden?

Danke!

Antwort

0

Nach einigen weiteren Tests und Graben scheint es, dass ich pipeline.multi() und pipeline.exec() mehr als einmal aufrufen und somit mehrere Transaktionsblöcke erstellen kann.

Verwandte Themen