Rumah > Artikel > pembangunan bahagian belakang > Cara menggunakan PHP untuk operasi dan penyelenggaraan automatik asas
Dalam era Internet hari ini, kerja operasi dan penyelenggaraan telah menjadi bahagian penting dalam pembangunan syarikat Internet Melalui operasi dan penyelenggaraan automatik, pengurusan IT yang lebih cekap, stabil dan selamat dapat dicapai. Sebagai bahasa pengaturcaraan arus perdana, PHP juga memainkan peranan penting dalam operasi dan penyelenggaraan automatik. Artikel ini akan memperkenalkan cara menggunakan PHP untuk operasi dan penyelenggaraan automatik asas.
1. Pengerahan automatik
Kerahan automatik ialah aspek penting dalam operasi dan penyelenggaraan automatik Terdapat alat penggunaan sumber terbuka dalam PHP - Capistrano, yang boleh merealisasikan penggunaan kodnya dengan mudah asas Prinsipnya ialah menggunakan protokol SSH untuk menyambung dari jauh ke pelayan untuk melaksanakan satu siri operasi automatik. Berikut ialah langkah-langkah untuk penggunaan PHP automatik menggunakan Capistrano:
Buka terminal menggunakan alat baris arahan dan masukkan arahan berikut:
gem install capistrano
Buat fail Capfile baharu dalam direktori akar projek anda, dan kemudian tambah kod berikut di dalamnya:
# 配置使用的插件 require 'capistrano/composer' require 'capistrano/laravel' require 'capistrano/passenger' # 配置行为(任务) set :application, 'your_application_name' set :repo_url, 'your_git_repo_address' set :branch, 'master' set :deploy_to, '/var/www/your_application_name' set :keep_releases, 5 set :linked_files, %w{.env} set :linked_dirs, %w{storage} namespace :deploy do after :finishing, 'composer:install' after :finishing, 'laravel:migrate' after :finishing, 'laravel:optimize' after :finishing, 'passenger:restart' end
Dalam konfigurasi di atas , kami menggunakan tiga Pemalam Capistrano: komposer, laravel dan penumpang. Ia digunakan untuk memasang pakej pergantungan PHP, memindahkan rangka kerja Laravel dan memulakan semula proses Passenger. Selain itu, kami juga menyatakan nama aplikasi, alamat repositori kod, cawangan kerahan, laluan penggunaan, bilangan versi sejarah untuk dikekalkan dan fail serta direktori yang perlu dipautkan. Masukkan arahan berikut dalam baris arahan:
cap install
untuk menjana fail konfigurasi penggunaan lalai.
Masukkan direktori akar projek dalam terminal dan masukkan arahan berikut:
cap production deploy
di mana pengeluaran merujuk kepada pelayan penempatan anda Nama boleh diubah suai dalam config/deploy.rb.
2. Pemantauan log
Pemantauan log adalah bahagian penting dalam kerja operasi dan penyelenggaraan Apabila keabnormalan berlaku dalam sistem, maklumat berkaitan log boleh membantu kami mencari masalah dengan lebih cepat dan menyelesaikannya . Terdapat alat pengumpulan log sumber terbuka dalam PHP - Logstash, yang boleh menolak data secara automatik ke pelayan yang ditetapkan apabila data log berubah. Berikut ialah langkah-langkah untuk menggunakan Logstash untuk pemantauan log PHP:
Masukkan arahan berikut dalam baris arahan:
brew install logstash
di mana brew ialah Alat pengurusan pakej pada sistem Mac OS Jika anda menggunakan sistem lain, anda boleh pergi ke tapak web rasmi untuk memuat turun pakej pemasangan dan memasangnya.
Buat fail logstash.conf baharu di bawah folder config/logstash/config dan konfigurasikan parameter yang sepadan di dalamnya, contohnya:
input { file { path => "/var/www/your_application_name/storage/logs/laravel.log" } } filter { grok { match => { "message" => "%{HTTPDATE:timestamp} %{LOGLEVEL:loglevel}: %{GREEDYDATA:message}" } add_tag => ["%{loglevel}"] remove_field => ["message"] } } output { elasticsearch_http { host => ["127.0.0.1:9200"] index => "your_application_name-%{+YYYY.MM.dd}" } }
Maksud konfigurasi di atas ialah kita membaca data daripada fail dengan laluan fail /var/www/your_application_name/storage/logs/laravel.log, dan kemudian menggunakan ungkapan biasa grok untuk memisahkan maklumat log dan Tandakannya dengan tahap log yang sepadan (seperti AMARAN, RALAT, dll.), dan akhirnya menolak data yang diproses ke pelayan Elasticsearch yang dijalankan secara tempatan.
Masukkan arahan berikut dalam terminal untuk memulakan Logstash dan baca fail konfigurasi yang baru kami tulis:
/opt/logstash/bin/logstash -f /path/to/config/file/logstash.conf
Di mana, /opt /logstash/bin mewakili laluan Logstash anda dan /path/to/config/file/logstash.conf mewakili laluan fail konfigurasi anda.
3. Tugas automatik
Tugas automatik merujuk kepada skrip yang dilaksanakan secara automatik pada selang masa yang tetap, seperti sandaran biasa, storan luar tapak, dsb., yang boleh mengurangkan tekanan operasi manual . Terdapat alat pengurusan tugas berjadual sumber terbuka dalam PHP - Crontab, yang secara automatik boleh melaksanakan skrip yang sepadan pada masa yang ditentukan. Berikut ialah langkah untuk menggunakan Crontab untuk pengurusan tugasan automatik PHP:
Tulis kod tugasan yang ditentukan dalam fail skrip yang sepadan.
Masukkan arahan berikut dalam terminal:
crontab -e
Masukkan mod pengeditan dan tambah kandungan berikut pada fail:
# 每周一备份数据库 0 0 * * 1 /usr/bin/php /path/to/script.php
Maksud tugas berjadual di atas adalah untuk melaksanakan skrip /path/to/script.php pada 00:00 setiap hari Isnin, dan melaksanakan operasi pangkalan data sandaran dalam skrip ini.
Masukkan arahan berikut dalam terminal:
crontab -l
untuk melihat tugas berjadual yang dikonfigurasikan.
Ringkasan
Melalui pengenalan di atas, kita dapat melihat bahawa PHP memainkan peranan penting dalam merealisasikan operasi dan penyelenggaraan automatik. Untuk pemula, anda boleh merujuk kepada contoh kod di atas untuk pembelajaran dan latihan lanjut. Sudah tentu, apabila melakukan operasi dan penyelenggaraan automatik, anda juga perlu memberi perhatian kepada isu seperti keselamatan, kebolehpercayaan dan kestabilan Pada masa yang sama, semasa menjalankan operasi sebenar, adalah disyorkan untuk menggunakan persekitaran ujian untuk eksperimen untuk memastikannya ia tidak akan menjejaskan persekitaran pengeluaran formal.
Atas ialah kandungan terperinci Cara menggunakan PHP untuk operasi dan penyelenggaraan automatik asas. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!