Menyimpan sebuah artikel diblokir pada 21 terjemahan panggilan

FixKBService
Dikirim
2 September 2026 pukul 02.17 UTC
Penulis
Kamo
Commit
0459b9a

@ Async was inert. * * * * * * * * * * * * * * * dipanggil translasi Artikel pada kacang yang sama, sehingga panggilan langsung ke ini dan tidak pernah mencapai proksi yang membuatnya asinkron. Kejengkelan adalah Tepat di berkas, itulah sebabnya tidak ada yang menangkapnya dengan membaca. Apa biaya: setiap artikel menyimpan berlari 21 sequensial HTTP panggilan ke layanan terjemahan - satu per lokal, 120- detik baca timeout setiap - sebelum jawaban mencapai penyunting penulis. Sebuah terjemahan yang sehat layanan membuatnya hanya lambat. Seorang yang sakit membuat tabungan artikel mengambil lebih baik dari satu jam. Ditemukan oleh impor yang tergantung pada artikel pertama. Pekerjaan pindah ke KbArticleTranslator, kacang terpisah, karena melintasi batas kacang adalah apa yang membuat proxy nyata. Dua konsekuensi yang layak ditangani dalam perubahan yang sama: Seorang eksekutor, karena tidak ada. Spring 's fallback starts a fresh thread per tugas dan tidak pernah menggunakan kembali, sehingga benar-benar antri tiga ratus artikel akan menjawab dengan tiga ratus benang semua dial layanan yang sama. Now a bounded pool with a bounded queue and CallerRunsPolicy -- menolak akan menjatuhkan terjemahan diam-diam dan sebuah antrian tak terbatas akan menyembunyikan backlog, sedangkan caller- berjalan memperlambat produser dengan laju Kolam bisa bertahan. Sebuah terikat pada menyapu ulang, yang berjalan setiap artikel diterbitkan dan diterjemahkan inline. Inline yang lambat; antrian, itu akan menyerahkan eksekusi ribuan tugas dalam satu centang. Sekarang antrian 25 per menyapu dan bekerja backlog bawah lebih dari beberapa.

Semua perubahan

Seperti apa yang Anda lihat pengiriman?

Semua pembaruan ini secara otomatis mendarat di ruang kerja Anda. Mulai bebas dan menontonnya tumbuh minggu demi minggu.

Mulai Bebas SelamanyaTampilkan Harga