PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Bagaimana Anda membuat PyPy, Django dan PostgreSQL bekerja bersama?

psycopg2cffi (Diperbarui 2015)

psycopg2cffi adalah pengganti lain yang kompatibel dengan psycopg2 dan harus memberikan kinerja PostgreSQL terbaik dengan PyPy. Tambahkan ini ke settings.py . Anda agar tetap kompatibel dengan keduanya:

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

psycopg2-ctypes (2012)

Saya juga tahu bahwa beberapa orang menggunakan psycopg2-ctypes.

Ini adalah cara termudah; untuk tetap kompatibel dengan keduanya, cukup tambahkan kode ini di settings.py Django Anda :

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

Saya menguji ini beberapa rilis yang lalu; sayangnya dalam pengalaman saya, psycopg2-ctypes meniadakan keuntungan kinerja kecil yang diberikan oleh PyPy. Tapi YMMV, itu tergantung pada seberapa ramah JIT kode Anda secara umum dan berapa banyak waktu yang Anda habiskan untuk menjalankan kode Python. Dan mungkin PyPy baru saja meningkat sejak saat itu.

dan menurut saya psycopg2-ctypes belum siap untuk Windows

Saya belum mencoba ini, tetapi ctypes tidak bergantung pada platform. AFAICT Anda hanya perlu memastikan bahwa libpq.dll library dapat dimuat (terletak di direktori di variabel lingkungan PATH atau direktori lokal Anda) dan harus berfungsi di Windows seperti di Linux.

pypy-postgresql

Saya melihat bahwa Alex Gaynor telah membuat garpu PyPy yang disebut pypy-postgresql.

Saya tidak berpikir ini adalah pilihan yang baik dalam jangka panjang. Cabang belum diperbarui selama lebih dari setahun dan upaya saya untuk membangunnya gagal. Dan tampaknya salah mengkodekan driver PostgreSQL di penerjemah.

Saya percaya tidak ada binari di luar sana dari pypy-postgresql, jadi jika Anda ingin menggunakannya, Anda harus membangun sendiri seluruh cabang PyPy. Bukan untuk yang lemah hati:dibutuhkan puluhan menit dan mesin dengan memori minimal 4 GB. (Petunjuk resmi:http://pypy.org/download.html#building-from-source)

Untuk membangun, Anda membutuhkan sumbernya terlebih dahulu. Jika Anda telah menginstal Mercurial, Anda cukup hg clone https://bitbucket.org/alex_gaynor/pypy-postgresql . Jika tidak, Anda dapat mengunduh file zip "tip" otomatis:https://bitbucket.org/alex_gaynor/pypy-postgresql/get/tip.zip

Buka baris perintah, masuk ke direktori yang didekompresi, lalu di dalam pypy/translator/goal

Jika Anda telah menginstal PyPy, disarankan untuk menggunakannya untuk membangun:

pypy translate.py -Ojit

Jika tidak:

python translate.py -Ojit

Sayangnya di sinilah pengetahuan saya berakhir. Saya mendapatkan kesalahan "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. Bagaimana cara menginstal Postgis ke instalasi Tong [dilindungi email] menggunakan Homebrew?

  2. Bagaimana cara memigrasi Tabel Postgres yang ada ke tabel yang dipartisi setransparan mungkin?

  3. PostgreSQL Penskalaan Vertikal

  4. Baris perintah Windows PSQL:apakah ada cara untuk mengizinkan login tanpa kata sandi?

  5. Membuat indeks unik parsial dengan sqlalchemy di Postgres