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

SSE සමඟ ලිපි පෝලිම ප්‍රගතිය රියල්-ටයිම් දර්ශනය – ස්පින්නර්ටු වෙනුවට තත්‍ය පියවර

SSE සමඟ ලිපි පෝලිම ප්‍රගතිය රියල්-ටයිම් දර්ශනය – ස්පින්නර්ටු වෙනුවට තත්‍ය පියවර

ලිපි පෝලිම (article queue) තුළ පසුබැසී ඇති ‘ජෙනරේට් වෙමින්…’ යන ස්පින්නර් එකක්, තවත් ත්‍රිත්වයක් (research, generate, verify) සිදු වෙමින් තිබුනාටත්, පරිශීලකයාට ඒ ගැන කිසිවක් පෙනෙන්නේ නැති අයුරින් පෙනෙයි. මේ තත්ත්වය සත්‍යයෙන්ම නිවැරදියත්, ප්‍රායෝගිකව අතිශය අනාගාරයක් වුණි.

ඉතින්, සේවාදායකය (server) වැඩේ ගැන වඩාත් තොරතුරු දන්නා නිසා, ලේඛකයා ස්පින්නර් එක ඉවත් කර, Server‑Sent Events (SSE) භාවිතයෙන් තත්‍ය තත්ත්වයන් පෙන්වන තුනක පියවරක (three‑slot stepper) පද්ධතියක් හඳුන්වා දුන්නා. POST /api/articles/drafts/queue අන්තර්ගතය දැන් SSE මගින් ප්‍රගතිය ප්‍රවාහනය කරන අතර, එක් එක් සිදුවීම (event) වර්තමාන ස්ලොට් එකේ තත්ත්වය (Researching, Generating, Verifying links, Done) වාර්තා කරයි.

ඩැෂ්බෝඩ් පාර්ශ්වයෙන් GenerationProgress කොම්පොනන්ට් එක මෙම සිදුවීම් අරගෙන රියල්‑ටයිම් අලුත්කම් පෙන්වයි. ස්පින්නර් එකක් බලමින් “කොහොමද වැඩ කරන්නේ?” කියලා අනුමාන කිරීමේ තැන, දැන් පර්යේෂණ වේලාවේ සොයාගත් මූලාශ්‍ර ගණන, ජනනය වූ ශීර්ෂකය, ලින්ක් පරීක්ෂණය, සහ අවසානව ද්‍රාෆ්ට් සැකසීමේ තත්ත්වය සියල්ල පෙනේ. slot_done සිදුවීමේදී සැබෑ draft_id එකත් සමඟ නිවැරදි වේලාවට නිමාව පෙන්වයි – අසත්‍ය “Done” පණිවිඩයක් නොව.

මෙම වැඩසටහනේ වඩාත් වැදගත් කොටස වන්නේ ප්‍රගතිය සැබෑ වැඩේ සමඟ සම්බන්ධ කර ගැනීමයි. SSE එක රූට් එකට එක් කිරීම පහසු වුවත්, ප්‍රගති දත්තය නිර්මාණ මාර්ගයේ (backfill, generate_article_payload) ගැලපෙන්නා වූ callback (progress_cb) හරහා ගමන් කරවීම අවශ්‍ය වුණා. ඒ නිසා ප්‍රගති සිදුවීම් “73% පූර්ණයි” වැනි අසත්‍ය ප්‍රතිශතවලට පදනම් නොව, “මූලාශ්‍ර හමුවුණි”, “ශීර්ෂක ජනනය වුණි”, “ලින්ක් පරීක්ෂණය වුණි”, “ඩ්‍රාෆ්ට් සුරකින ලුණි” වැනි නාමික පියවරවලට පදනම් වෙයි.

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

ශ්‍රී ලංකාවේ සංවර්ධකයින්, අධ්‍යාපන ආයතන, ව්‍යාපාරිකයින් සඳහා මෙය කිහිපයක්ම ප්‍රයෝජනවත්:

  • ඉගෙනුම සහ පුහුණුව: රියල්‑ටයිම් ප්‍රගතිය දැකීම, API හා SSE වැනි නව තාක්ෂණයන් පිළිබඳ ප්‍රායෝගික අවබෝධය ගොඩනැගීමට උදව් කරයි.
  • ඉදිරි නිර්මාණය: පියවර‑පියවර දත්ත ලැබීම නිසා දෝෂයකදී පූර්ණ පෝලිම අහෝසි නොවී, අඩු පියවරවල නිමාව සුරකිමින් වැඩේ ඉදිරියට ගෙන යා හැකිය.
  • ව්‍යාපාරික කාර්යක්ෂමතාව: JSON fallback එකත් සමඟ සමාන පාරිභෝගිකයන්ට අඩංගු සේවාව ලබා දී, පාරිභෝගික අඩුපාඩු රහිතව, කාලය හා සම්පත් සුරකින්නට හැකි වේ.

අනාගතයේදී ප්‍රගති සිදුවීම් සඳහා ස්කීමා එක පෙර නිර්වචනය කර, backend සහ frontend අතර සම්මුඛතාවය තවත් වේගවත් කරගත හැකිය. මෙවැනි “සත්‍ය ප්‍රගතිය” පෙන්වීම, පරිශීලක අත්දැකීම උසස් කර, තාක්ෂණික පද්ධතිවල විශ්වාසය වැඩි කරයි.

ඉතින්, සේවාදායකය දැනගන්නා දේ පාරිභෝගිකයාට පෙනෙන ආකාරයට පරිවර්තනය කිරීම, තාක්ෂණික නිර්මාණයක මූලික නීතියක් බව මේ උදාහරණය තහවුරු කරයි.

💡 ඔබේ ව්‍යාපාරයට රියල්‑ටයිම් ප්‍රගතියක් දැන්ම අත්විඳින්න!
මූලාශ්‍රය මෙම ලිපිය AI මගින් රචිත මුල් සාරාංශයකි. සම්පූර්ණ වාර්තාව කියවන්න:
Dev.to ↗
#SSE #Progress #API #ArticleQueue #WebDev