Dengan kerumitan perniagaan, banyak perusahaan berhadapan dengan sejumlah besar tugas berjadual yang perlu dilaksanakan, dan pengurusan serta penjadualan tugas ini telah membawa tekanan yang besar kepada perusahaan. Sistem penjadualan tugas bersendirian tradisional tidak lagi dapat memenuhi keperluan perusahaan, dan sistem penjadualan tugas teragih telah menjadi pilihan yang perlu. Artikel ini akan memperkenalkan reka bentuk dan pelaksanaan sistem penjadualan tugas teragih berdasarkan Spring Cloud.
1. Reka bentuk seni bina sistem
Spring Cloud menyediakan satu siri alatan dan rangka kerja, seperti Eureka, Ribbon, Feign, Config, Hystrix, dll. Alat dan rangka kerja ini membolehkan kami melaksanakan diedarkan penjadualan tugas Sistem ini telah banyak membantu. Berikut ialah gambar rajah reka bentuk seni bina sistem:
Sistem ini dibahagikan kepada empat bahagian: pusat pengurusan tugas, perkhidmatan tugas berjadual, pelaksana tugas dan pusat log.
2. Pelaksanaan Sistem
Pusat pengurusan tugas dibangunkan menggunakan rangka kerja SpringBoot, dan juga menggunakan Thymeleaf. Di pusat pengurusan tugas, kami boleh menambah, memadam, mengubah suai, melumpuhkan dan mendayakan tugasan yang dijadualkan. Pada halaman, kami memaparkan maklumat asas tugas yang dijadualkan dan peraturan penjadualan tugas.
Dalam pelaksanaan perkhidmatan tugas berjadual, kami terutamanya menggunakan komponen SpringCloud seperti Eureka, Ribbon, Feign dan Config. Kami menggunakan Eureka sebagai pusat pendaftaran, perkhidmatan tugas berjadual mengakses pelaksana tugas melalui Ribbon, menggunakan Feign untuk membuat panggilan antara perkhidmatan dan menggunakan Config untuk melaksanakan fungsi pusat konfigurasi.
Secara khusus, kami meletakkan setiap tugasan yang perlu dijadualkan ke dalam Peta dan mendaftarkannya dalam Eureka. Sekali-sekala, perkhidmatan tugas yang dijadualkan mengakses pelaksana tugas melalui pengimbangan beban Ribbon dan menghantar arahan pelaksanaan tugas kepada pelaksana tugas. Jika pelaksanaan tugas gagal, log pelaksanaan tugas direkodkan dan dihantar ke pusat log.
Pelaksana tugas menggunakan Kuarza untuk melaksanakan penjadualan tugas berjadual dan menggunakan Feign untuk menerima arahan pelaksanaan tugas yang dihantar oleh perkhidmatan tugasan yang dijadualkan. Semasa proses pelaksanaan tugas, kami menyimpan status pelaksanaan tugas, log pelaksanaan dan maklumat lain dalam pangkalan data untuk pertanyaan dan analisis seterusnya.
Pusat log dilaksanakan menggunakan seni bina ELK, termasuk tiga komponen: Elasticsearch, Logstash dan Kibana. Antaranya, Elasticsearch digunakan untuk menyimpan log, Logstash digunakan untuk menghantar log daripada pelaksana tugas ke Elasticsearch, dan Kibana digunakan untuk memaparkan dan menanya maklumat log.
3. Pengoptimuman sistem
Semasa penggunaan sebenar, kami juga perlu mengoptimumkan sistem untuk memastikan kestabilan dan ketersediaan sistem. Beberapa langkah pengoptimuman biasa disenaraikan di bawah:
4. Ringkasan
Berbanding dengan sistem penjadualan tugas bersendirian tradisional, sistem penjadualan tugas yang diedarkan berdasarkan Spring Cloud mempunyai kesesuaian yang lebih tinggi dan berskala yang lebih baik , toleransi kesalahan yang lebih baik dan kelebihan lain Pada masa yang sama, ia juga merupakan pilihan yang berkesan bagi perusahaan untuk melaksanakan penjadualan tugas. Artikel ini memperkenalkan reka bentuk seni bina dan proses pelaksanaan sistem penjadualan tugas teragih berdasarkan Spring Cloud, dan juga membincangkan beberapa langkah pengoptimuman sistem. Saya percaya ia akan membantu semua orang.
Atas ialah kandungan terperinci Sistem penjadualan tugas yang diedarkan berdasarkan Spring Cloud. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!