Dalam lingkungan komputasi awan skala besar, penurunan kinerja sekecil apa pun dapat menyebabkan pemborosan sumber daya dalam jumlah besar. Meta dihadapkan pada tantangan untuk mendeteksi dan menyelesaikan masalah kinerja halus ini secara efektif. Untuk mencapai tujuan ini, tim Meta AI mengembangkan FBDetect, sebuah sistem yang dapat mendeteksi regresi kinerja yang sangat kecil di lingkungan produksi dengan akurasi bahkan 0,005%. Editor Downcodes akan memperkenalkan Anda secara detail prinsip kerja dan hasil luar biasa dari FBDetect.
Dalam pengelolaan infrastruktur cloud yang besar, penurunan kinerja sekecil apa pun dapat menyebabkan pemborosan sumber daya yang signifikan. Misalnya, di perusahaan seperti Meta, pelambatan 0,05% dalam suatu aplikasi mungkin tampak tidak signifikan, namun ketika jutaan server berjalan secara bersamaan, penundaan kecil ini dapat menyebabkan ribuan server terbuang. Oleh karena itu, menemukan dan menyelesaikan regresi kinerja kecil ini secara tepat waktu merupakan tantangan besar bagi Meta.
Untuk mengatasi masalah ini, Meta AI meluncurkan FBDetect, sistem deteksi regresi kinerja untuk lingkungan produksi yang dapat menangkap regresi kinerja terkecil, bahkan serendah 0,005%. FBDetect mampu memantau sekitar 800.000 rangkaian waktu, yang mencakup berbagai indikator seperti throughput, latensi, penggunaan CPU dan memori, yang melibatkan ratusan layanan dan jutaan server. Dengan menggunakan teknik inovatif seperti pengambilan sampel jejak tumpukan di seluruh cluster server, FBDetect mampu menangkap perbedaan kinerja tingkat subrutin yang halus.
FBDetect terutama berfokus pada analisis kinerja tingkat subrutin, yang dapat mengurangi kesulitan deteksi dari regresi tingkat aplikasi 0,05% menjadi perubahan tingkat subrutin 5% yang lebih mudah diidentifikasi. Pendekatan ini secara signifikan mengurangi kebisingan, membuat pelacakan perubahan menjadi lebih praktis.
Inti teknis FBDetect terdiri dari tiga aspek utama. Pertama, mengurangi varians data kinerja melalui deteksi regresi pada tingkat subrutin, sehingga regresi kecil dapat diidentifikasi pada waktunya. Kedua, sistem melakukan pengambilan sampel pelacakan tumpukan di seluruh cluster server untuk mengukur kinerja setiap subrutin secara akurat, serupa dengan analisis kinerja dalam lingkungan skala besar. Terakhir, untuk setiap regresi yang terdeteksi, FBDetect melakukan analisis akar masalah untuk menentukan apakah regresi disebabkan oleh masalah sementara, perubahan biaya, atau perubahan kode sebenarnya.
Setelah tujuh tahun pengujian di lingkungan produksi sebenarnya, FBDetect memiliki kemampuan anti-interferensi yang kuat dan dapat secara efektif menyaring sinyal regresi palsu. Pengenalan sistem ini tidak hanya akan mengurangi secara signifikan jumlah insiden yang perlu diselidiki oleh pengembang, namun juga meningkatkan efisiensi infrastruktur Meta. Dengan mendeteksi regresi kecil, FBDetect membantu Meta menghindari pemborosan sumber daya di sekitar 4.000 server per tahun.
Di perusahaan besar seperti Meta dengan jutaan server, deteksi regresi kinerja sangatlah penting. Dengan kemampuan pemantauan tingkat lanjut, FBDetect tidak hanya meningkatkan tingkat identifikasi regresi kecil, namun juga memberi pengembang metode analisis akar masalah yang efektif untuk membantu memecahkan potensi masalah secara tepat waktu, sehingga mendorong pengoperasian seluruh infrastruktur secara efisien.
Pintu masuk kertas: https://tangchq74.github.io/FBDetect-SOSP24.pdf
Kasus FBDetect yang berhasil memberikan pengalaman berharga bagi perusahaan besar dan memberikan arahan baru untuk pengembangan sistem pemantauan kinerja di masa depan. Pemanfaatan sumber daya yang efisien dan kemampuan deteksi regresi yang akurat layak dijadikan referensi dan pembelajaran oleh industri. Mudah-mudahan, lebih banyak teknologi inovatif seperti ini akan muncul untuk membantu perusahaan mengelola dan mengoptimalkan infrastruktur cloud mereka dengan lebih baik.