KamoCRM

Baca komit changelog publik dari buku besar, bukan COUNT (*)

PerformanceSecurityService
Dikirim
23 September 2026 pukul 13.48 UTC
Penulis
Kamo
Commit
41e4a00

pg _ stat _ restation: 'SELECT COUNT (c) DARI Kompalog c WHERE c.project IN (: ~ 33 projek publik) [AND c.Complets TypeId =: t] 'run ~ 140K kali sehari di 100-200 ms masing-masing (diukur pada produksi sebelum perubahan ini) - setiap tampilan daftar halaman (page (), alamat () / sitemap) dan setiap / changelog / public / statistik panggilan, pada titik akhir yang tidak mengambil otentikasi. commit _ log memiliki ~ 19K baris di 38 proyek; jumlah itu sendiri murah, tetapi dijalankan pada setiap permintaan. create _ commit _ log _ ledger.sql menambahkan total yang sama bentuk + journal create _ lead _ entry _ ledger.sql penggunaan: commit _ log _ counts (sebuah total per (projek, tipe commit)) plus sebuah append-only commit _ log _ count _ deltas jurnal bahwa pemicu baris pada commit _ log menulis dalam sama transaksi sebagai sebuah insert, sebuah project / type- mengubah pemutakhiran, atau menghapus. Diapan dengan tangan sebagai pemilik dan backfilled; DaemonService sekarang melipat dan mengulangnya (commit terpisah, perf (changelog): lipat dan kaitkan ulang komite changelog 's publik buku besar, dijalankan pertama). * * * * * * * * * * * * * * * dan sekarang baca total + journal dalam satu pernyataan asli daripada sebuah JUMLAH JPQL (c) - metode baru pada PublicChangelogService (header sudah menjelaskan mengapa filter / query halaman publik perlu tinggal di sini dan tidak di kamo- shared-library) daripada CommitLogRepositori, jadi ini tidak diperlukan shared-library pasti. today Count () tidak tersentuh: ini adalah jumlah jendela berbatas yang didukung oleh ix _ commit _ log _ date _ uid, bukan ~ 140K-call pola. Diverifikasi terhadap produksi sebelum beralih: total buku besar cocok COUNT (*) persis di seluruh semua 264 (projek, tipe commit) pasangan (0 tidak cocok) setelah backfill, dan tiga commit _ log pemicu tembakan dengan benar (terbukti didalam transaksi rolled-back sebagai kamo _ app, aplikasi sendiri kredensial).

Semua perubahan

Seperti apa yang Anda lihat pengiriman?

Semua itu tiba di ruang kerjamu sendiri. Mulailah dengan rencana gratis dan baca halaman ini lagi dalam sebulan.

Mulai Bebas SelamanyaTampilkan Harga