Führen Sie so etwas wie Redis-Transaktionen in Python aus

test_transaction.py


# -*- coding: utf-8 -*-
from __future__ import absolute_import
from __future__ import unicode_literals

import redis
import time
from multiprocessing import Process

r = redis.StrictRedis(host='localhost', port=6379, db=0)
key = "abc"

def do(name, value):
    with r.pipeline() as pipe:
        try:
            pipe.watch(key)
            pipe.multi()

            pipe.set(key, value)
            time.sleep(1)

            pipe.execute()

            print "{} Success!!!".format(name)
        except redis.exceptions.WatchError:
            print "{} WatchError!!!".format(name)

p1 = Process(target=do, args=("p1", 1))
p1.start()
p2 = Process(target=do, args=("p2", 2))
p2.start()

time.sleep(3) #Warten Sie, bis der Vorgang abgeschlossen ist
print r.get(key)

Ausführungsergebnis: % python test_redis.py p2 WatchError!!! p1 Success!!! 1

Es fühlt sich an, als könnten Sie den Fehler abbrechen. Es ist nicht so gut zu benutzen wie RDBS, also habe ich das Gefühl, dass ich es ein wenig tun kann.

Recommended Posts

Führen Sie so etwas wie Redis-Transaktionen in Python aus
So etwas wie JS setTimeout in Python
So etwas wie tail -f in Python
Ich möchte so etwas wie Uniq in Python sortieren
Machen Sie so etwas wie einen Python-Interpreter mit Visual Studio Code
Versuchen Sie etwas wie Python für-else in Ruby
Ich wollte so etwas wie Elixirs Pipe in Python machen
Implementieren Sie Redis Mutex in Python
Redis Rohrauskleidung in Python
Ich möchte am Ende etwas mit Python machen
[Python] Wie man PCA mit Python macht
Machen Sie etwas objektorientiertes in der GO-Sprache
Erweitern Sie ein in Python verschachteltes Wörterbuch, um etwas wie Pandas MultiIndex zu tun
So etwas wie 40-32 / 2 = 4!
Führen Sie eine nicht rekursive Euler-Tour in Python durch
So machen Sie R chartr () in Python
Suchen Sie nach Dateien wie Linux Find in Python
Machst du so etwas wie eine Rakete?
# Ich habe so etwas wie Vlookup mit Python # 2 ausprobiert
Ich möchte die Effizienz mit Python auch in einem experimentellen System verbessern. (3) Ich möchte mit Pandas so etwas wie Excel machen
Quadtree in Python --2
Python in der Optimierung
CURL in Python
Konvertieren Sie Unicode-Escape-Sequenzen wie \ u in Python
Geokodierung in Python
SendKeys in Python
Metaanalyse in Python
Unittest in Python
Minimale Implementierung von Union Find in Python
Epoche in Python
Zwietracht in Python
Deutsch in Python
DCI in Python
Quicksort in Python
nCr in Python
N-Gramm in Python
Programmieren mit Python
Plink in Python
Konstante in Python
FizzBuzz in Python
SQLite in Python
Schritt AIC in Python
LINE-Bot [0] in Python
CSV in Python
Reverse Assembler mit Python
Reflexion in Python
Konstante in Python
nCr in Python.
Format in Python
Scons in Python 3
Was tun, um eine Google-Tabelle in Python zu erhalten?
Puyopuyo in Python
Python in Virtualenv
PPAP in Python
Redis Shortest Introduction (3) API in 5 Minuten sogar in Python
Quad-Tree in Python
Reflexion in Python
Chemie mit Python
Hashbar in Python
DirectLiNGAM in Python