Vercel හි නව Fluid Compute රන්ටයිම් මගින් දැන් Vercel Functions තුළම WebSocket සම්බන්ධතා තබා ගත හැකි බව පෙනෙයි. මෙයින් තනි Socket.IO සර්වරයක් හෝ Redis pub/sub පට්ටියක් අවශ්ය නොවෙයි; සරල API රූට් එකක් මත රියල්‑ටයිම් දත්ත හුවමාරු කරගත හැක.
WebSocket සහ Fluid Compute කෙටි හැඳින්වීම
Vercel Functions හි experimental_upgradeWebSocket() නමින් නව API එකක් එක් කර ඇත. මේ API එක භාවිතා කරමින් HTTP ඉල්ලීමක් WebSocket වෙත උත්තරාධිකාරී කරගත හැක. Fluid Compute යනු එක් function instance එකක් එකවර බහු ඉල්ලීම් වලට භාවිතා කරගන්නා පද්ධතියක්; ඒ නිසා සම්බන්ධතාවයක් මිනිත්තු හෝ පැය ගණනක් තබාගත හැකි වේ. පරණ serverless ආකෘතියේ “එක ඉල්ලීමක්, එක පිළිතුරක්” සීමාව මෙහි නැත.
කොඩ් උදාහරණයක්
```ts import { experimental_upgradeWebSocket } from '@vercel/functions'; export function GET(request: Request) { return experimental_upgradeWebSocket(request, { onOpen(ws) { ws.send(JSON.stringify({type:'connected'})); }, onMessage(ws, ev) { const data = JSON.parse(ev.data as string); ws.send(JSON.stringify({type:'ack', received:data})); }, onClose(ws, ev) { /* clean‑up */ } }); } ```
කළින් client පැකේජ් එකත් සාමාන්ය WebSocket එකක් වගේම new WebSocket('wss://your-app.vercel.app/api/live') ලෙස භාවිතා කරයි. Vercel‑ට විශේෂයෙන් කිසිම dependency එකක් අවශ්ය නැත.
WebSocket vs Server‑Sent Events (SSE)
දත්ත දෙපාර්ශවීය හුවමාරුව අවශ්ය නම් WebSocket වඩා සුදුසු. චැට්, සමාන්ය සංස්කරණ, මල්ටි‑ප्लेයර් ගේම් වැනි තත්වයන්ට මෙය හොඳයි. තනි‑දිරියට (server → client) පණිවිඩයක් පමණක් යවන්න අවශ්ය නම් SSE හෝ පොලින්ග් පද්ධතියක් පාවිච්චි කිරීම ලේසි.
ශ්රී ලංකාවට ඇති වැදගත්කම
ශ්රී ලංකාවේ තරුණ සංවර්ධකයින්ට මේ නවතාවය විශාල අවස්ථාවක්. පළමු වරට serverless වාතාවරණයකම රියල්‑ටයිම් චැට්, ලයිව් ඩැෂ්බෝර්ඩ්, සමාන්ය සංස්කරණ යෙදුම් සකස් කළ හැක. ඒ නිසා:
- ඉගෙනුම් ආයතනවලට වඩා අඩු වියදමකින් ප්රායෝගික රියල්‑ටයිම් වැඩසටහන් පරීක්ෂා කිරීමට හැකි වේ.
- ස්ථානාත්රික start‑up ගූඩස් වැනි ව්යාපාරවලට තනි server එකක් නඩත්තු කිරීමේ බර අඩු වේ, ඉන්පසු ආකර්ශනීය SaaS සේවාවන්ට මුහුණ දෙන්න අවශ්ය නැත.
- විකසිත API හා Cloud ක්රමවේදයන් පිළිබඳ දැනුම වැඩි දියුණු කර, ගෝලීය තරඟකාරීත්වයට පත් කරයි.
ඉදිරියේදී Vercel හි Fluid Compute තවත් වැඩි සම්පත් (CPU, memory) ලබා දී, වැඩි concurrent connections ගණනක් හසුරවීමට හැකි වනු ඇත; ඒ නිසා ශ්රී ලංකාවේ තාක්ෂණික ආර්ථිකය තවත් වේගයෙන් වර්ධනය වීමට උපකාරී වේ.
අවසන් වශයෙන්, Vercel Functions හි WebSocket සහාය යනු “serverless” පදනමට නව මට්ටමක් එක් කරයි. දැන් සංවර්ධකයින්ට තනි සේවාදායකයක් මත පදනම් වූ පද්ධතියක් නොව, ලියන කේතයම සෘජුවම රියල්‑ටයිම් සම්බන්ධතා සපයයි.