Làm chủ công việc Cron và tự động hóa các nhiệm vụ máy chủ cơ bản

Lưu trữ web được thiết kế để dễ dàng, đơn giản và hoàn hảo cho những người chuyên nghiệp đang di chuyển và đơn giản là không thể dành mỗi giờ mỗi ngày để quản lý máy chủ lưu trữ của họ và các tác vụ liên quan.

Vì vậy, hầu hết mọi máy chủ dựa trên Unix hoặc Linux đều cung cấp trình quản lý tác vụ tự động được gọi là “cron Job”Hoặc“ Crontab. ”

Tiện ích phần mềm này giống như công cụ lên lịch nhiệm vụ trong Microsoft Windows, ở chỗ nó có thể được yêu cầu làm những việc nhất định vào những thời điểm nhất định, giúp người dùng thực hiện các tác vụ này một cách thủ công. Điều này đặc biệt quan trọng khi người ta cho rằng nhiều thủ tục bảo trì máy chủ, sao lưu và truyền thông có thể mất hàng giờ đồng hồ để hoàn thành. Hầu hết mọi người chỉ muốn về nhà sau một ngày trong văn phòng và thư giãn, thay vì dành buổi tối của họ sao lưu các tập tin và quản lý địa chỉ liên lạc.

Những người đó thật may mắn, vì mọi nhiệm vụ có thể được lên lịch hàng ngày, hàng tuần hoặc hàng tháng – hoặc thậm chí cách xa nhau, trong một số trường hợp và có thể đưa ra hướng dẫn cụ thể cho máy chủ trong tiện ích Crontab về cách thực hiện nhiệm vụ , làm thế nào để biết khi nào nó hoàn thành và phải làm gì khi nhiệm vụ trong tay đã thực sự hoàn thành.

Người dùng sẽ có thể thư giãn trong khi máy chủ của họ thực hiện tất cả các công việc nặng nhọc trong nhiều giờ; hoặc đơn giản là họ có thể sắp xếp công việc cần hoàn thành trong khi họ làm việc chăm chỉ trong văn phòng của chính họ. Bởi vì nó tự động, một công việc Cron có thể xảy ra vào hầu như bất kỳ giờ nào trong ngày.

Học cách nói thời gian bằng cách sử dụng định dạng công việc định kỳ

Một công việc Cron chính xác không phải là một điều dễ dàng để làm chủ; thực tế, nó được coi là một trong những cấu hình tiên tiến nhất có sẵn trên một tiêu chuẩn Linux or Unix máy chủ web. Điều này một phần vì ngôn ngữ được sử dụng để lập trình các công việc này rất cổ xưa và trong một số trường hợp, hoàn toàn ngược lại. Khi nói đến một thời gian nhất định cho các công việc Cron hoặc tab Cron trong câu hỏi, mọi thứ chắc chắn là ngược, lộn ngược, và một chút khó hiểu.

Định dạng cho thời gian thông qua một công việc Cron là như vậy:

MINUTE HOUR DAY-OF-MONTH THÁNG NGÀY-OF-TUẦN COMMAND

Đó là tất cả một dòng, và số chẵn và lệnh nằm cạnh nhau trong một lần co đồng nhất. Nó đủ để làm cho hầu hết các nhà phát triển và nhà khai thác máy chủ nhăn nhó và trên thực tế, nhiều người trong số họ làm cho đến khi họ gặp khó khăn trong việc phát triển một công việc Cron hiệu quả.

Điều quan trọng cần lưu ý là mọi khía cạnh của thời gian của công việc Cron là số; không có tên tháng tháng tên ngày, hoặc các từ khác được sử dụng trong suốt quá trình phát triển của thời gian trong đó một nhiệm vụ nên được thực hiện.

Do đó, hãy thiết lập một công việc Cron cho 10: 30 vào ngày 7 tháng 7 để có cảm giác về thời gian của một công việc Cron khi nó biến thành số nghiêm ngặt.

30 10 07 07 *

Ví dụ trên nói rằng công việc nên được hoàn thành vào phút 30 của giờ thứ mười vào ngày thứ bảy của tháng thứ bảy. Tất cả các số có hai chữ số dài, ngay cả khi tháng hoặc ngày chỉ là một chữ số. Điều này rất quan trọng cần nhớ, vì một chữ số duy nhất thường sẽ khiến công việc Cron không hợp lệ và đơn giản là nó sẽ không được thực hiện. Vào cuối cấu trúc con, dấu hoa thị cho biết công việc nên được thực hiện vào bất kỳ ngày nào trong tuần. Điều này rất quan trọng, vì đặt nó thành 03 cho thứ Tư có nghĩa là nhiệm vụ sẽ chỉ được thực hiện vào 7th tháng 7 nếu ngày đó là thứ ba. Điều đó có khả năng xảy ra cứ bảy hoặc tám năm một lần, đó là một chút hấp thụ đối với hầu hết các nhà phát triển để xem xét.

Một xem xét quan trọng khác để thực hiện khi thiết lập một công việc Cron là định dạng giờ là thời gian quân sự 24-giờ chứ không phải là thời gian dân sự 12-giờ. Để thay đổi thời gian của công việc Cron thành 10 pm, giờ sẽ được thay đổi thành 22 thay vì 10 hiện tại.

Ví dụ về công việc của Cron

Cuối cùng, nếu người dùng chỉ muốn hoàn thành một tác vụ hàng ngày, hàng tháng hoặc thậm chí hàng năm, họ có thể bỏ qua quá trình thiết lập một thời gian cụ thể hoàn toàn. Thay vào đó, quy trình công việc Cron cung cấp chỉ đơn giản bằng cách sử dụng các biến xác định khi nào một công việc được thực hiện trên các khoảng thời gian thường xuyên này. Bao gồm các:

  • @hằng ngày
  • @monthly
  • @ năm

Vì thời gian không thể được kiểm soát chặt chẽ và xác định bằng cách sử dụng giờ và phút, những công việc này sẽ diễn ra vào đúng nửa đêm, theo thời gian nội bộ của máy chủ, theo khoảng thời gian được yêu cầu. Điều đó có nghĩa là khoảng thời gian @monthly sẽ xảy ra vào đúng nửa đêm vào ngày đầu tiên hàng tháng. Khoảng thời gian @yearly sẽ xảy ra vào đúng nửa đêm vào ngày đầu tiên hàng năm; và khoảng thời gian @d Daily sẽ diễn ra vào đúng nửa đêm mỗi ngày trong năm.

Việc này dễ dàng hơn việc đặt ngày, giờ và ngày cụ thể trong tuần, nhưng một số tác vụ nhất định được thực hiện vào nửa đêm vào ngày đầu tiên của tháng hoặc năm có thể có một số hạn chế đối với một số khách hàng nhất định. Luôn luôn giữ cho nhu cầu của cả quản trị viên và khách truy cập trang web trong tâm trí khi lập kế hoạch nhiệm vụ xảy ra vào chính xác nửa đêm.

Nắm bắt biến “COMMAND” và phải làm gì với nó

Như có thể thấy trong ví dụ trên, việc xây dựng một Cron job thực tế là tương đối dễ dàng. Ngày đầu tiên phải được xác định và sau đó chức năng của công việc Cron được xác định ngay sau đó. Chức năng đó theo nghĩa đen có thể là bất cứ thứ gì, bao gồm chạy tập lệnh PHP hoặc chạy tập lệnh sao lưu tùy chỉnh để lưu trữ các tệp và dữ liệu của máy chủ trong tệp từ xa hoặc cục bộ. Để làm rõ hơn, chúng tôi sẽ xây dựng dựa trên ví dụ đã được sử dụng trước đó và hướng dẫn công việc Cron chạy một tập lệnh PHP vào ngày 7 tháng 10 lúc 30:XNUMX sáng. Tập lệnh PHP này sẽ được gọi là “backup.php” và chúng tôi sẽ giả định rằng tệp PHP là một tập lệnh sao lưu đầy đủ để tập hợp, nén và lưu trữ các tệp trang web vào ngày thứ bảy của tháng khi được máy chủ hướng dẫn làm như vậy. Đây là những gì nó trông giống như:

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

Khi công việc Cron này được nhập vào danh sách các tab Cron của máy chủ, nó sẽ được tự động thực hiện vào 10h30 sáng ngày 7 tháng XNUMX hàng năm. Nó sẽ chạy tập lệnh sao lưu PHP nằm trong thư mục “backup-scripts” và đó là nơi mà thiên tài thực sự của thiết lập công việc Cron hoạt động.

Thay vì yêu cầu các lệnh nâng cao của người dùng để thực hiện các thao tác như sao lưu trang web và xóa bộ nhớ cache, nó chỉ đơn giản cung cấp cho người dùng khả năng thực thi các tập lệnh hiện tại tại một khoảng thời gian cụ thể hoặc vào một ngày cụ thể tại một thời điểm cụ thể. Điều này có nghĩa là không cần kiến ​​thức lập trình nâng cao ngoài những gì người dùng đã biết. PHP là hoàn toàn có khả năng sao lưu các tập tin trang web, như là nhiều hơn nữa các tập tin nâng cao và ngôn ngữ lập trình mà người dùng tinh vi hơn có thể phát triển cho máy chủ Linux của họ.

Thiết lập đơn giản này có thể được sử dụng để làm hầu như bất cứ điều gì, sau đó, miễn là một kịch bản viết sẵn cung cấp cho việc thực hiện các hành động độc lập với đầu vào của người dùng. Điều này có nghĩa là bất kỳ tập lệnh nào được thực thi bởi một công việc Cron trong một tab Cron phải được tự động hoàn toàn và có thể thực hiện theo cách riêng của nó. Ví dụ, nó sẽ là không thể (và chỉ đơn giản là vô lý) để nói với công việc Cron để thực thi một chỉ mục WordPress hoặc tập tin chủ đề hàng ngày cùng một lúc. Chỉ đơn giản là không có hành động hoặc quy trình tự động nào được xác định và, trong khi công việc Cron chắc chắn sẽ thực thi tệp, nó sẽ không làm gì và sẽ tĩnh cho đến khi người dùng nhập vào được cung cấp theo cách khác.

Vì lý do này, nếu mã hóa hoặc tải xuống các tập lệnh sao lưu hoặc các tệp khác để làm việc với các công việc Cron, luôn đảm bảo rằng chúng yêu cầu chính xác không có người dùng nhập vào để thực hiện các chức năng của chúng thành công. Trình lập lịch nhiệm vụ tự động phải được ghép nối với một quá trình tự động trong tệp mà nó thực thi. Không có ngoại lệ cho quy tắc này.

Làm chủ tệp Cron Tab tổng thể trên một máy chủ điển hình

Mỗi công việc Cron cụ thể được chỉ định để thực hiện nằm trong một tệp lớn hơn được gọi là tab Cron. Một số máy chủ có nhiều tab Cron cho nhiều loại ứng dụng và đầu vào tự động, nhưng điều này hiếm và được dành riêng cho các nhà khai thác và chủ sở hữu máy chủ nâng cao nhất. Những người chỉ có một tệp tab Cron có thể sử dụng các lệnh bên dưới để chỉnh sửa, xóa hoặc xem toàn bộ tệp, với mỗi tác vụ tự động cụ thể được liệt kê để xem trong tệp.

crontab -r

Lệnh này loại bỏ (do đó “r”) hoặc xóa toàn bộ tệp tab Cron. Thao tác này sẽ xóa nó khỏi tất cả các lệnh và tập lệnh tự động một cách hiệu quả và khôi phục nó thành một tệp trống có thể được xây dựng lại. Đây là một tùy chọn phù hợp cho những người đã quản lý để làm hỏng tệp hoặc bằng cách nào đó làm sai nhiệm vụ và thời gian. Đôi khi, nó chỉ đơn giản là dễ dàng hơn để bắt đầu lại.

-e crontab

Trong trường hợp này, “e” là viết tắt của “chỉnh sửa”. Những người dùng muốn chỉnh sửa các chức năng được mô tả trong tab Cron thay vì xóa tệp hoàn toàn có thể sử dụng lệnh này để được đưa đến trình chỉnh sửa dòng lệnh cho phép họ thêm các tác vụ mới, xóa các tác vụ cũ hoặc thay đổi lịch trình áp dụng thời gian cho mỗi công việc Cron được liệt kê trong tài liệu tab Cron.

crontab -l

Trong trường hợp này, bạn có thể dễ dàng ghi nhớ bằng cách kết hợp chữ “L” với “look. Lệnh này cho phép quản trị viên máy chủ chỉ cần xem toàn bộ nội dung của tệp tab Cron của họ mà không cần xóa hoàn toàn khỏi máy chủ và không có khả năng chỉnh sửa nội dung. Hiển thị chỉ đọc nội dung tab Cron này là lựa chọn hoàn hảo để ghi nhớ các tác vụ được lên lịch cho thời gian nào và để xác minh tính toàn vẹn của chính tệp.

Tại sao nó quan trọng để làm chủ công việc Cron một tệp tự động hóa thẻ Cron

Nói chung, điều duy nhất tự động về một máy chủ là quay đĩa cứng của nó và hiệu suất của các tính năng phần cứng của nó. Ngoài ra, máy chủ phải được huấn luyện và hướng dẫn thực hiện các nhiệm vụ thường xuyên và phi thường mà chỉ cần hiển thị bảng điều khiển phần mềm hoặc nâng cấp cài đặt PHP hoặc Perl mà người dùng đã đặt trên đĩa cứng.

Điều quan trọng cần nhớ là một trong những chức năng thiết yếu nhất mà máy chủ có thể thực hiện một cách thường xuyên là tạo bản sao lưu dữ liệu và cài đặt trang. Hầu như không có cách nào để tự động hóa quy trình này mà không có công việc Cron và, do tính chất của internet và tất cả các khách truy cập độc hại đi qua một trang web hàng ngày, việc không tự động hóa quy trình này hàng ngày hoặc hàng tuần có thể dẫn đến đáng kể và mất dữ liệu thảm khốc.

Tuy nhiên, trên hết, có một số nhiệm vụ nên được tự động hóa bằng quy trình công việc Cron. Các tác vụ này bao gồm xóa bất kỳ bộ đệm trang web nào có thể hiển thị hình ảnh lỗi thời hoặc nội dung được in cho khách truy cập trang web; nó cũng bao gồm xóa các tập tin cũ, dọn dẹp các thư mục và hình ảnh cũ và đảm bảo rằng mọi thứ được lưu trữ trên ổ đĩa cứng của máy chủ đều hiện hành và chưa được xử lý.

Cũng giống như một máy tính cá nhân khỏe mạnh tự động lên lịch bảo trì đĩa, quét vi-rút và phần mềm độc hại, cập nhật phần mềm và xóa tệp, máy chủ khỏe mạnh phải được định cấu hình để tự chăm sóc và duy trì trạng thái tốt. Nếu không, nó sẽ trở thành dễ bị tổn thương tai nạn, hack nỗ lực, và mất dữ liệu sẽ dẫn đến mất lợi nhuận, quảng cáo, tạo nội dung, và thậm chí cả công cụ tìm kiếm xếp hạng tình trạng.

Dễ học và dễ triển khai hơn

Tạo một công việc Cron trong một thẻ Cron chuẩn là một trong những điều đơn giản nhất mà quản trị viên máy chủ có thể thực hiện.

Quá trình nằm trong dòng lệnh tiêu chuẩn và phân chia mọi phân đoạn thời gian thành mã hai chữ số.

Bởi vì nó không đòi hỏi kiến ​​thức bổ sung về bất kỳ ngôn ngữ lập trình mới nào để tự động hóa các tác vụ, dịch vụ chủ yếu xây dựng trên kiến ​​thức hoạt động của máy chủ và lập trình hiện có mà quản trị viên đã sở hữu. Với trường hợp này, không có lý do gì để không bắt đầu tự động hóa các chức năng máy chủ cần thiết và đảm bảo tính toàn vẹn của dữ liệu trang web và các hoạt động.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Related stories

Youtube ADS

Digiltal Marketing Youtube Ads Gần 60% người dân Việt Nam sử dụng Internet mỗi ngày với thời lượng truy cập YouTube đứng thứ 3 trong

Google ADS

Quản Trị Google Ads Tiếp cận khách hàng Google Ads có hệ thống nhắm mục tiêu tinh vi giúp bạn hiển thị quảng cáo với

Facebook Ads

Digital Marketing Facebook Ads Facebook được đánh giá là mạng xã hội lớn nhất và mạnh nhất ở Việt Nam và Facebook ADS là một

Về Chúng Tôi

Chúng tôi là ai Các Doanh Nghiệp, Tổ Chức đang có nhu cầu xây dựng website chuyên nghiệp, tạo hình ảnh riêng, khác biệt để

Become a part of Hostinger now!