Jadwal adalah sistem penjadwalan tugas terdistribusi sumber terbuka. Ini dibangun di atas platform .NET Core 3.1 dan mendukung penyebaran dan operasi multi-node lintas-platform.
Asp.net core3.1, entityframework core3.0, mysql5.7, quartz.net, luar, jQuery ...
Sebelum menggunakan, harap persiapkan lingkungan yang diperlukan:
Visual Studio 2019,.NET Core3.1 SDK,Mysql 5.7(可选),SQLServer(可选),PostgreSQL(可选),Centos(可选),Docker(可选).
Berikut ini adalah contoh penggunaan MySQL sebagai database dan meluncurkannya dalam file konfigurasi . Untuk metode lain, lihat dokumentasi terperinci.
Unduh kode sumber secara lokal, lalu buka solusi dengan VS2019 dan kompilasi.
Buka file appsettings.json di direktori root proyek hos.schedulemaster.web, pertama-tama ubah string koneksi database MySQL untuk memastikan akses basis data yang normal, kemudian temukan node NodeSetting , ubah IP dan publikasi publikasi (port publikasi dan tidak perlu dimodifikasi.
Buka file appsettings.json di direktori root proyek hos.schedulemaster.quartzhost, pertama-tama memodifikasi string koneksi mysql, kemudian menemukan node NodeSetting , mengatur nama IdentityName pekerja, dan memodifikasi bidang IP (yang disarankan untuk disebarkan, dan bidang pelabuhan untuk alamat, dan memodifikasi ke dalam bidang IP (yang disarankan untuk dikerahkan, dan Port bidang ke alamat yang akan ditetapkan (dan disediakan untuk dinanti (dan disediakan untuk diterapkan, dan port field ke alamat, untuk mendaftarkan (dan memodifikasi IP. Publikasikan ke folder lokal. Jika Anda ingin menambahkan pekerja baru, cukup konfigurasikan IdentityName、IP、Port dengan cara yang sama. Setelah pekerja mulai, ia akan menyuntikkan informasi sendiri ke dalam database dan dapat dilihat di master.
Kiat rilis cepat: Gunakan PowerShell untuk mengeksekusi skrip
publish.ps1pada platform Windows untuk dengan cepat menerbitkannya ke direktorid:/sm-publish, dan menjalankan skripsh publish.shpada platform Linux untuk dengan cepat menerbitkannya ke direktori/home/sm-publish.
Metode penerbitan lainnya juga dimungkinkan. Berikut adalah contoh menjalankan 2 node pekerja:
dotnet Hos.ScheduleMaster.Web.dll untuk memulai program. Startup pertama akan secara otomatis bermigrasi dan menghasilkan struktur basis data dan menginisialisasi data benih . Buka browser dan masukkan IP dan port untuk mengakses ( admin nama pengguna awal, kata sandi 111111 ).dotnet Hos.ScheduleMaster.QuartzHost.dll --urls http://*:30001 untuk memulai program. Buka browser dan masukkan IP dan port dan Anda akan melihat halaman selamat datang, menunjukkan bahwa pekerja telah dimulai dengan sukses.appsettings.json di bawah pekerja dengan konfigurasi pekerja2 (lewati jika telah dimodifikasi sebelum rilis), dan jalankan perintah dotnet Hos.ScheduleMaster.QuartzHost.dll --urls http://*:30002 untuk memulai program.Pastikan mesin memiliki
.NET Core3.1Runtime Environment terpasang sebelum berjalan.
Salin file penerbitan ke CentOS, dan langkah -langkah operasinya sama dengan Windows.
docker build -t ms_master . Perintah di direktori publikasi master untuk menghasilkan gambar master, dan kemudian jalankan docker run -d -p 30000:30000 --name="mymaster" ms_master untuk menjalankan wadah.docker build -t ms_worker . Perintah dalam direktori Publish Pekerja untuk menghasilkan gambar pekerja, dan kemudian menjalankan docker run -d -p 30001:80 --name="myworker1" ms_worker bash --identity=docker-worker1 --ip=你的宿主机IP --port=30001 Jalankan wadah untuk memulai pekerja1.docker run -d -p 30002:80 --name="myworker2" ms_worker bash --identity=docker-worker2 --ip=你的宿主机IP --port=30002 Jalankan wadah untuk memulai pekerja2.docker ps untuk memeriksa status berjalan dari setiap wadah. Jika tidak dapat dijalankan, silakan periksa log kontainer. QQ Group: 824535095
Silakan membayar, harap dicatat jika Anda menyukainya ~