Dengan populariti seni bina perkhidmatan mikro, semakin banyak perusahaan mula menggunakan Spring Cloud sebagai penyelesaian perkhidmatan mikro. Walau bagaimanapun, oleh kerana setiap komponen dalam sistem perkhidmatan mikro digunakan secara bebas, apabila masalah berlaku dalam sistem, sukar untuk mencari punca masalah dengan cepat. Pada masa ini, penjejakan pautan menjadi alat penting.
Artikel ini akan memperkenalkan pelaksanaan penjejakan pautan dalam perkhidmatan mikro Spring Cloud dan membincangkan cara menggunakan penjejakan pautan untuk mencari masalah.
1. Apakah itu pengesanan pautan
Penjejakan pautan ialah teknologi yang boleh menjejaki permintaan dalam sistem yang diedarkan dan merekodkan keseluruhan laluan permintaan dalam sistem yang diedarkan. Laluan ini termasuk keseluruhan proses daripada pemula perkhidmatan kepada pembekal perkhidmatan untuk mengembalikan hasil. Melalui pengesanan pautan, kami dapat memahami berapa lama permintaan itu diambil pada pelbagai peringkat dalam sistem, dan pada komponen mana masalah itu berlaku.
2. Pelaksanaan penjejakan pautan
Dalam Spring Cloud, kita boleh menggunakan Zipkin sebagai alat penjejakan pautan. Zipkin ialah sistem pengesanan teragih sumber terbuka yang boleh digunakan untuk mengumpul, menganalisis dan menanyakan data pengesanan dalam aplikasi yang diedarkan. Zipkin membolehkan kami memahami penyebaran permintaan dalam sistem yang diedarkan dan menunjukkan masa tindak balas dan masa pemprosesan permintaan dalam komponen yang berbeza.
Komponen teras utama Zipkin ialah Pengumpul, Penyimpanan dan Perkhidmatan Pertanyaan:
Pengumpul digunakan untuk mengumpul maklumat panggilan antara perkhidmatan dan bertanggungjawab untuk menyimpan maklumat panggilan dalam Storan.
Storage ialah komponen penyimpanan yang digunakan oleh Zipkin boleh menggunakan pelbagai kaedah penyimpanan, seperti Cassandra, MySQL, dll.
Perkhidmatan Pertanyaan digunakan untuk membuat pertanyaan dan memaparkan data penjejakan.
Dalam Spring Cloud, kami boleh menyepadukan Zipkin dengan menggunakan Spring Cloud Sleuth. Sleuth ialah penyelesaian pengesanan teragih khusus untuk perkhidmatan mikro Spring Cloud yang boleh menyediakan keupayaan pengesanan pautan berasaskan Zipkin untuk aplikasi perkhidmatan mikro. Sleuth menjana secara automatik Trace ID untuk setiap perkhidmatan dan menambah Trace ID pada komunikasi antara perkhidmatan. Apabila permintaan melalui sistem, setiap perkhidmatan membawa ID Trace dan menambahkan ID Span sendiri pada permintaan. Dengan cara ini kita boleh mengisih permintaan berdasarkan Trace ID dan melihat cara permintaan dikendalikan dalam komponen yang berbeza.
3. Cara menggunakan pengesanan pautan untuk mengesan masalah
Apabila menggunakan pengesanan pautan untuk menyelesaikan masalah, kita boleh mengikuti langkah berikut:
Apabila kami menemui masalah dengan permintaan, kami perlu mencari Trace ID permintaan tersebut terlebih dahulu. Kami boleh memasukkan ID Trace pada halaman pertanyaan Zipkin untuk bertanya dan melihat laluan keseluruhan permintaan dalam sistem.
Selepas kita melihat laluan permintaan dalam sistem, kita perlu memberi perhatian kepada masa pemprosesan yang dibelanjakan oleh setiap komponen . Kami boleh melihat setiap rentang komponen pada halaman pertanyaan Zipkin dan melihat masa pemprosesan rentang. Jika masa pemprosesan Span terlalu lama, ini bermakna terdapat masalah dengan komponen ini.
Selepas kami mendapati komponen mana yang mengalami masalah, kami perlu menjejaki masa tertentu apabila masalah itu berlaku. Pada ketika ini, kami boleh mengesan kembali keseluruhan pautan permintaan dan menyemak log komponen tertentu apabila masalah berlaku untuk mencari maklumat pengecualian atau timbunan ralat. Dengan cara ini kita boleh mencari masalah dan menyelesaikannya dengan lebih cepat.
4. Ringkasan
Penjejakan pautan ialah alat yang sangat penting dalam sistem teragih, yang boleh membantu kami mencari masalah dengan cepat. Dalam perkhidmatan mikro Spring Cloud, kami boleh menggunakan Zipkin sebagai alat penjejakan pautan dengan menyepadukan Spring Cloud Sleuth. Apabila masalah berlaku, kami boleh menggunakan maklumat penjejakan pautan untuk membantu kami mengesan masalah dengan cepat dan mempercepatkan penyelesaian masalah dan penyelesaian.
Atas ialah kandungan terperinci Pelaksanaan penjejakan pautan dalam perkhidmatan mikro Spring Cloud. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!