ශ්‍රී ලංකාවේ නවතම තාක්ෂණික පුවත් 2026-07-25, Saturday
💻 ක්‍රමලේඛනය · 🕒 කියවීමට විනාඩි 2 · 👁 1

Python බොට්වල අඛණ්ඩ විශ්වාසය: ක්‍රැෂ් ලූප් වලින් බේරෙන්න සම්පූර්ණ මාර්ගෝපදේශය

Python බොට්වල අඛණ්ඩ විශ්වාසය: ක්‍රැෂ් ලූප් වලින් බේරෙන්න සම්පූර්ණ මාර්ගෝපදේශය

Python භාෂාවෙන් ලියන බොට් එකක් ඕනෑම වේලාවක අහඹු වැරදි හෝ API ප්‍රතිචාරයක් හේතුවෙන් නවතී යා හැක. වැරදි එකවර වාරයක් පමණක් නොව, නිතරම සිදුවේ නම්, ඔබේ සේවාව අඩු වේගයෙන් හෝ පූර්ණයෙන්ම බිඳී යා හැක. මේ ලිපියෙන් බොට්වල ක්‍රැෂ් ලූප් වලට පත් නොවීමට, ස්වයංක්‍රීය නැවත ආරම්භය සැකසීමට, සහ නිරන්තර විශ්වාසය තහවුරු කිරීමට අවශ්‍ය සියලුම පියවර පැහැදිලි කරයි.

බොට් ක්‍රැෂ් වීමේ සාමාන්‍ය හේතු

  • ඉවෙන්ට් හෑන්ඩලරයක අසම්භාව්‍ය εξαίρεση (exception) සිදුවීම
  • තෙවන පාර්ශව API එකෙන් අනපේක්ෂිත JSON ආකෘතිය ලැබීම
  • දිගු කාලීන ඉල්ලීමක් අතර ජාල සම්බන්ධතා අස්ථානගත වීම
  • මූලික මතක (memory) අවසන් වීම, විශේෂයෙන් නිදහස්-පෙළ (free‑tier) කන්ටේනර වල
  • අලුත් ඩිප්ලොයි එකක පරිසර පරාමිති (environment variable) අස්ථානගත වීම

මෙම ගැටළු බොට්වලට අත්‍යවශ්‍ය නොවේ; ප්‍රශ්නය එම ගැටළු ඇති වූ පසු බොට් එක ස්වයංක්‍රීයව නැවත පණිවුඩයක් ලබා දෙනවාද යන්නයි.

ක්‍රැෂ් ලූප් කියන්නේ කුමක්ද? බොට් එකක් නවතී, ඒකම වැරදි හේතුවෙන් නැවත නවතී, නැවත ආරම්භ වෙයි – මෙය සීමාවක් නොමැතිව සිදු වන විට සම්පත් අධික ලෙස පරිභෝජනය කරයි. ඒ නිසා, අඛණ්ඩ නැවත ආරම්භය (unlimited auto‑restart) භාවිතා කිරීම අවදානම්.

StayPresent සමඟ ස්වයංක්‍රීය නැවත ආරම්භය සැකසීම

StayPresent යනු Python බොට් එකක් නවතීනම්, non‑zero exit code එකක් සමඟ ස්වයංක්‍රීයව නැවත ආරම්භ කරන ලයිබ්‍රරියකි. උදාහරණයක්:

staypresent.run("bot.py", restart_on_crash=True)

exit code 0 නම්, එය අදහස් කරන්නේ නිවැරදිව නිමාවක් බවය – මෙය “shutdown now” වැනි නියෝග සඳහා ප්‍රයෝජනවත්.

නැවත ආරම්භය අතර පාවිච්චිය (restart delay) – තත්කාලික rate‑limit වැනි ගැටළුවක් ඇති වෙද්දී, වහාම නැවත උත්සාහ කිරීම ප්‍රශ්නය තවත් ගැඹුරු කරයි. restart_delay පරාමිතිය භාවිතා කර 2–10 තත්පර පමණ විරාමයක් දිය හැක.

නැවත ආරම්භ සීමා (max_restarts) සහ සන්ධි සකස් කිරීමmax_restarts මගින් අනිවාර්යයෙන්ම ක්‍රැෂ් ලූප් එකක් නවත්වයි. restart_reset_after මගින් බොට් එක සාර්ථකව කාලයක් (උදා. 60 seconds) පවත්නා පසු ගණන නැවත 0 වෙයි, එවිට සතිපතා එකක් වැරදියත් නැවත ආරම්භ බජට් එක අඩු නොවේ.

ශ්‍රී ලංකාවට ඇති වැදගත්කම

ශ්‍රී ලංකාවේ තරුණ සංවර්ධකයින්, තාක්ෂණ ආරම්භකයින්, සහ කුඩා ව්‍යාපාර සඳහා Python බොට්වල විශ්වාසනීයතාවය ඉතා වැදගත්. නිවැරදි restart strategy එකක් ඇතිවීමෙන්:

  • වෙළඳපල API සමඟ සම්බන්ධවූ chatbot, trading bot, හෝ monitoring script එකක් අඛණ්ඩව සේවාව ලබා දිය හැක.
  • වියදම් අඩු වේ – අනිතික crash loop එකක් නිසා cloud hosting (Render, Railway, Docker) වල අධික සම්පත් භාවිතය වැළැක්වීම.
  • ඉගෙනුම් වාසි – සිසුන්ට production‑grade error handling, health‑check endpoint, සහ deployment best practices අත්හදා බැලීමට අවස්ථාව ලැබේ.

ඉතින්, ඔබේ Python bot එක StayPresent මගින් සකස් කර, නවතීම් අවස්ථාවේ පවා ව්‍යාපාරික විශ්වාසය රැකගන්න.

අවසන් වශයෙන්, බොට් එකක් සාර්ථකව ක්‍රියාත්මක කර ගැනීමට, නිවැරදි restart delay, limit, සහ health endpoint සැකසීම අත්‍යවශ්‍ය. මෙයින් ඔබේ සේවාව අඛණ්ඩ, ආරක්ෂිත, සහ පරිසර‑හිතකර වේ.

💡 ඔබේ Python bot එක දැන් StayPresent සමඟ ආරක්ෂා කරමු!
මූලාශ්‍රය මෙම ලිපිය AI මගින් රචිත මුල් සාරාංශයකි. සම්පූර්ණ වාර්තාව කියවන්න:
Dev.to ↗
#Python #Bots #Reliability #StayPresent #SriLanka