KamoCRM

Berhenti meminta tiga query panas satu baris pada suatu waktu

PerformanceKBService
Dikirim
23 September 2026 pukul 13.39 UTC
Penulis
Kamo
Commit
60e1921

Tiga kueri pg _ stat _ statement menunjukkan sebagai kbservice atas produksi DB biaya, semua dari meminta dalam sebuah loop (atau dengan rencana Yugabita warisan DB Perencana memilih buruk) apa yang dapat menjawab satu query: - * * * * * * * * * * * * * * (peta nada dan setiap tree / list / single- articles response 's hinrgang data) sekarang baca Melalui... pg _ hint _ plan-hinted query native (kamo-shared-library, commit terpisah) bahwa pin Hash Bergabung perencana tidak memilih sendiri. ~ 6.000 panggilan di ~ 11 s masing-masing dalam produksi; diverifikasi dengan EXPLAIN, 11.9 s - > 0.2 s untuk 308-artikel org yang sama. - * * * * * * * * * * * * * * ( sepuluh menit terjemahan - coba menyapu) sekarang meminta ♪ Once for the ♪ seluruh batch dari artikel yang diterbitkan daripada countByPasal _ Uid per artikel - 1.7M panggilan dalam produksi, diganti dengan satu kelompok membaca. - buildPublicChidlenMap dan buildUidToGuidMap, di KbArticleService, adalah Dihapus. Mereka mati kode ditinggalkan ketika * * * * * * * * * * * * * * pindah untuk mengambil pre- built PublicTreeIndex (155e7de) daripada membangun kembali satu dari baris penuh artikel beban: tidak memiliki pemanggil kiri, tetapi masing-masing masih persis ~ 306000- call / ~ 80 ms full- row kb _ articles query (content _ json termasuk) pg _ stat _ statement menunjukkan - sebuah perangkap lambat, tidak dapat dicapai untuk Penelepon berikutnya untuk menemukan dengan menggunakannya, bukan lalu lintas langsung. buildPublicComment TreeIndex sendiri sudah membaca proyeksi sempit LoadPublicc ArticlesForTree ditambahkan pada 155e7de, dikonfirmasi langsung dalam produksi (8.730 panggilan di ~ 17 ms masing-masing, tumbuh) - yang memperbaiki sudah dikirim, ini hanya menghapus dua situs panggilan sisa masih mampu memperkenalkan kembali biaya full- baris. Tes: KbDiterjemahkan oleh LocalesServiceTest dan * * * * * * * * * * * * * * * menutupi batch ini menambahkan (BATCH chunking, null / duplikasi uid handling, pengelompokan ground- baris, "absen berarti nol"); baik mutasi diperiksa dengan membalikkan fix lokal, mengkonfirmasikan mereka pergi merah, dan memulihkan itu. Juga diulas: kb _ articles _ relations dan daftar data KB-admin paginated query (org / status / induk _ id varian dari kb _ articles full- row load) muncul dalam pg _ stat _ statement dengan total besar tetapi tidak biasa per- call Latensi (1-20 ms) dan tidak ada tanda-tanda rencana buruk - dibiarkan sendirian. * * * * * * * * * * * * * * * * * yang disebut sekali per item pada anak-anak publik - oleh - orang tua - halaman siput (dibatasi oleh halaman ukuran, digated belakang tidak-bahasa Inggris lokal) - bukan pola pelarian Tiga lainnya, juga ditinggalkan sendirian.

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