Menguasai Cron Job dan Mengotomasi Tugas-Tugas Server Dasar

Artikel ditulis oleh:
  • Menampilkan Artikel
  • Diperbarui: Sep 06, 2017

Web hosting dirancang agar mudah, mudah, dan sempurna untuk profesional yang sedang bepergian dan tidak bisa mendedikasikan setiap jam setiap hari untuk mengelola server hosting mereka dan tugas terkait.

Untuk itu, hampir setiap server berbasis Unix atau Linux menawarkan task manager otomatis yang dikenal sebagai “cron Job"Atau" Crontab. "

Utilitas perangkat lunak ini mirip dengan penjadwal tugas di Microsoft Windows, dalam hal itu dapat dikatakan untuk melakukan hal-hal tertentu pada waktu tertentu, menyelamatkan pengguna dari melakukan tugas-tugas ini secara manual. Hal ini sangat penting ketika seseorang menganggap bahwa banyak perawatan server rutin, cadangan, dan prosedur komunikasi dapat memakan waktu berjam-jam untuk menyelesaikannya. Kebanyakan orang hanya ingin pulang setelah seharian di kantor dan bersantai, daripada menghabiskan malam mereka untuk membuat cadangan file dan mengelola kontak.

Orang-orang itu beruntung, karena setiap tugas dapat dijadwalkan setiap hari, mingguan, atau bulanan - atau bahkan terpisah lebih jauh, dalam beberapa kasus, dan instruksi khusus dapat diberikan ke server dalam utilitas Crontab tentang cara melakukan tugas tersebut , bagaimana cara mengetahui kapan itu selesai, dan apa yang harus dilakukan ketika tugas yang ada sebenarnya sudah selesai.

Pengguna akan dapat bersantai sementara server mereka melakukan semua pekerjaan berat selama berjam-jam; atau mereka hanya dapat menjadwalkan pekerjaan yang harus diselesaikan saat mereka sedang bekerja keras di kantor mereka sendiri. Karena ini otomatis, pekerjaan Cron dapat terjadi hampir setiap jam dalam sehari.

Belajar Mengenal Waktu dengan Menggunakan Format Pekerjaan Cron

Pekerjaan Cron bukanlah hal yang mudah untuk dikuasai; pada kenyataannya, ini secara luas dianggap sebagai salah satu konfigurasi paling maju yang tersedia pada standar Linux or Unix server web. Ini sebagian karena bahasa yang digunakan untuk memprogram pekerjaan ini sangat kuno dan, dalam beberapa kasus, sepenuhnya mundur. Ketika datang untuk memberitahu waktu tertentu ke pekerjaan Cron atau tab Cron yang dimaksud, semuanya pasti mundur, terbalik, dan sedikit membingungkan.

Format untuk memberitahu waktu melalui pekerjaan Cron adalah seperti ini:

JAM MINUTE HOUR HARI-BULAN BULAN HARI-MINGGU

Itu semua satu baris, dan bahkan angka dan perintah berdampingan dalam satu kontraksi yang seragam. Ini cukup untuk membuat sebagian besar pengembang dan operator server mengernyit dan, pada kenyataannya, banyak dari mereka melakukannya sampai mereka terbiasa mengembangkan pekerjaan Cron yang efisien.

Penting untuk dicatat bahwa setiap aspek waktu pekerjaan Cron adalah angka; tidak ada nama bulan nama hari, atau kata-kata lain yang digunakan sepanjang pengembangan waktu di mana tugas harus dilakukan.

Oleh karena itu, mari atur pekerjaan Cron untuk 10: 30 pagi pada Juli 7th untuk memahami bagaimana waktu pekerjaan Cron terlihat ketika diubah menjadi angka ketat.

30 10 07 07 *

Contoh di atas menyatakan bahwa pekerjaan harus diselesaikan pada menit ke 30 dari jam kesepuluh pada hari ketujuh dari bulan ketujuh. Semua angka adalah dua digit, bahkan ketika bulan atau hari hanya satu digit. Ini penting untuk diingat, karena satu digit akan sering menyebabkan pekerjaan Cron menjadi tidak valid dan itu tidak akan pernah dilakukan. Pada akhir struktur con, tanda bintang menunjukkan bahwa pekerjaan harus dilakukan pada hari apa pun dalam seminggu. Ini penting, karena menetapkannya ke 03 untuk hari Rabu akan berarti bahwa tugas hanya akan dilakukan pada Juli 7th jika hari itu adalah hari Selasa. Itu mungkin terjadi setiap tujuh atau delapan tahun sekali, yang agak diserap sebagian besar pengembang untuk dipertimbangkan.

Pertimbangan penting lainnya yang harus dilakukan ketika mengatur tugas Cron adalah format jamnya adalah waktu militer 24-jam daripada waktu sipil 12-jam. Untuk mengubah waktu pekerjaan Cron menjadi 10 pm, jam akan diubah menjadi 22, bukan 10 saat ini.

Contoh Pekerjaan Cron

Akhirnya, jika seorang pengguna hanya ingin menyelesaikan tugas setiap hari, bulanan, atau bahkan setiap tahun, mereka dapat melewati proses pengaturan waktu tertentu sepenuhnya. Sebaliknya, proses pekerjaan Cron menyediakan hanya menggunakan variabel yang menentukan kapan pekerjaan dilakukan pada interval yang sering ini. Ini termasuk:

  • @harian
  • @bulanan
  • @tahunan

Karena waktu tidak dapat dikontrol secara ketat dan ditentukan menggunakan jam dan menit, pekerjaan ini akan terjadi tepat tengah malam, sesuai dengan waktu internal server, pada interval yang diminta. Itu berarti bahwa interval @bulan akan terjadi tepat tengah malam pada hari pertama setiap bulan. Interval @tahun akan terjadi tepat tengah malam pada hari pertama setiap tahun; dan interval @daily akan terjadi tepat tengah malam setiap hari dalam setahun.

Ini jauh lebih mudah daripada menetapkan tanggal, waktu, dan hari tertentu dalam seminggu, tetapi tugas-tugas tertentu yang dilakukan pada tengah malam pada hari pertama bulan atau tahun mungkin memiliki beberapa kelemahan bagi pelanggan tertentu. Selalu menjaga kebutuhan baik administrator dan pengunjung situs dalam pikiran ketika menjadwalkan tugas yang terjadi tepat tengah malam.

Menggenggam Variabel "COMMAND" dan Apa yang Harus Dilakukan dengan Ini

Seperti dapat dilihat pada contoh di atas, membangun pekerjaan Cron yang sebenarnya relatif mudah. Tanggal harus ditentukan terlebih dahulu dan kemudian fungsi pekerjaan Cron segera ditentukan sesudahnya. Fungsi itu bisa berupa apa saja, termasuk menjalankan skrip PHP atau menjalankan skrip cadangan khusus yang menyimpan file dan data server baik dalam file jarak jauh atau lokal. Untuk klarifikasi, kita akan membangun contoh yang sebelumnya digunakan dan memerintahkan pekerjaan Cron untuk menjalankan skrip PHP pada Juli 7th di 10: 30 di pagi hari. Skrip PHP ini akan disebut "backup.php" dan kami akan menganggap bahwa file PHP adalah skrip cadangan lengkap yang mengumpulkan, mengompres, dan menyimpan file situs pada tanggal tujuh bulan ketika diinstruksikan untuk melakukannya oleh server. Berikut ini tampilannya:

30 10 07 07 * http://your-domain-name.com/backup-scripts/backup.php

Ketika pekerjaan Cron ini dimasukkan ke dalam daftar tab Cron server, itu akan secara otomatis dieksekusi di 10: 30 adalah setiap Juli 7th setiap tahun. Ini akan menjalankan skrip cadangan PHP yang terletak di direktori "skrip cadangan", dan di situlah genius sebenarnya dari pengaturan tugas Cron bekerja.

Alih-alih membutuhkan perintah tingkat lanjut dari para penggunanya untuk melakukan hal-hal seperti backup situs dan cache flush, itu hanya memberikan pengguna kemampuan untuk mengeksekusi skrip yang ada pada interval tertentu atau pada tanggal tertentu pada waktu tertentu. Ini berarti tidak diperlukan pengetahuan pemrograman tingkat lanjut di luar apa yang sudah diketahui oleh pengguna. PHP sangat mampu membuat cadangan file situs, seperti file yang jauh lebih maju dan bahasa pemrograman yang mungkin dikembangkan oleh pengguna yang lebih canggih untuk server Linux mereka.

Pengaturan sederhana ini dapat digunakan untuk melakukan hampir apa saja, kemudian, selama skrip yang ditulis sebelumnya menyediakan untuk pelaksanaan tindakan-tindakan independen dari input pengguna. Ini berarti bahwa setiap skrip yang dijalankan oleh tugas Cron dalam tab Cron harus sepenuhnya otomatis dan dapat bekerja sendiri, namun. Sebagai contoh, tidak mungkin (dan tidak masuk akal) untuk memberi tahu tugas Cron untuk mengeksekusi indeks WordPress atau file tema setiap hari pada waktu yang bersamaan. Tidak ada tindakan atau proses otomatis yang ditentukan dan, sementara tugas Cron pasti akan mengeksekusi file, itu tidak akan melakukan apa-apa dan akan tetap statis sampai input pengguna diberikan dengan cara lain.

Untuk alasan ini, jika coding atau mengunduh skrip cadangan atau yang lain untuk bekerja dengan tugas Cron, selalu pastikan bahwa mereka memerlukan input nol pengguna untuk menjalankan fungsinya dengan sukses. Penjadwal tugas otomatis harus dipasangkan dengan proses otomatis dalam file yang dieksekusi. Tidak ada pengecualian untuk aturan ini.

Menguasai File Tab Cron Keseluruhan di Server Khas

Setiap tugas Cron spesifik yang ditentukan untuk eksekusi terletak dalam file yang lebih besar yang dikenal sebagai tab Cron. Beberapa server memiliki banyak tab Cron untuk berbagai jenis aplikasi dan input otomatis, tetapi ini jarang dan sebagian besar disediakan untuk operator dan pemilik server yang paling maju. Mereka yang hanya memiliki satu file tab Cron dapat menggunakan perintah di bawah ini untuk mengedit, menghapus, atau melihat file secara keseluruhan, dengan masing-masing tugas khusus mereka yang terdaftar untuk ditampilkan dalam file.

crontab -r

Perintah ini menghapus (jadi "r") atau menghapus seluruh file tab Cron itu sendiri. Ini secara efektif akan membersihkannya dari semua perintah dan skrip otomatis, dan mengembalikannya ke file kosong yang dapat dibangun kembali. Ini adalah opsi yang cocok untuk mereka yang telah berhasil merusak file atau entah bagaimana tugas dan waktu yang tidak sesuai. Terkadang, lebih mudah untuk memulai dari awal.

-e crontab

Dalam hal ini, "e" adalah singkatan dari "edit." Para pengguna yang ingin mengedit fungsi yang dijelaskan dalam tab Cron daripada menghapus file sepenuhnya dapat menggunakan perintah ini untuk dibawa ke editor baris perintah yang akan memungkinkan mereka untuk tambahkan tugas baru, hapus yang lama, atau ubah jadwal yang berlaku untuk setiap pekerjaan Cron yang tercantum dalam dokumen tab Cron.

crontab-l

Dalam hal ini, cukup mudah untuk diingat dengan menghubungkan tampilan "L" dengan ". Perintah ini memungkinkan administrator server untuk hanya melihat konten lengkap dari file tab Cron mereka tanpa menghapusnya dari server sepenuhnya dan tanpa memiliki kemampuan untuk mengedit konten. Tampilan baca-saja konten tab Cron ini sangat cocok untuk mengingat tugas mana yang dijadwalkan untuk waktu tertentu, dan untuk memverifikasi integritas file itu sendiri.

Mengapa Penting untuk Menguasai Pekerjaan Cron dan File Otomatisasi Tab Cron

Secara umum, satu-satunya hal yang otomatis tentang server adalah pemintalan hard disk dan kinerja fitur perangkat kerasnya. Selain itu, server harus dilatih dan diinstruksikan untuk melakukan tugas rutin dan luar biasa yang melampaui hanya menampilkan panel kontrol perangkat lunak atau memutakhirkan instalasi PHP atau Perl yang telah ditempatkan pengguna pada hard disk.

Penting untuk diingat bahwa salah satu fungsi paling penting yang dapat dijalankan server secara teratur adalah pembuatan cadangan data dan pengaturan situs. Hampir tidak ada cara untuk mengotomatiskan proses ini tanpa pekerjaan Cron dan, karena sifat internet dan semua pengunjung jahat yang melewati situs setiap hari, kegagalan untuk mengotomatiskan proses ini setiap hari atau setiap minggu dapat menghasilkan signifikan dan kehilangan data yang sangat besar.

Di atas dan di luar itu, ada beberapa tugas yang harus diotomatisasi menggunakan proses pekerjaan Cron. Tugas-tugas ini termasuk membersihkan semua cache situs yang mungkin menampilkan gambar yang sudah usang atau konten yang dicetak kepada pengunjung situs; itu juga termasuk menghapus file-file lama, membersihkan direktori-direktori dan gambar-gambar lama, dan memastikan bahwa semua yang tersimpan di hard disk drive server adalah lancar dan tidak rusak.

Sama seperti komputer pribadi yang sehat secara otomatis menjadwalkan perawatan disk, pemindaian antivirus dan malware, pembaruan perangkat lunak, dan penghapusan file, server yang sehat harus dikonfigurasi untuk menjaga dirinya sendiri dan tetap memiliki reputasi yang baik. Jika tidak, ia menjadi rentan terhadap crash, upaya peretasan, dan kehilangan data yang akan menyebabkan hilangnya laba, iklan, pembuatan konten, dan bahkan status peringkat mesin pencari.

Mudah untuk Dipelajari dan Lebih Mudah untuk Diterapkan

Membuat tugas Cron dalam tab Cron standar adalah salah satu hal termudah yang dapat dilakukan administrator server.

Prosesnya terletak di dalam baris perintah standar dan memecah setiap segmen waktu menjadi kode dua digit.

Karena tidak memerlukan pengetahuan tambahan tentang bahasa pemrograman baru untuk mengotomatiskan tugas, layanan ini pada dasarnya didasarkan pada pengetahuan pemrograman dan operasi server yang sudah dimiliki oleh administrator. Dengan ini menjadi kasus, tidak ada alasan untuk tidak mulai mengotomatisasi fungsi server penting dan memastikan integritas data dan operasi situs.

Tentang Jerry Low

Pendiri WebHostingSecretRevealed.net (WHSR) - ulasan hosting yang dipercaya dan digunakan oleh pengguna 100,000. Lebih dari 15 tahun pengalaman dalam hosting web, pemasaran afiliasi, dan SEO. Kontributor ke ProBlogger.net, Business.com, SocialMediaToday.com, dan banyak lagi.