Penjelasan prinsip dan mekanisme dubbo: 1. Komponen teras; 3. Toleransi kesalahan kluster; ; 8. Skalabiliti 9. Keselamatan; 10. Integrasi dengan Spring; Pengenalan terperinci: 1. Komponen teras, termasuk pusat pendaftaran, pusat pemantauan, pengguna perkhidmatan dan pembekal perkhidmatan 2. Prinsip komunikasi, Dubbo menggunakan rangka kerja komunikasi rangkaian untuk membuat panggilan perkhidmatan, dan ia menyediakan pelbagai sambungan jangka panjang berdasarkannya; .
Sistem pengendalian tutorial ini: sistem Windows 10, komputer DELL G3.
Dubbo ialah rangka kerja perkhidmatan teragih berprestasi tinggi, digunakan terutamanya untuk meningkatkan prestasi perkhidmatan dan panggilan prosedur jauh (RPC) yang telus. Berikut ialah penjelasan terperinci tentang prinsip dan mekanisme Dubbo:
1 Komponen teras:
- Pendaftaran: Pengguna dan penyedia perkhidmatan mendaftar dan menemui melalui pendaftaran. Pusat pendaftaran bertanggungjawab untuk menyimpan maklumat pembekal perkhidmatan dan memberitahu pengguna tentang perubahan dalam penyedia perkhidmatan.
- Monitor: Pusat pemantauan digunakan untuk mengumpul maklumat statistik mengenai panggilan perkhidmatan, seperti bilangan panggilan, masa panggilan, dsb., dan menghantarnya ke pusat pemantauan dalam masa nyata.
- Pengguna Perkhidmatan (Pengguna): Pengguna perkhidmatan mendapatkan senarai alamat penyedia perkhidmatan melalui pusat pendaftaran, dan kemudian memilih penyedia perkhidmatan yang sesuai untuk dihubungi mengikut dasar pengimbangan beban.
- Pembekal Perkhidmatan: Pembekal perkhidmatan mendedahkan antara muka perkhidmatannya kepada pengguna dan menerbitkan perkhidmatannya melalui pusat pendaftaran.
2. Prinsip komunikasi:
- Dubbo menggunakan rangka kerja komunikasi rangkaian untuk membuat panggilan perkhidmatan. Ia menyediakan enkapsulasi abstrak pelbagai rangka kerja NIO berasaskan sambungan jangka panjang, termasuk kaedah bersiri model berbilang benang dan kaedah pertukaran maklumat mod "permintaan-tindak balas". Kaedah komunikasi berdasarkan sambungan yang panjang ini dapat mengurangkan kos setiap komunikasi dan meningkatkan prestasi panggilan perkhidmatan.
3. Toleransi kesalahan kelompok:
- Dubbo menyediakan panggilan prosedur jauh telus berdasarkan kaedah antara muka, termasuk sokongan berbilang protokol, serta sokongan kelompok seperti pengimbangan beban lembut, toleransi kegagalan, penghalaan alamat, konfigurasi dinamik , dsb. Mekanisme toleransi kesalahan ini memastikan bahawa apabila masalah berlaku dengan pembekal perkhidmatan, pengguna boleh bertukar secara automatik kepada pembekal lain yang tersedia, memastikan ketersediaan perkhidmatan.
4. Penemuan dan pendaftaran automatik:
- Dubbo adalah berdasarkan perkhidmatan direktori pusat pendaftaran, membolehkan pengguna perkhidmatan mencari pembekal pelayan secara dinamik, menjadikan alamat telus dan membenarkan penyedia perkhidmatan menambah atau mengurangkan mesin dengan lancar. Apabila pembekal perkhidmatan bermula, mereka mendaftarkan maklumat mereka dalam pendaftaran. Pengguna juga akan melanggan perkhidmatan yang mereka perlukan di pusat pendaftaran apabila mereka mula. Apabila penyedia perkhidmatan atau pengguna memulakan atau berhenti, pusat pendaftaran akan menolak pemberitahuan kepada pengguna supaya pengguna boleh mendapatkan status perkhidmatan terkini tepat pada masanya.
5 Pengimbangan beban dan penghalaan:
- Dubbo menyokong pelbagai strategi pengimbangan beban, seperti rawak, pengundian, panggilan paling kurang aktif, dsb. Pengguna memilih penyedia perkhidmatan yang sesuai untuk dihubungi berdasarkan dasar pengimbangan beban. Pada masa yang sama, Dubbo juga menyokong penghalaan berasaskan kaedah, yang boleh dialihkan berdasarkan nama kaedah, jenis parameter, dll., untuk mencapai panggilan perkhidmatan yang lebih fleksibel.
6 Pensirian dan penghantaran:
- Dubbo menyokong pelbagai protokol bersiri, seperti Hessian2, Kryo, Protobuf, dll. Protokol siri digunakan untuk menukar data kepada format yang boleh dihantar melalui rangkaian. Dubbo boleh memilih protokol bersiri yang sesuai seperti yang diperlukan untuk meningkatkan kecekapan dan keserasian penghantaran data.
7. Pemantauan dan pembalakan:
- Dubbo menyediakan fungsi pemantauan yang boleh mengumpul statistik panggilan perkhidmatan, seperti bilangan panggilan, masa panggilan, dll, dan menghantarnya ke pusat pemantauan. Ini boleh membantu pemaju dan kakitangan operasi dan penyelenggaraan memahami prestasi dan kesesakan perkhidmatan dan membuat pengoptimuman yang sepadan. Pada masa yang sama, Dubbo juga menyediakan fungsi output log terperinci untuk memudahkan penyahpepijatan dan penyelesaian masalah.
8. Kebolehskalaan:
- Dubbo mempunyai kebolehskalaan yang baik dan membolehkan pembangun menyesuaikan beberapa fungsi, seperti strategi pengimbangan beban, protokol bersiri, dsb. Ini membolehkan Dubbo memenuhi pelbagai keperluan dan senario perniagaan yang berbeza.
9 Keselamatan:
- Dubbo menyokong mekanisme pengesahan dan kebenaran keselamatan berasaskan OAuth2 untuk memastikan keselamatan dan kawalan kebenaran semasa panggilan perkhidmatan. Pada masa yang sama, Dubbo juga menyokong penggunaan SSL/TLS untuk komunikasi yang disulitkan bagi melindungi keselamatan penghantaran data.
10 Penyepaduan dengan Spring:
- Dubbo boleh disepadukan dengan lancar dengan rangka kerja Spring, menjadikan konfigurasi dan pengurusan perkhidmatan lebih mudah dan fleksibel. Melalui konfigurasi Spring, anda boleh mendayakan perkhidmatan Dubbo dengan mudah dan menentukan parameter yang berkaitan.
11. Integrasi dengan teknologi lain:
- Dubbo tidak terhad kepada platform Java, tetapi juga boleh disepadukan dengan bahasa dan platform lain. Sebagai contoh, Dubbo menyediakan sokongan untuk Python, C++, dsb., membenarkan perkhidmatan dalam bahasa berbeza untuk memanggil dan berintegrasi antara satu sama lain.
Atas ialah kandungan terperinci Apakah prinsip dan mekanisme dubbo. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!