redis
पायथन का उपयोग करके रेडिस से जुड़ना
खोज…
परिचय
पायथन में रेडिस से कनेक्ट करने के लिए क्लाइंट लाइब्रेरी के उपयोग की आवश्यकता होती है। पायथन के लिए कई अलग-अलग क्लाइंट लाइब्रेरी मौजूद हैं, लेकिन रेडिस-पी उपयोग में सबसे लोकप्रिय ग्राहकों में से एक है।
एक बार जब आप अपनी क्लाइंट लाइब्रेरी स्थापित कर लेते हैं, तो आप उचित मॉड्यूल आयात करके, कनेक्शन स्थापित करके, फिर एक कमांड निष्पादित करके अपने एप्लिकेशन में Redis तक पहुंच सकते हैं।
टिप्पणियों
अजगर के साथ रेडिस पर कनेक्ट करने के लिए आपको एक क्लाइंट स्थापित करने की आवश्यकता है। आप पाइप का उपयोग करके स्थापित कर सकते हैं:
pip install redis
यह redis-py स्थापित करेगा
वैकल्पिक रूप से, आप हायरिस-पी स्थापित करना चाह सकते हैं जो सी चार्टर्डिस क्लाइंट को प्रोटोकॉल संदेशों के पार्सिंग को दर्शाता है। यह कई स्थितियों में महत्वपूर्ण प्रदर्शन सुधार प्रदान कर सकता है। आप निष्पादित करके पाइप के साथ भाड़े को स्थापित कर सकते हैं:
pip install hiredis
सूची में तत्व जोड़ें
import redis
r = redis.StrictRedis(host='localhost', port=6379, db=0)
r.lpush('myqueue','myelement')
खेतों को एक हैश में जोड़ना
फ़ील्ड को हैश कुंजी में जोड़ने के लिए Redis (HSET और HMSET) में दो मुख्य कार्य हैं। दोनों फंक्शन रेडिस-पी में उपलब्ध हैं।
HSET का उपयोग करना:
import redis
r = redis.StrictRedis(host='myserver', port=6379, db=0)
r.hset('my_key', 'field0', 'value0')
HMSET का उपयोग करना:
import redis
r = redis.StrictRedis(host='myserver', port=6379, db=0)
r.hmset('my_key', {'field0': 'value0', 'field1':'value1', 'field2':'value2'}
रेडिस के लिए एक कनेक्शन स्थापित करना
Redis-py क्लाइंट दो वर्गों StrictRedis
और Redis
को Redis डेटाबेस के लिए मूल कनेक्शन स्थापित करने के लिए प्रदान करता है। Redis
वर्ग को पीछे की संगतता के लिए प्रदान किया गया है और नई परियोजनाओं को StrictRedis
वर्ग का उपयोग करना चाहिए।
कनेक्शन स्थापित करने के लिए अनुशंसित तरीकों में से एक, एक शब्दकोश में कनेक्शन मापदंडों को परिभाषित करना है और **
सिंटैक्स का उपयोग करते हुए डिक्शनरी को StrictRedis
कंस्ट्रक्टर के पास StrictRedis
।
conn_params = {
"host": "myredis.somedomain.com",
"port": 6379,
"password": "sekret",
"db": 0
}
r = redis.StrictRedis(**config)
लेन-देन बनाना
आप StrictRedis
पर pipeline
विधि को कॉल करके लेनदेन स्थापित कर सकते हैं। लेनदेन के विरुद्ध निष्पादित रेडिस कमांड एक ही ब्लॉक में किया जाता है।
# defaults to transaction=True
tx = r.pipeline()
tx.hincrbyfloat(debit_account_key, 'balance', -amount)
tx.hincrbyfloat(credit_account_key, 'balance', amount)
tx.execute()
प्रत्यक्ष रूप से कमांडिंग निष्पादित करना
Redis-py सीधे Redis संचालन को execute_command
करने के लिए execute_command
विधि प्रदान करता है। इस कार्यक्षमता का उपयोग किसी भी मॉड्यूल को एक्सेस करने के लिए किया जा सकता है जिसमें रेडिस-पी क्लाइंट में समर्थित इंटरफ़ेस नहीं हो सकता है। उदाहरण के लिए, आप एक Redis सर्वर में लोड किए गए सभी मॉड्यूल को सूचीबद्ध करने के लिए execute_command
का उपयोग कर सकते हैं:
r.execute_command('MODULE', 'LIST')