ক্রোন কাজগুলি শান্তভাবে ব্যর্থ হয়। একটি সার্ভার সরানোর পরে একটি ব্যাকআপ স্ক্রিপ্ট চলমান বন্ধ হয়ে যায়, একটি পাসওয়ার্ড ঘূর্ণন রাতের আমদানিকে বিরতি দেয়, বা একটি সম্পূর্ণ ডিস্ক চালান কাজকে 3 am এ বিপর্যস্ত করে তোলে, কিছুই নেই, তাই একটি স্বাভাবিক আপটাইম মনিটর সবুজ থাকে এবং আপনি শুধুমাত্র কয়েক সপ্তাহ পরে খুঁজে পান যখন আপনার ব্যাকআপের প্রয়োজন হয় বা গ্রাহক জিজ্ঞাসা করেন তাদের চালান কোথায়৷ হার্টবিট নিরীক্ষণ সেই ব্যবধান বন্ধ করে। এই নির্দেশিকাটি দেখায় কিভাবে এটি কাজ করে এবং কিভাবে এটিকে কয়েক মিনিটের মধ্যে বিনামূল্যে সেট আপ করতে হয়।
হার্টবিট মনিটরিং কি?
একটি নিয়মিত আপটাইম মনিটর বাইরে থেকে আপনার ওয়েবসাইট চেক করে। একটি হার্টবিট মনিটর অন্যভাবে কাজ করে: আপনার নির্ধারিত কাজ চেক ইন করে। আপনি একটি অনন্য URL পাবেন, এবং আপনার কাজ প্রতিবার এটি শেষ হওয়ার সময় এটিকে কল করে। যদি কল সময়মতো না আসে, মনিটর জানে কিছু ভুল হয়েছে এবং আপনাকে সতর্ক করে।
এটি একবারে সমস্ত ধরণের নীরব ব্যর্থতাকে ধরে রাখে:
- কাজ শুরু হয়নি কখনো।
crontabএন্ট্রি হারিয়ে গেছে, সার্ভারটি শিডিউল ছাড়াই রিবুট হয়েছে, বা ধারকটি প্রতিস্থাপিত হয়েছে। - চাকরি বিপর্যস্ত। একটি ত্রুটি শেষ হওয়ার আগেই স্ক্রিপ্টটিকে থামিয়ে দিয়েছে৷
- কাজ ঝুলে যায়। এটি শুরু হয়েছে কিন্তু একটি লক করা ডাটাবেস বা একটি ধীর API এ আটকে আছে এবং শেষ হয় না।
- পুরো সার্ভার চলে গেছে। কোনও সার্ভার নেই, কোনও পিং নেই, তাই অন্য কিছু না দেখলেও আপনি এটি সম্পর্কে শুনতে পান।
কোন নির্ধারিত কাজগুলি আপনার নিরীক্ষণ করা উচিত?
যে কাজগুলিকে কেউ লক্ষ্য না করেই বন্ধ হয়ে গেলে আপনার সবচেয়ে বেশি খরচ হয় সেই কাজগুলি দিয়ে শুরু করুন:
- ডাটাবেস এবং ফাইলের ব্যাকআপ । একটি ব্যাকআপ যা আপনি কখনই যাচাই করেন না এমন একটি ব্যাকআপ যা আপনার কাছে নাও থাকতে পারে৷
- বিলিং এবং ইনভয়েসিং স্ক্রিপ্ট, সাবস্ক্রিপশন পুনর্নবীকরণ এবং পেমেন্ট পুনর্মিলন।
- আপনার দোকান, আপনার সিআরএম, আপনার গুদাম বা একটি সরবরাহকারী ফিডের মধ্যে ডেটা আমদানি এবং সিঙ্ক ।
- ইমেল সারি এবং নিউজলেটার যা একজন নির্ধারিত কর্মীর দ্বারা পাঠানো হয়।
- শংসাপত্র পুনর্নবীকরণের কাজ যেমন স্বয়ংক্রিয় SSL পুনর্নবীকরণ, এবং ক্লিনআপ কাজ যা ডিস্ককে পূরণ করা থেকে বিরত রাখে।
- ওয়ার্ডপ্রেস বা অ্যাপ্লিকেশন cron যা নির্ধারিত পোস্ট প্রকাশ করে এবং রক্ষণাবেক্ষণের কাজ চালায়।
বিনামূল্যের প্ল্যানে 5টি হার্টবিট মনিটর রয়েছে, যা একটি সাধারণ ছোট ব্যবসা বা মুষ্টিমেয় ক্লায়েন্ট সাইটের গুরুত্বপূর্ণ কাজগুলি কভার করার জন্য যথেষ্ট।
কিভাবে বিনামূল্যে cron জব মনিটরিং সেট আপ করবেন
1. একটি বিনামূল্যের অ্যাকাউন্ট তৈরি করুন৷
আপনার ইমেল ঠিকানা দিয়ে My Site Alerts এর জন্য সাইন আপ করুন । কোন ক্রেডিট কার্ড এবং কোন ট্রায়াল সময়কাল নেই.
2. একটি হার্টবিট তৈরি করুন
আপনার ড্যাশবোর্ডে হার্টবিট খুলুন এবং হার্টবিট তৈরি করুন নির্বাচন করুন। এটিকে একটি পরিষ্কার নাম দিন, যেমন নাইটলি ডাটাবেস ব্যাকআপ, যাতে একটি সতর্কতা আপনাকে ঠিক কী ব্যর্থ হয়েছে তা বলে৷
3. প্রত্যাশিত সময়সূচী এবং একটি গ্রেস পিরিয়ড সেট করুন
প্রতি হৃদস্পন্দনের প্রত্যাশায়, কাজটি কতবার চলে তা লিখুন: প্রতি 15 মিনিটে, প্রতি ঘন্টায়, দিনে একবার। তারপরে গ্রেস পিরিয়ড সেট করুন মোটামুটিভাবে কাজটি চালানোর জন্য কতক্ষণ লাগে, সাথে একটি নিরাপত্তা মার্জিন। একটি ব্যাকআপ যা 2:00 এ চলে এবং সাধারণত 20 মিনিট লাগে তার জন্য প্রায় 30 থেকে 40 মিনিটের গ্রেস পিরিয়ডের প্রয়োজন হয়, তাই একটি ধীর রাত একটি মিথ্যা অ্যালার্ম ট্রিগার করে না।
4. আপনার হার্টবিট URL কপি করুন
প্রতিটি হার্টবিটের নিজস্ব গোপন URL আছে। আপনার কাজ প্রতিবার চলার সময় এটিকে একটি GET বা POST অনুরোধ পাঠায়। এটি পরীক্ষা করার জন্য আপনি একবার আপনার ব্রাউজারে URLটি খুলতে পারেন: হার্টবিট উপরে যেতে হবে।
5. সতর্কতাগুলি কোথায় যায় তা চয়ন করুন৷
ইমেল বাক্সের বাইরে কাজ করে। আপনি Slack, Discord, Telegram, Microsoft Teams বা আপনার নিজস্ব ওয়েবহুকে সতর্কতা পাঠাতে পারেন, যাতে একটি মিসড রান সেই জায়গায় পৌঁছে যায় যেখানে আপনি আসলে দেখতে পাচ্ছেন৷
আপনার কাজ থেকে হার্টবিট পিং কিভাবে
লিনাক্স crontab
আপনার কমান্ডের পরে অনুরোধ যোগ করুন, && এর সাথে যোগদান করুন, তাই পিংটি শুধুমাত্র তখনই পাঠানো হয় যখন কাজটি সফল হয়:
0 2 * * * /usr/local/bin/backup.sh && curl -fsS -m 10 --retry 3 https://mysitealerts.com/webhook-heartbeat/YOUR-CODE নেটওয়ার্ক ধীর হলে -m 10 বিকল্পটি কার্লকে ঝুলিয়ে রাখা বন্ধ করে দেয় এবং --retry 3 একটি সংক্ষিপ্ত সংযোগ হেঁচকি কভার করে। যদি আপনার সার্ভারে curl এর পরিবর্তে wget থাকে, wget -q -O /dev/null এর পরে URL একই কাজ করে।
একটি স্ক্রিপ্ট ভিতরে
আসল কাজ শেষ হওয়ার পরে স্ক্রিপ্টের শেষ লাইনে পিং রাখুন। একটি শেল স্ক্রিপ্টে, শীর্ষে set -e যোগ করুন যাতে যেকোনো ব্যর্থ কমান্ড স্ক্রিপ্টটি পিং-এ পৌঁছানোর আগেই থামিয়ে দেয়। Python, PHP বা Node.js-এ, কাজের চূড়ান্ত ধাপ হিসেবে হার্টবিট ইউআরএলে একটি সহজ HTTP অনুরোধ করুন।
হোস্টিং কন্ট্রোল প্যানেল
শেয়ার্ড হোস্টিং-এ, আপনার কন্ট্রোল প্যানেলে cron কাজের শেষে একই কার্ল কমান্ড যোগ করুন। বেশিরভাগ প্যানেল আপনাকে একটি সম্পূর্ণ কমান্ড লাইন পেস্ট করতে দেয়, তাই একই && প্যাটার্ন সেখানেও কাজ করে।
ওয়ার্ডপ্রেস cron
ওয়ার্ডপ্রেস শুধুমাত্র নির্ধারিত কাজ চালায় যখন কেউ সাইট ভিজিট করে। নির্ভরযোগ্য সময়সূচীর জন্য, অন্তর্নির্মিত ট্রিগার নিষ্ক্রিয় করুন, একটি বাস্তব সার্ভার cron কাজ থেকে wp-cron.php কল করুন এবং সেই একই লাইনে হার্টবিট পিং যোগ করুন। এখন আপনি উভয়ই জানেন যে সময়সূচী ফায়ার এবং এটি সম্পূর্ণ হয়।
সাধারণ ভুল যা মিথ্যা অ্যালার্ম সৃষ্টি করে (বা মিস করা)
- কাজের শুরুতে পিং করা। এটি শুধুমাত্র কাজ শুরু প্রমাণ করে. শেষে পিং, কাজ সফল হওয়ার পর।
- একটি গ্রেস পিরিয়ড যা খুব ছোট। ডেটা বৃদ্ধির সাথে সাথে কাজগুলি ধীর হয়ে যায়। প্রতি কয়েক মাসে গ্রেস পিরিয়ড পর্যালোচনা করুন।
- সময় অঞ্চল উপেক্ষা করা. সার্ভার ঘড়ি এবং আপনার সময়সূচী অসম্মত হলে, একটি দৈনিক কাজ এক ঘন্টা দেরি হতে পারে। প্রাচীর-ঘড়ির সময় নয়, প্রত্যাশিত ব্যবধান সেট করুন এবং প্রথম দৌড়ে টাইমার শুরু হতে দিন।
- খুব ঘন ঘন পিং করা। হার্টবিটগুলি এমন কাজের জন্য ডিজাইন করা হয়েছে যা মিনিটে সর্বাধিক একবার চলে; একই মিনিটের মধ্যে অতিরিক্ত পিং উপেক্ষা করা হয়।
- কাজের মধ্যে একটি হার্টবিট শেয়ার করা। প্রতিটি কাজের নিজস্ব URL প্রয়োজন, অন্যথায় একটি সুস্থ কাজ অন্যটি লুকিয়ে রাখে যা বন্ধ হয়ে যায়।
- রক্ষণাবেক্ষণের সময় বিরতি দিতে ভুলে যাওয়া। আপনি একটি সার্ভার স্থানান্তর করার সময় হার্টবিট থামান, তাই ইতিহাস শুধুমাত্র বাস্তব ঘটনা দেখায়।
আপটাইম চেকের পাশে হার্টবিট সবচেয়ে ভালো কাজ করে
হার্টবিট আপনাকে বলে যে আপনার সাইটের পিছনে কাজ হচ্ছে; আপটাইম চেক আপনাকে বলে যে দর্শকরা এটিতে পৌঁছাতে পারে। একসাথে তারা উভয় অর্ধেক আবরণ. আপনি যদি এখনও ওয়েবসাইট চেক সেট আপ না করে থাকেন, তাহলে বিনা মূল্যে ওয়েবসাইট আপটাইম কিভাবে নিরীক্ষণ করবেন সে সম্পর্কে আমাদের নির্দেশিকা অনুসরণ করুন এবং আপনি সেখানে থাকাকালীন SSL এবং ডোমেনের মেয়াদোত্তীর্ণ নিরীক্ষণ যোগ করুন। আপনি এখনই SSL চেকার দিয়ে যেকোনো শংসাপত্র পরীক্ষা করতে পারেন।
আপনার সবচেয়ে গুরুত্বপূর্ণ কাজ রক্ষা করতে প্রায় পাঁচ মিনিট সময় লাগে। আপনার বিনামূল্যের অ্যাকাউন্ট তৈরি করুন, আপনার ব্যাকআপের জন্য একটি হার্টবিট যোগ করুন এবং আমাদের নজর রাখতে দিন যাতে আপনাকে না হয়।
প্রায়শই জিজ্ঞাসিত প্রশ্ন
cron পর্যবেক্ষণ এবং আপটাইম পর্যবেক্ষণের মধ্যে পার্থক্য কী?
আপটাইম মনিটরিং আপনার সাইট সাড়া দেয় কিনা তা দেখতে বাইরে থেকে একটি URL চেক করে। ক্রোন বা হার্টবিট মনিটরিং আপনার নির্ধারিত কাজের জন্য চেক ইন করার জন্য অপেক্ষা করে, এবং যখন এটি সময়মতো পৌঁছায় না তখন আপনাকে সতর্ক করে।
হার্টবিট মনিটরিং কি সত্যিই বিনামূল্যে?
হ্যাঁ। বিনামূল্যের প্ল্যানটিতে ইমেল, Slack, Discord, Telegram, Microsoft Teams এবং ওয়েবহুক সতর্কতা সহ 5টি হার্টবিট মনিটর রয়েছে৷ কোন ক্রেডিট কার্ড নেই এবং কোন ট্রায়াল ফুরিয়ে যায়।
আমার সার্ভারে একটি এজেন্ট ইনস্টল করতে হবে?
না। আপনার কাজের শুধুমাত্র একটি এইচটিটিপি অনুরোধ করতে হবে তার হার্টবিট ইউআরএলে, যেমন কার্ল বা wget সহ, যা প্রায় প্রতিটি সার্ভারে উপলব্ধ।
গ্রেস পিরিয়ড কতদিন হওয়া উচিত?
এটিকে কাজের স্বাভাবিক রান টাইম এবং নিরাপত্তা মার্জিনে সেট করুন। একটি কাজ যা সাধারণত 10 মিনিট সময় নেয় তা 15 থেকে 20 মিনিটের গ্রেস পিরিয়ড দ্বারা ভালভাবে পরিবেশিত হয়।
আমি কি দিনে একবার বা সপ্তাহে একবার চালিত কাজগুলি নিরীক্ষণ করতে পারি?
হ্যাঁ। কাজের সময়সূচীতে প্রত্যাশিত ব্যবধান সেট করুন, যেমন 1 দিন বা 7 দিন, এবং একটি রান মিস হলে আপনাকে সতর্ক করা হবে।