سؤال

أبدأ بعض المشاريع الجديدة وأريد معرفة ما إذا كان PG8000 يعتبر خيارًا جيدًا لمشروع الإنتاج؟

من الواضح أن Python و PostgreSQL من منتجات ناضجة ، لكنني قلق بشأن PG8000 على حد سواء عندما يتعلق الأمر بالنضج والأداء. هل سيعاني وصول DB الخاص بي أم سيكون مقبولًا؟

لذا ، يرجى أخذ بعض خطوط الطول في الرد على سؤالي. هل PG8000 جاهز؟ هل سأواجه مشاكل في استخدام Python DBAPI 2.0 Spec للوصول الكامل عند كتابة برنامج Centric DB؟

أعرف أن أسئلة كهذه يتم طرحها طوال الوقت ، لكنني نظرت ولم أتمكن من العثور على أي شيء يتعلق بـ PG8000. ومن الواضح أن أي إجابة بعد بضعة أشهر لن تكون حالية بالنظر إلى الإصدارات التي تم ارتكابها على التقنيات ذات الصلة.

هل كانت مفيدة؟

المحلول

أعتقد أن يجب أن تحاول جعل برنامج تشغيل البرنامج "مستقل". يجب أن تعمل مع أي برنامج تشغيل PostgreSQL DBAPI 2.0. سيكون الفرق الوحيد في قسم الاستيراد وفي إنشاء اتصال DB. هذا يمكن أن يبدو:

use_pgdb = 0
try:
    import pgdb
    use_pgdb = 1
except:
    try:
        import psycopg2
    except:
        raise exceptions.ImportError('No PostgreSQL library, install psycopg2 or PyGres!')
if use_pgdb:
    _CONN = pgdb.connect(connect_string)
else:
    _CONN = psycopg2.connect(dsn)

أضف إلى هذه "سلسلة" السائقين pg8000 وببساطة جربها. إذا كانت جميع برامج التشغيل ستعمل وسيكون الأداء جيدًا ، فستترك هؤلاء السائقين. إذا لم ينجح أحد السائقين ، أو سيحصل على أداء ضعيف ، فقم بالتعليق عليه في التعليمات البرمجية وتعطيله. لأكثر من سائقين ، سأقوم بتغيير التعليمات البرمجية من المثال وإنشاء نوع من القاموس باستخدام وظيفة برنامج التشغيل والاتصال.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top