គេហទំព័រអាចដំណើរការភារកិច្ចដែលបានគ្រោងទុកជាមួយស៊ីន

នាឡិកា

យើងមានប្រព័ន្ធត្រួតពិនិត្យដែលលែងត្រូវការតទៅទៀតនៅកន្លែងធ្វើការដែលដំណើរការដំណើរការជាទៀងទាត់។ អ្នកខ្លះរត់រាល់នាទីហើយខ្លះរត់ម្តងក្នុងមួយយប់អាស្រ័យលើអ្វីដែលពួកគេកំពុងធ្វើ។ ឧទាហរណ៍យើងអាចប្រតិបត្តិស្គ្រីបដែលនាំចេញអតិថិជនទាំងអស់ដែលមិនបានធ្វើការទិញក្នុងរយៈពេល ៣០ ថ្ងៃដើម្បីផ្ញើប័ណ្ណមកពួកគេ។

ជាជាងព្យាយាមតាមដានទាំងអស់នេះដោយដៃវាងាយស្រួលជាងក្នុងការកសាងការងារដែលត្រូវបានកំណត់ពេលនិងប្រតិបត្តិដោយស្វ័យប្រវត្តិ។ នៅលើប្រព័ន្ធដែលមានមូលដ្ឋានលើយូនីកនេះត្រូវបានសម្រេចជាមួយស៊ីន។ សម្រាប់អ្នកដែលដឹងពីអ្វីដែលអ្នកកំពុងធ្វើមានអារម្មណ៍សេរីក្នុងការអប់រំខ្ញុំនិងអ្នកអានប្រសិនបើខ្ញុំបោះចោលព័ត៌មានមិនពិត។

វាជាអកុសលប៉ុន្តែអ្នកអភិវឌ្ឍន៍គេហទំព័រធម្មតាមិនស្គាល់ Cron ទាល់តែសោះ។ ទោះបីជាពួកគេមាន, ក្រុមហ៊ុនបង្ហោះវែបសាយជាញឹកញាប់មិនផ្គត់ផ្គង់ការចូលដំណើរការទៅឬការគាំទ្ររបស់ Cron ។ ម្ចាស់ផ្ទះរបស់ខ្ញុំគឺជាអ្នកចុងក្រោយ - ពួកគេអនុញ្ញាតឱ្យអ្នកប្រើវាប៉ុន្តែពួកគេមិនគាំទ្រវាទេ។

តើស៊ីរ៉ូជាអ្វី?

Cron ត្រូវបានគេដាក់ឈ្មោះតាមពាក្យក្រិក Chronos មានន័យថា ពេល។ Cron ដំណើរការរង្វិលជុំជាបន្តបន្ទាប់ដើម្បីដំណើរការភារកិច្ចដែលត្រូវបានបង្គរដោយ Crontab (ប្រហែលជាមានឈ្មោះ ផ្ទាំងulator ។ ភារកិច្ចទាំងនោះត្រូវបានគេសំដៅជាធម្មតាថា Cronjobs និងអាចយោងតាមស្គ្រីបនៅក្នុងគេហទំព័ររបស់អ្នក។

Cron ដ្យាក្រាមពន្យល់

តើខ្ញុំត្រូវរៀបចំក្រុបប៊បយ៉ាងដូចម្តេច

ការអោយ Cron អាចដំណើរការបានពិតជាពិបាកដូច្នេះនេះគឺជាអ្វីដែលខ្ញុំបានរៀននិងរបៀបដែលខ្ញុំបានធ្វើវា បើបៀម:

  1. ខ្ញុំបានបង្កើតស្គ្រីបរបស់ខ្ញុំដើម្បីពិនិត្យមើល Twitter ការ API ដើម្បីមើលថាតើមាននរណាម្នាក់បានឆ្លើយតបទៅ @ifsuck។ ខ្ញុំបានប្រៀបធៀបសារទាំងនោះទៅនឹងសារដែលខ្ញុំបានរក្សាទុករួចហើយនៅលើគេហទំព័រដោយបញ្ចូលសារថ្មី។
  2. នៅពេលដែលស្គ្រីបកំពុងដំណើរការខ្ញុំបានបើកការអនុញ្ញាតឱ្យអ្នកប្រើប្រតិបត្តិស្គ្រីប (៧៤៤) និងបន្ថែមឯកសារយោងទៅឯកសារ Cronjob របស់ខ្ញុំ - បន្ថែមទៀតនៅពេលក្រោយ។
  3. បន្ទាប់មកខ្ញុំត្រូវចូលគេហទំព័ររបស់ខ្ញុំតាមរយៈអេសអេស។ នៅលើម៉ាស៊ីន Mac ដែលបានបើកស្ថានីយនិងវាយបញ្ចូល ឈ្មោះអ្នកប្រើអេស។ អេស កន្លែងដែលឈ្មោះអ្នកប្រើគឺជាឈ្មោះដែលខ្ញុំចង់ប្រើហើយដែនគឺជាគេហទំព័រ។ បន្ទាប់មកខ្ញុំត្រូវបានគេបំផុសគំនិតនិងផ្តល់លេខសម្ងាត់។
  4. បន្ទាប់មកខ្ញុំបានព្យាយាមដំណើរការស្គ្រីបដោយផ្ទាល់ពីប្រអប់បញ្ជាដោយវាយឈ្មោះឯកសារនិងផ្លូវទាក់ទងនៅលើម៉ាស៊ីនមេ: /var/www/html/myscript.php
  5. នៅពេលដែលខ្ញុំដំណើរការបានត្រឹមត្រូវខ្ញុំបានបន្ថែមកូដយូនីកចាំបាច់នៅក្នុងបន្ទាត់ទីមួយនៃឯកសារ៖ #! / usr / bin / php -q ។ ខ្ញុំជឿជាក់ថានេះគ្រាន់តែប្រាប់យូនីកឱ្យប្រើកម្មវិធី PHP ដើម្បីប្រតិបត្តិស្គ្រីប។
  6. នៅបន្ទាត់ពាក្យបញ្ជាស្ថានីយខ្ញុំបានវាយ crontab (ផ្សេងទៀតប្រហែលជាត្រូវការវាយ crontab -e) ហើយវាយបញ្ចូល ... ហើយនោះគឺជាអ្វីដែលត្រូវការ!

វាក្យសម្ព័ន្ធសម្រាប់ឯកសារ Cronjob របស់អ្នក

ទាក់ទងទៅនឹងលេខ ២ ខាងលើ Cron ប្រើប្រាស់គ្រោងការណ៍ដ៏ប៉ិនប្រសប់សម្រាប់កំណត់ថាតើពេលណាស្គ្រីបរបស់អ្នកត្រូវបានប្រតិបត្តិ។ តាមពិតអ្នកពិតជាអាចថតចម្លងនិងបិទភ្ជាប់វាចូលទៅក្នុងក្រូហ្វិលរបស់អ្នក (នៅលើម៉ាស៊ីនរបស់ខ្ញុំវាមានទីតាំងនៅ) / var / spool / cron / ជាមួយឈ្មោះឯកសារដូចគ្នានឹងឈ្មោះអ្នកប្រើរបស់ខ្ញុំ) ។

# + —————- នាទី (០ - ៥៩)
# | + ————- ម៉ោង (០ ២៣)
# | | + ———- ថ្ងៃនៃខែ (១ - ៣១)
# | | | + ——- ខែ (១-១២)
# | | | | + —- ថ្ងៃនៃសប្តាហ៍ (០ - ៦) (ថ្ងៃអាទិត្យ = ០ ឬ ៧)
# | | | | |
* * * * * /var/www/html/myscript.php

ខាងលើនឹងប្រតិបត្តិស្គ្រីបរបស់ខ្ញុំរៀងរាល់នាទី។ ប្រសិនបើខ្ញុំចង់អោយវាដំណើរការម្តងក្នុងមួយម៉ោងខ្ញុំគ្រាន់តែដាក់ប៉ុន្មាននាទីបន្ទាប់ពីខ្ញុំចង់អោយវាដំណើរការដូច្នេះបើវានៅសញ្ញាសំគាល់ ៣០ នាទី៖

៣០ * * * * / វ៉ារ /www/html/myscript.php

សូមប្រាកដថាអ្នកបានកំណត់សិទ្ធិក្នុងឯកសារនេះដែលអាចប្រតិបត្តិបានផងដែរ! ខ្ញុំបានរកឃើញថាវាក្យសម្ពន្ធការអនុញ្ញាតនិងការប្រតិបត្តិ crontab ពីបង្អួចស្ថានីយគឺជាកត្តាសំខាន់បំផុត។ រាល់ពេលដែលខ្ញុំទុកឯកសារម្តងទៀតខ្ញុំនឹងរកការអនុញ្ញាតរបស់ខ្ញុំដែលត្រូវការកំណត់ឡើងវិញផងដែរ!

ធ្វើបច្ចុប្បន្នភាព៖ ប្រសិនបើអ្នកចង់ធានាថាការងារកំពុងដំណើរការវិធីសាមញ្ញមួយគឺត្រូវធ្វើបច្ចុប្បន្នភាពវាលទិន្នន័យនៅពេលចុងក្រោយដែលស្គ្រីបដំណើរការ។ ប្រសិនបើវាមិនមានសមត្ថភាពគ្រប់គ្រាន់អ្នកគ្រាន់តែសរសេរអ៊ីមែលដែលផ្ញើទៅខ្លួនឯង។

ធនធានបន្ថែមទៀត:

តើមានការងារប៉ុន្មានដែលអ្នកអាចប្រើប្រូសឺន?

8 យោបល់

  1. 1

    អត្ថបទដែលនិយាយអំពីការបង្កើត cron សម្រាប់អ្នកដែលថ្មីចំពោះ crojobs ដែលជាផ្នែកពិបាកបំផុតក្នុងការរៀបចំ cron គឺត្រូវរកចន្លោះពេលប្រតិបត្តិ cronjob ហើយវាពិតជាគួរអោយចង់ទទួលបានចន្លោះពេលខុសនៅពេលសាកល្បងដំបូង។ ប្រសិនបើ cronjobs របស់អ្នកមានពេលវេលារសើបវាជាការល្អក្នុងការបញ្ចូលលេខកូដខ្លះនៅក្នុងស្គ្រីបដើម្បីបន្ទរស្ថានភាពដូច្នេះអ្នកត្រូវបានជូនដំណឹងអំពីស្ថានភាពប្រតិបត្តិការងារ។

  2. 2

    សួស្តី Doug,

    រឿងពីរបីដែលត្រូវពិចារណានៅពេលធ្វើការជាមួយការងារ cron ។

    ដំបូងបន្ទាប់ពីពីរបីពីរបីអ្នកនឹងសង្ឃឹមថាអ្នកនឹងមានចំណុចប្រទាក់អ្នកប្រើមូលដ្ឋានទិន្នន័យនិងវាក្យសម្ពន្ធអង់គ្លេស

    ទីពីរ cron នឹងបណ្តេញការងារនៅពេលវេលាដែលបានកំណត់ដោយមិនគិតពីការអញ្ជើញមុននៃការងារដែលបានបញ្ចប់។ ដូច្នេះការរត់ការងារម្តងក្នុងមួយនាទីដែលចំណាយពេល ២ នាទីនឹងនាំឱ្យមានការងារដូចគ្នាជាច្រើនកំពុងដំណើរការ។

    បន្ទាប់គ្មានការរាយការណ៍អំពីកំហុសនៅពេលមានអ្វីខុសនោះទេដូច្នេះអ្នកត្រូវបន្ថែមការរាយការណ៍អំពីកំហុសរបស់អ្នក។

    ខ្ញុំបានដោះស្រាយបញ្ហាទាំងនេះតាមវិធីពីរយ៉ាង៖
    - ឱ្យកម្មវិធីដំណើរការតាមរយៈ cron look នៅក្នុងឃ្លាំងទិន្នន័យដើម្បីកំណត់នូវអ្វីដែលត្រូវការដំណើរការ។ ដំណើរការវាម្តងក្នុងមួយនាទីឬមួយម៉ោងអាស្រ័យលើអ្វីដែលអ្នកចង់បាន
    - អោយស្គ្រីបនីមួយៗបង្កើតឯកសារ 'ចាក់សោ' ក្នុង / tmp ហើយប្រសិនបើវាមានសូមកុំចាប់ផ្តើមម្តងទៀតវាការពារការងារស្ទួនប្រសិនបើអ្នកមិនចង់បាន
    - ប្រសិនបើស្គ្រីបរកឃើញឯកសារចាក់សោរដែលមានអាយុកាលលើសពី 1 ម៉ោង (ឬអ្វីដែលបង្ហាញថាអ្នកបានស្លាប់) សូមផ្ញើអ៊ីមែលជូនដំណឹង
    - មានស្គ្រីបផ្ញើអ៊ីមែលពីការបរាជ័យនៃការងារដូច្នេះអ្នកដឹងថាមានអ្វីមួយមិនប្រក្រតី
    - ក្រឡេកមើលក្របខ័ណ្ឌដូចជាហ្វុចរឺអ្នករៀបចំកម្មវិធីនៅពេលដែលតម្រូវការរបស់អ្នកហួសពីស្គ្រីបពីរបី

    លោក Chris

  3. 4

    ខ្ញុំនឹងបន្ថែមវានៅលើប្រព័ន្ធលីនុច / យូនីកភាគច្រើន“ crontab -e” គឺជាអ្វីដែលអ្នកប្រើដើម្បីកែតំរូវរបស់អ្នក។ ខ្ញុំគិតថាម៉ាស៊ីនរបស់អ្នក (Jumpline) កំពុងប្រើកំណែដែលបានកែប្រែសម្រាប់ហេតុផលសុវត្ថិភាព។

  4. 5

    ខ្ញុំនៅតែចាំថ្ងៃដំបូងដែលខ្ញុំបានជួប Cronnie ។ ខ្ញុំបានលឺរឿងរ៉ាវអំពីនាងថានាងអាចទុកចិត្តបានតែងតែតាមពេលវេលាប៉ុន្តែពេលខ្លះមានការភ័ន្តច្រឡំបន្តិចអំពីចេតនារបស់នាង។

    ខ្ញុំបានរកឃើញថារឿងនេះជាការពិតព្រោះនាងជាអាថ៌កំបាំងពេញលេញចំពោះខ្ញុំនៅពេលដំបូង។ បន្ទាប់ពីសួរជុំវិញនាងខ្ញុំចាប់បានភ្លាមៗអំពីរបៀបដែលនាងចូលចិត្តធ្វើប្រតិបត្តិការ។ ឥឡូវនេះខ្ញុំមិនអាចនឹកស្រមៃថាថ្ងៃមួយនឹងកន្លងផុតទៅដោយគ្មាននាងនៅក្នុងជីវិតរបស់ខ្ញុំ។ នាងធ្វើឱ្យខ្ញុំរំភើបហើយលើកបន្ទុកជាច្រើនចេញពីស្មាខ្ញុំ។

    និយាយឱ្យចំទៅខ្ញុំមានអារម្មណ៍ថាខ្ញុំគ្រាន់តែកោសផ្ទៃជាមួយនឹងអ្វីដែលខ្ញុំអាចធ្វើឱ្យមានស្វ័យប្រវត្តិកម្មជាមួយនឹងការងារធ្វើ។ ពួកគេពិតជាអ្នកអភិវឌ្ឍន៍ដ៏ល្អបំផុត។ ប្រសិនបើអ្នកកំពុងប្រើនរណាម្នាក់ដូចជាក្រុមហ៊ុន CPanel ដើម្បីគ្រប់គ្រងម៉ាស៊ីនមេរបស់អ្នកវាផ្តល់នូវចំណុចប្រទាក់រួសរាយរាក់ទាក់ជាងមុនក្នុងការបង្កើតគ្រីម។ បំពេញជាមួយម៉ឺនុយទម្លាក់ចុះសម្រាប់នាទីម៉ោងថ្ងៃខែខែ។ ល។

  5. 7

    ខ្ញុំដឹងថានេះជាអ្វីដែលអ្នកទីផ្សារទាំងអស់គួរតែប្រើប្រាស់ ... តើមានអ្នកណាអាចផ្តល់សេវាកម្មនេះបានទេពីព្រោះវាស្តាប់ទៅដូចជា“ ធុញទ្រាន់” មែនទេ?

តើ​អ្នក​គិត​អ្វី?

តំបន់បណ្ដាញនេះប្រើ Akismet ដើម្បីកាត់បន្ថយសារឥតបានការ។ សិក្សាអំពីរបៀបដែលទិន្នន័យរបស់អ្នកត្រូវបានដំណើរការ.