PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

आप एक साथ काम करने के लिए PyPy, Django और PostgreSQL कैसे प्राप्त करते हैं?

psycopg2cffi (अपडेट किया गया 2015)

psycopg2cffi अभी तक एक और psycopg2-संगत प्रतिस्थापन है और इसे PyPy के साथ सर्वश्रेष्ठ PostgreSQL प्रदर्शन प्रदान करना चाहिए। इसे अपने settings.py . में जोड़ें दोनों के साथ संगत रहने के लिए:

try:
    import psycopg2
except ImportError:
    # Fall back to psycopg2cffi
    from psycopg2cffi import compat
    compat.register()

psycopg2-ctypes (2012)

<ब्लॉकक्वॉट>

मुझे यह भी पता है कि कुछ लोग psycopg2-ctypes का उपयोग कर रहे हैं।

यह सबसे आसान तरीका है; दोनों के साथ संगत रहने के लिए, बस इस कोड को अपने Django settings.py . में जोड़ें :

try:
    import psycopg2
except ImportError:
    # Fall back to psycopg2-ctypes
    from psycopg2ct import compat
    compat.register()

मैंने कुछ रिलीज पहले इसका परीक्षण किया; दुख की बात है कि मेरे अनुभव में, psycopg2-ctypes PyPy द्वारा वहन किए गए छोटे प्रदर्शन लाभ को नकारता है। लेकिन YMMV, यह इस बात पर निर्भर करता है कि आपका कोड सामान्य रूप से JIT के अनुकूल कैसे है और आप वास्तव में Python कोड को चलाने में कितना समय बिताते हैं। और शायद तब से PyPy में अभी सुधार हुआ है।

<ब्लॉकक्वॉट>

और मुझे नहीं लगता कि psycopg2-ctypes अभी विंडोज़ के लिए तैयार है

मैंने यह कोशिश नहीं की है, लेकिन ctypes प्लेटफॉर्म-स्वतंत्र है। AFAICT आपको बस यह सुनिश्चित करना है कि libpq.dll पुस्तकालय लोड करने योग्य है (आपके PATH पर्यावरण चर या स्थानीय निर्देशिका में एक निर्देशिका में स्थित है) और इसे लिनक्स की तरह ही विंडोज़ पर काम करना चाहिए।

pypy-postgresql

<ब्लॉकक्वॉट>

मैं देख रहा हूँ कि एलेक्स गेन्नोर ने PyPy का एक कांटा बनाया है जिसे pypy-postgresql कहा जाता है।

मुझे नहीं लगता कि लंबी अवधि में यह एक अच्छा विकल्प है। शाखा को एक वर्ष से अधिक समय से अद्यतन नहीं किया गया है और इसे बनाने के मेरे प्रयास विफल रहे हैं। और वैसे भी दुभाषिया में PostgreSQL ड्राइवर को हार्ड-कोड करना गलत लगता है।

मेरा मानना ​​​​है कि वहाँ pypy-postgresql की कोई बायनेरिज़ नहीं है, इसलिए यदि आप इसका उपयोग करना चाहते हैं, तो आपको पूरी PyPy शाखा स्वयं बनाने की आवश्यकता होगी। बेहोश दिल के लिए नहीं:इसमें दसियों मिनट और कम से कम 4 जीबी मेमोरी वाली मशीन लगती है। (आधिकारिक निर्देश:http://pypy.org/download.html#build-from-source)

निर्माण करने के लिए, आपको पहले स्रोत की आवश्यकता है। यदि आपके पास Mercurial स्थापित है, तो आप बस hg clone https://bitbucket.org/alex_gaynor/pypy-postgresql कर सकते हैं। . यदि नहीं, तो आप स्वचालित "टिप" ज़िप फ़ाइल डाउनलोड कर सकते हैं:https://bitbucket.org/alex_gaynor/pypy-postgresql/get/tip.zip

एक कमांड लाइन खोलें, डीकंप्रेस्ड डायरेक्टरी में जाएं, और फिर pypy/translator/goal के अंदर जाएं।

यदि आपके पास PyPy स्थापित है, तो इसे भवन निर्माण के लिए उपयोग करने की अनुशंसा की जाती है:

pypy translate.py -Ojit

अन्यथा:

python translate.py -Ojit

दुख की बात है कि यहीं पर मेरा ज्ञान समाप्त हो जाता है। मुझे त्रुटि मिलती है "BytecodeCorruption: unimplemented opcode, ofs=234, code=203, name=BUILD_LIST_FROM_ARG "



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL के लिए अपग्रेड प्रक्रिया का स्वचालित परीक्षण

  2. विंडोज़ के लिए अच्छा पोस्टग्रेस्क्ल क्लाइंट?

  3. किसी तालिका या दृश्य के लिए आश्रित वस्तुओं का पता लगाएं

  4. Django AutoField प्रारंभ मान को संशोधित करें

  5. PostgreSQL में सीलिंग () कैसे काम करती है