[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"academy-blogs-th-9-12-Tailwind%252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252520CSS-all-all-createdAt:desc-default":3},{"data":4,"page":522,"perPage":523,"totalItems":524,"totalPages":525},[5,81,118,167,215,256,292,335,364,401,433,470],{"alt":6,"cover_image_path":7,"created":8,"expand":9,"id":77,"published_at":78,"school_blog":73,"short_description":79,"title":6,"updated":80,"slug":74,"views":76},"EP.114 การจัดการ Multi-device & Multi-session สำหรับ WebSocket Server","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F3ijessvp7wgttqd\u002Fcover_image_ep_ozojn2qh39.ebSocketSystems.webp","2026-03-04 08:45:11.857Z",{"keywords":10,"locale":44,"school_blog":54},[11,19,24,29,34,39],{"collectionId":12,"collectionName":13,"created":14,"created_by":15,"id":16,"name":17,"updated":18,"updated_by":15},"sclkey987654321","school_keywords","2026-03-04 08:44:48.724Z","76qprkevbgfdps8","s6xhnfomy7n5ycp","WebSocket Server","2026-06-07 06:46:39.070Z",{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},"2026-03-04 08:44:49.054Z","vbjgbr5ah0kh43p","Real-time System","2026-06-07 06:46:39.270Z",{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},"2026-03-04 08:20:11.547Z","ey3puyme01a9bsw","Go","2026-06-07 06:45:07.798Z",{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},"2026-03-04 08:45:11.216Z","4pcpc8j9lxwki40","Multi-session","2026-06-07 06:46:45.378Z",{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},"2026-03-04 08:45:11.536Z","dam2zlrgu9l1qrd","Multi-device","2026-06-07 06:46:45.580Z",{"collectionId":12,"collectionName":13,"created":40,"created_by":15,"id":41,"name":42,"updated":43,"updated_by":15},"2026-03-04 08:34:00.920Z","ecac9y661or1xka","WebSocket","2026-06-07 06:45:55.734Z",{"code":45,"collectionId":46,"collectionName":47,"created":48,"flag":49,"id":50,"is_default":51,"label":52,"updated":53},"th","pbc_1989393366","locales","2026-01-22 10:59:55.832Z","twemoji:flag-thailand","s8wri3bt4vgg2ji",true,"Thai","2026-04-10 15:42:46.614Z",{"category":55,"collectionId":56,"collectionName":57,"created":58,"expand":59,"id":73,"slug":74,"updated":75,"views":76},"wqxt7ag2gn7xcmk","pbc_2105096300","school_blogs","",{"category":60},{"blogIds":61,"collectionId":62,"collectionName":63,"created":64,"created_by":15,"id":55,"image":65,"image_alt":58,"image_path":66,"label":67,"name":68,"priority":69,"publish_at":70,"scheduled_at":58,"status":71,"updated":72,"updated_by":15},[],"sclcatblg987654321","school_category_blogs","2026-03-04 08:33:53.210Z","59ty92ns80w_15oc1implw.png","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fwqxt7ag2gn7xcmk\u002F59ty92ns80w_15oc1implw.png",{"en":68,"th":68},"Golang The Series",1,"2026-03-16 04:39:38.440Z","published","2026-06-07 06:45:03.856Z","wzoz7l3fkolypwa","ep114-multi-device-multi-session-websocket","2026-06-13 09:20:54.602Z",271,"3ijessvp7wgttqd","2025-12-08 03:47:51.843Z","เรียนรู้การออกแบบระบบ WebSocket ที่รองรับผู้ใช้ 1 คนเข้าใช้งานหลายอุปกรณ์พร้อมกันอย่างเสถียร ปลอดภัย และซิงก์ข้อมูลแบบเรียลไทม์ พร้อมตัวอย่างโค้ด Go และแนวทางระดับ Production","2026-06-07 06:43:28.743Z",{"alt":82,"cover_image_path":83,"created":84,"expand":85,"id":114,"published_at":115,"school_blog":110,"short_description":116,"title":82,"updated":117,"slug":111,"views":113},"EP.115 การใช้ WebSocket ในระบบ Multiplayer Game ขั้นสูง (Advanced Multiplayer Game System)","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fghutpdhsg8a4psb\u002Fcover_image_ep_4l3pq7n7eo.bSocketinGolang.webp","2026-03-04 08:45:10.850Z",{"keywords":86,"locale":104,"school_blog":105},[87,92,97,98,99],{"collectionId":12,"collectionName":13,"created":88,"created_by":15,"id":89,"name":90,"updated":91,"updated_by":15},"2026-03-04 08:45:10.623Z","2zhfdpu8sy1xeju","Golang WebSocket","2026-06-07 06:46:45.080Z",{"collectionId":12,"collectionName":13,"created":93,"created_by":15,"id":94,"name":95,"updated":96,"updated_by":15},"2026-03-04 08:20:14.253Z","ah6lvy4x8qe08l5","Golang","2026-06-07 06:45:08.193Z",{"collectionId":12,"collectionName":13,"created":40,"created_by":15,"id":41,"name":42,"updated":43,"updated_by":15},{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},{"collectionId":12,"collectionName":13,"created":100,"created_by":15,"id":101,"name":102,"updated":103,"updated_by":15},"2026-03-04 08:45:09.425Z","75vnd9vtdgbgcsr","Multiplayer Game","2026-06-07 06:46:44.768Z",{"code":45,"collectionId":46,"collectionName":47,"created":48,"flag":49,"id":50,"is_default":51,"label":52,"updated":53},{"category":55,"collectionId":56,"collectionName":57,"created":58,"expand":106,"id":110,"slug":111,"updated":112,"views":113},{"category":107},{"blogIds":108,"collectionId":62,"collectionName":63,"created":64,"created_by":15,"id":55,"image":65,"image_alt":58,"image_path":66,"label":109,"name":68,"priority":69,"publish_at":70,"scheduled_at":58,"status":71,"updated":72,"updated_by":15},[],{"en":68,"th":68},"9o11ptzo0838b9r","ep115-websocket-multiplayer-game-advanced","2026-05-26 02:46:18.127Z",240,"ghutpdhsg8a4psb","2025-12-08 02:13:56.236Z","เรียนรู้การออกแบบ Multiplayer Game แบบเรียลไทม์ด้วย Go และ WebSocket ตั้งแต่ Player Sync, Position Update, Event Broadcast, Room Architecture ไปจนถึงเทคนิคลด Latency และแนวทางระดับ Production สำหรับเกมหลายผู้เล่น","2026-06-07 06:43:28.600Z",{"alt":119,"cover_image_path":120,"created":121,"expand":122,"id":163,"published_at":164,"school_blog":159,"short_description":165,"title":119,"updated":166,"slug":160,"views":162},"JS2GO EP.43 การทำ Rate Limiting และ Throttling ใน Go และ Node.js","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fkwtikt0mr8bk7nk\u002Fcover_image_js2_go_ep_43_rate_limiting_and_throttling_in_go_and_node_083y6kqmje.js.webp","2026-03-04 08:45:16.034Z",{"keywords":123,"locale":145,"school_blog":146},[124,129,134,135,140],{"collectionId":12,"collectionName":13,"created":125,"created_by":15,"id":126,"name":127,"updated":128,"updated_by":15},"2026-03-04 08:44:38.026Z","m3dqo2zalnfaoof","Token Bucket","2026-06-07 06:46:36.495Z",{"collectionId":12,"collectionName":13,"created":130,"created_by":15,"id":131,"name":132,"updated":133,"updated_by":15},"2026-03-04 08:45:14.634Z","k64fy7g22x7ash7","Throttling","2026-06-07 06:46:46.333Z",{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},{"collectionId":12,"collectionName":13,"created":136,"created_by":15,"id":137,"name":138,"updated":139,"updated_by":15},"2026-03-04 08:24:40.405Z","05u3tysava2z6ga","Node.js","2026-06-07 06:45:12.195Z",{"collectionId":12,"collectionName":13,"created":141,"created_by":15,"id":142,"name":143,"updated":144,"updated_by":15},"2026-03-04 08:34:07.915Z","921nl48h9in67sw","Rate Limiting","2026-06-07 06:45:58.705Z",{"code":45,"collectionId":46,"collectionName":47,"created":48,"flag":49,"id":50,"is_default":51,"label":52,"updated":53},{"category":147,"collectionId":56,"collectionName":57,"created":58,"expand":148,"id":159,"slug":160,"updated":161,"views":162},"hsa1afr8fcnd6qb",{"category":149},{"blogIds":150,"collectionId":62,"collectionName":63,"created":151,"created_by":15,"id":147,"image":152,"image_alt":58,"image_path":153,"label":154,"name":155,"priority":156,"publish_at":157,"scheduled_at":58,"status":71,"updated":158,"updated_by":15},[],"2026-03-04 08:24:37.986Z","js2_go_2_11zon_y6paxmuz32.webp","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fhsa1afr8fcnd6qb\u002Fjs2_go_2_11zon_y6paxmuz32.webp",{"en":155,"th":155},"JS2GO",10,"2025-08-11 03:41:08.820Z","2026-06-07 06:45:02.240Z","xnajds5fdcdxt16","js2go-ep43-rate-limiting-throttling-go-nodejs","2026-06-12 21:50:13.316Z",234,"kwtikt0mr8bk7nk","2025-12-03 14:28:15.587Z","เรียนรู้วิธีป้องกันระบบล่มด้วย Rate Limiting และ Throttling ทั้ง Token Bucket, Leaky Bucket และ Sliding Window พร้อมตัวอย่างโค้ดจริงใน Go และ Node.js สำหรับใช้งานในระบบระดับ Production","2026-06-07 06:43:29.986Z",{"alt":168,"cover_image_path":169,"created":170,"expand":171,"id":211,"published_at":212,"school_blog":207,"short_description":213,"title":168,"updated":214,"slug":208,"views":210},"คุณอาจกำลังเสียเวลาอ่านโค้ดโดยไม่จำเป็น… ถ้ายังไม่รู้จัก Code Wiki","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Ff2draewgm0el39c\u002Fwhat_is_code_wiki_google_s_tool_that_helps_developers_understand_code_faster_ji0s94vmdo.webp","2026-03-04 08:45:17.799Z",{"keywords":172,"locale":193,"school_blog":194},[173,178,183,188],{"collectionId":12,"collectionName":13,"created":174,"created_by":15,"id":175,"name":176,"updated":177,"updated_by":15},"2026-03-04 08:45:17.133Z","71gsmylmonz3ikx","code wiki","2026-06-07 06:46:46.865Z",{"collectionId":12,"collectionName":13,"created":179,"created_by":15,"id":180,"name":181,"updated":182,"updated_by":15},"2026-03-04 08:45:16.903Z","fc3dajgzvy2vdec","google code wiki","2026-06-07 06:46:46.768Z",{"collectionId":12,"collectionName":13,"created":184,"created_by":15,"id":185,"name":186,"updated":187,"updated_by":15},"2026-03-04 08:45:16.585Z","h61ztnkgd0y3ooz","developer tools","2026-06-07 06:46:46.687Z",{"collectionId":12,"collectionName":13,"created":189,"created_by":15,"id":190,"name":191,"updated":192,"updated_by":15},"2026-03-04 08:20:15.564Z","9zhk20p0247axym","Google","2026-06-07 06:45:08.345Z",{"code":45,"collectionId":46,"collectionName":47,"created":48,"flag":49,"id":50,"is_default":51,"label":52,"updated":53},{"category":195,"collectionId":56,"collectionName":57,"created":58,"expand":196,"id":207,"slug":208,"updated":209,"views":210},"jwhmeg2uxwz0bkp",{"category":197},{"blogIds":198,"collectionId":62,"collectionName":63,"created":199,"created_by":15,"id":195,"image":200,"image_alt":58,"image_path":201,"label":202,"name":203,"priority":204,"publish_at":205,"scheduled_at":58,"status":71,"updated":206,"updated_by":15},[],"2026-03-04 08:31:40.635Z","1qt33a4n2u3_lr23qy62xh.png","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fjwhmeg2uxwz0bkp\u002F1qt33a4n2u3_lr23qy62xh.png",{"en":203,"th":203},"Tools & Resources",0,"2025-01-31 09:55:27.001Z","2026-06-07 06:45:02.778Z","gado4zcess7ysg9","code-wiki-save-time-reading-code","2026-06-19 03:15:15.583Z",336,"f2draewgm0el39c","2025-12-02 03:40:15.214Z","Code Wiki คือเครื่องมือใหม่จาก Google ที่ช่วยสร้างเอกสารโค้ดแบบอัตโนมัติและอัปเดตตามโค้ดจริง ทำให้นักพัฒนาทำความเข้าใจระบบได้เร็วขึ้น ลดเวลาในการอ่านโค้ดย้อน และปรับปรุงประสบการณ์การทำงานของทีม Dev อย่างชัดเจน","2026-06-07 06:43:30.339Z",{"alt":216,"cover_image_path":217,"created":218,"expand":219,"id":252,"published_at":253,"school_blog":248,"short_description":254,"title":216,"updated":255,"slug":249,"views":251},"JS2GO EP.42 Goroutine Pools และ Worker Pools ใน Go และ JavaScript","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fcky7eocdx79x37y\u002Fcover_image_js2_go_ep_h9thc5vq15.GoandJavaScript.webp","2026-03-04 08:45:18.581Z",{"keywords":220,"locale":242,"school_blog":243},[221,226,227,232,237],{"collectionId":12,"collectionName":13,"created":222,"created_by":15,"id":223,"name":224,"updated":225,"updated_by":15},"2026-03-04 08:20:42.484Z","vslzz9nvv6n77cx","JavaScript","2026-06-07 06:45:10.888Z",{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},{"collectionId":12,"collectionName":13,"created":228,"created_by":15,"id":229,"name":230,"updated":231,"updated_by":15},"2026-03-04 08:24:48.143Z","dourw0uuydrrh1h","Concurrency","2026-06-07 06:45:12.740Z",{"collectionId":12,"collectionName":13,"created":233,"created_by":15,"id":234,"name":235,"updated":236,"updated_by":15},"2026-03-04 08:34:34.471Z","wdd8fb47sbrmq28","Worker Pool","2026-06-07 06:46:10.765Z",{"collectionId":12,"collectionName":13,"created":238,"created_by":15,"id":239,"name":240,"updated":241,"updated_by":15},"2026-03-04 08:45:16.045Z","1h6015yv90l5ktw","Goroutine Pool","2026-06-07 06:46:46.563Z",{"code":45,"collectionId":46,"collectionName":47,"created":48,"flag":49,"id":50,"is_default":51,"label":52,"updated":53},{"category":147,"collectionId":56,"collectionName":57,"created":58,"expand":244,"id":248,"slug":249,"updated":250,"views":251},{"category":245},{"blogIds":246,"collectionId":62,"collectionName":63,"created":151,"created_by":15,"id":147,"image":152,"image_alt":58,"image_path":153,"label":247,"name":155,"priority":156,"publish_at":157,"scheduled_at":58,"status":71,"updated":158,"updated_by":15},[],{"en":155,"th":155},"76bhys68f0c8v31","js2go-ep42-goroutine-pool-worker-pool-go-vs-javascript","2026-06-07 20:59:39.438Z",225,"cky7eocdx79x37y","2025-12-02 03:39:17.183Z","เรียนรู้วิธีควบคุมจำนวนงานพร้อมกันด้วย Goroutine Pools และ Worker Pools เพื่อป้องกัน resource leak และทำให้ระบบรองรับโหลดระดับหมื่นคำขอ\u002Fวินาทีได้อย่างเสถียร พร้อมตัวอย่างโค้ดจริงทั้ง Go และ JavaScript","2026-06-07 06:43:30.520Z",{"alt":257,"cover_image_path":258,"created":259,"expand":260,"id":288,"published_at":289,"school_blog":284,"short_description":290,"title":257,"updated":291,"slug":285,"views":287},"EP.113 การสร้างระบบ Chat Multi-room ขั้นสูง (Advanced Multi-room Chat System)","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F031eo95zo2f02o0\u002Fcover_image_ep_ppxwfo3653.hGoandWebSocket.webp","2026-03-04 08:45:13.632Z",{"keywords":261,"locale":278,"school_blog":279},[262,266,271,276,277],{"collectionId":12,"collectionName":13,"created":263,"created_by":15,"id":264,"name":68,"updated":265,"updated_by":15},"2026-03-04 08:44:51.471Z","hlato0hav8vo8wm","2026-06-07 06:46:40.040Z",{"collectionId":12,"collectionName":13,"created":267,"created_by":15,"id":268,"name":269,"updated":270,"updated_by":15},"2026-03-04 08:45:12.082Z","d1gcnwwosqk2zn0","redis pubsub","2026-06-07 06:46:45.685Z",{"collectionId":12,"collectionName":13,"created":272,"created_by":15,"id":273,"name":274,"updated":275,"updated_by":15},"2026-03-04 08:45:12.418Z","vbx3b3qn50sn0tr","Multi-room Chat","2026-06-07 06:46:45.865Z",{"collectionId":12,"collectionName":13,"created":40,"created_by":15,"id":41,"name":42,"updated":43,"updated_by":15},{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},{"code":45,"collectionId":46,"collectionName":47,"created":48,"flag":49,"id":50,"is_default":51,"label":52,"updated":53},{"category":55,"collectionId":56,"collectionName":57,"created":58,"expand":280,"id":284,"slug":285,"updated":286,"views":287},{"category":281},{"blogIds":282,"collectionId":62,"collectionName":63,"created":64,"created_by":15,"id":55,"image":65,"image_alt":58,"image_path":66,"label":283,"name":68,"priority":69,"publish_at":70,"scheduled_at":58,"status":71,"updated":72,"updated_by":15},[],{"en":68,"th":68},"c5vhepb3pkr5tot","go-advanced-multiroom-chat-system","2026-05-14 18:05:15.155Z",235,"031eo95zo2f02o0","2025-12-02 03:38:42.902Z","สร้างระบบแชทแบบหลายห้อง (Multi-room Chat) ที่รองรับผู้ใช้หลายกลุ่มพร้อมกัน พร้อมฟังก์ชันกระจายข้อความแบบเรียลไทม์ และเชื่อมต่อ Redis Pub\u002FSub เพื่อรองรับหลาย instance ได้จริงในระบบ production","2026-06-07 06:43:29.204Z",{"alt":293,"cover_image_path":294,"created":295,"expand":296,"id":331,"published_at":332,"school_blog":327,"short_description":333,"title":293,"updated":334,"slug":328,"views":330},"EP.112 การสร้างระบบ Notification แบบเรียลไทม์ (Real-time Notification System)","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fwbl9d896ederjtt\u002Fcover_image_ep_ex8tskqzez.withGoWebSocket.webp","2026-03-04 08:45:14.603Z",{"keywords":297,"locale":321,"school_blog":322},[298,299,304,309,310,311,316],{"collectionId":12,"collectionName":13,"created":14,"created_by":15,"id":16,"name":17,"updated":18,"updated_by":15},{"collectionId":12,"collectionName":13,"created":300,"created_by":15,"id":301,"name":302,"updated":303,"updated_by":15},"2026-03-04 08:45:13.969Z","pyniezbvfdbyuyc","real-time notifications","2026-06-07 06:46:46.125Z",{"collectionId":12,"collectionName":13,"created":305,"created_by":15,"id":306,"name":307,"updated":308,"updated_by":15},"2026-03-04 08:34:10.254Z","rss87kgvhtvkri1","Redis Pub\u002FSub","2026-06-07 06:45:59.786Z",{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},{"collectionId":12,"collectionName":13,"created":40,"created_by":15,"id":41,"name":42,"updated":43,"updated_by":15},{"collectionId":12,"collectionName":13,"created":312,"created_by":15,"id":313,"name":314,"updated":315,"updated_by":15},"2026-03-04 08:45:13.578Z","qwq1kseajvv4cne","notification system","2026-06-07 06:46:45.953Z",{"collectionId":12,"collectionName":13,"created":317,"created_by":15,"id":318,"name":319,"updated":320,"updated_by":15},"2026-03-04 08:45:14.176Z","90clm03jhn4xsnp","Notification","2026-06-07 06:46:46.208Z",{"code":45,"collectionId":46,"collectionName":47,"created":48,"flag":49,"id":50,"is_default":51,"label":52,"updated":53},{"category":55,"collectionId":56,"collectionName":57,"created":58,"expand":323,"id":327,"slug":328,"updated":329,"views":330},{"category":324},{"blogIds":325,"collectionId":62,"collectionName":63,"created":64,"created_by":15,"id":55,"image":65,"image_alt":58,"image_path":66,"label":326,"name":68,"priority":69,"publish_at":70,"scheduled_at":58,"status":71,"updated":72,"updated_by":15},[],{"en":68,"th":68},"8g70iqmnsdxbwpb","websocket-real-time-notification-ep112","2026-06-05 16:22:58.695Z",350,"wbl9d896ederjtt","2025-12-01 04:20:07.889Z","เรียนรู้วิธีสร้างระบบ Notification แบบเรียลไทม์ด้วย Go และ WebSocket พร้อมรองรับการขยายระบบด้วย Redis Pub\u002FSub เพื่อให้ผู้ใช้ได้รับการแจ้งเตือนทันทีเมื่อเกิด Event สำคัญ","2026-06-07 06:43:29.432Z",{"alt":336,"cover_image_path":337,"created":338,"expand":339,"id":360,"published_at":361,"school_blog":356,"short_description":362,"title":336,"updated":363,"slug":357,"views":359},"JS2GO EP.41 การจัดการ Concurrency Patterns ขั้นสูงใน Go และ JavaScript","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fnmahpjkd1ktk7id\u002Fcover_image_js2_go_ep_2ioizc6p6b.GoandJavaScript.webp","2026-03-04 08:45:18.911Z",{"keywords":340,"locale":350,"school_blog":351},[341,346,347,348,349],{"collectionId":12,"collectionName":13,"created":342,"created_by":15,"id":343,"name":344,"updated":345,"updated_by":15},"2026-03-04 08:45:18.214Z","teavruxi3wptjg2","Fan-in Fan-out","2026-06-07 06:46:47.083Z",{"collectionId":12,"collectionName":13,"created":233,"created_by":15,"id":234,"name":235,"updated":236,"updated_by":15},{"collectionId":12,"collectionName":13,"created":222,"created_by":15,"id":223,"name":224,"updated":225,"updated_by":15},{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},{"collectionId":12,"collectionName":13,"created":228,"created_by":15,"id":229,"name":230,"updated":231,"updated_by":15},{"code":45,"collectionId":46,"collectionName":47,"created":48,"flag":49,"id":50,"is_default":51,"label":52,"updated":53},{"category":147,"collectionId":56,"collectionName":57,"created":58,"expand":352,"id":356,"slug":357,"updated":358,"views":359},{"category":353},{"blogIds":354,"collectionId":62,"collectionName":63,"created":151,"created_by":15,"id":147,"image":152,"image_alt":58,"image_path":153,"label":355,"name":155,"priority":156,"publish_at":157,"scheduled_at":58,"status":71,"updated":158,"updated_by":15},[],{"en":155,"th":155},"hntkdnpnkznr05d","js2go-ep41-advanced-concurrency-patterns-go-vs-javascript","2026-06-17 12:10:24.185Z",219,"nmahpjkd1ktk7id","2025-11-25 09:53:31.002Z","เรียนรู้ Worker Pool, Fan-in\u002FFan-out, Rate Limiter และ Pipeline Optimization เปรียบเทียบการทำงานระหว่าง Go และ JavaScript พร้อมตัวอย่างที่ใช้จริงในระบบ Production","2026-06-07 06:43:30.686Z",{"alt":365,"cover_image_path":366,"created":367,"expand":368,"id":397,"published_at":398,"school_blog":393,"short_description":399,"title":365,"updated":400,"slug":394,"views":396},"JS2GO EP.40 การ Optimize Performance ของโค้ด: Go vs JavaScript ภาษาไหนเร็วกว่า?","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fxqxhqcf7ezee2ok\u002Fcover_image_for_js2_go_ep_qzlvftk3wr.hichOneIsFaster.webp","2026-03-04 08:45:20.755Z",{"keywords":369,"locale":387,"school_blog":388},[370,375,380,385,386],{"collectionId":12,"collectionName":13,"created":371,"created_by":15,"id":372,"name":373,"updated":374,"updated_by":15},"2026-03-04 08:45:19.588Z","jiiqle4ur9lyqjr","Garbage Collection","2026-06-07 06:46:47.260Z",{"collectionId":12,"collectionName":13,"created":376,"created_by":15,"id":377,"name":378,"updated":379,"updated_by":15},"2026-03-04 08:45:19.280Z","2zphwe6a9vls84d","Benchmark","2026-06-07 06:46:47.160Z",{"collectionId":12,"collectionName":13,"created":381,"created_by":15,"id":382,"name":383,"updated":384,"updated_by":15},"2026-03-04 08:45:19.946Z","qvr2sryoiqkkq1g","Optimize Performance","2026-06-07 06:46:47.375Z",{"collectionId":12,"collectionName":13,"created":222,"created_by":15,"id":223,"name":224,"updated":225,"updated_by":15},{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},{"code":45,"collectionId":46,"collectionName":47,"created":48,"flag":49,"id":50,"is_default":51,"label":52,"updated":53},{"category":147,"collectionId":56,"collectionName":57,"created":58,"expand":389,"id":393,"slug":394,"updated":395,"views":396},{"category":390},{"blogIds":391,"collectionId":62,"collectionName":63,"created":151,"created_by":15,"id":147,"image":152,"image_alt":58,"image_path":153,"label":392,"name":155,"priority":156,"publish_at":157,"scheduled_at":58,"status":71,"updated":158,"updated_by":15},[],{"en":155,"th":155},"ym4kynngu92kw5x","js2go-ep40-optimize-performance-go-vs-javascript","2026-06-08 06:13:56.861Z",227,"xqxhqcf7ezee2ok","2025-11-25 09:45:29.314Z","เรียนรู้เทคนิคการเพิ่มประสิทธิภาพของโค้ดทั้งใน Go และ JavaScript ตั้งแต่ Garbage Collection, Memory Profiling, Parallel Execution ไปจนถึง Benchmark Tools พร้อมเปรียบเทียบว่าแต่ละภาษาทำงานได้ดีในสถานการณ์แบบไหน","2026-06-07 06:43:31.131Z",{"alt":402,"cover_image_path":403,"created":404,"expand":405,"id":429,"published_at":430,"school_blog":426,"short_description":431,"title":402,"updated":432,"slug":427,"views":428},"EP.111 การจัดการ Message Ordering และ Event Sequence ให้ถูกต้อง 100%","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fytezt4r7uzpy79y\u002Fcover_image_for_golang_the_series_ep_yzbl8jnv38.ebSocketSystems.webp","2026-03-04 08:45:21.561Z",{"keywords":406,"locale":420,"school_blog":421},[407,408,413,418,419],{"collectionId":12,"collectionName":13,"created":88,"created_by":15,"id":89,"name":90,"updated":91,"updated_by":15},{"collectionId":12,"collectionName":13,"created":409,"created_by":15,"id":410,"name":411,"updated":412,"updated_by":15},"2026-03-04 08:45:20.573Z","v392y0yjhdt1ttt","Event Sequence","2026-06-07 06:46:47.684Z",{"collectionId":12,"collectionName":13,"created":414,"created_by":15,"id":415,"name":416,"updated":417,"updated_by":15},"2026-03-04 08:45:20.175Z","qt9i7rqnfh0kczq","Message Ordering","2026-06-07 06:46:47.499Z",{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},{"collectionId":12,"collectionName":13,"created":40,"created_by":15,"id":41,"name":42,"updated":43,"updated_by":15},{"code":45,"collectionId":46,"collectionName":47,"created":48,"flag":49,"id":50,"is_default":51,"label":52,"updated":53},{"category":55,"collectionId":56,"collectionName":57,"created":58,"expand":422,"id":426,"slug":427,"updated":58,"views":428},{"category":423},{"blogIds":424,"collectionId":62,"collectionName":63,"created":64,"created_by":15,"id":55,"image":65,"image_alt":58,"image_path":66,"label":425,"name":68,"priority":69,"publish_at":70,"scheduled_at":58,"status":71,"updated":72,"updated_by":15},[],{"en":68,"th":68},"c1ullelv877gga6","ep111-message-ordering-event-sequence",224,"ytezt4r7uzpy79y","2025-11-24 09:41:22.301Z","ระบบ WebSocket ที่มีผู้ใช้จำนวนมากอาจเจอปัญหาข้อความหลุดลำดับ (Out-of-Order). EP นี้สอนเทคนิคกำหนด Sequence ID, การจัดลำดับก่อน Broadcast, การ Sync ผ่าน Redis Pub\u002FSub และระบบ Recovery เพื่อให้ข้อความเรียงถูกต้อง 100% ในระดับ Production.","2026-06-07 06:43:31.554Z",{"alt":434,"cover_image_path":435,"created":436,"expand":437,"id":466,"published_at":467,"school_blog":462,"short_description":468,"title":434,"updated":469,"slug":463,"views":465},"EP.110 การทำ Auto-Scaling และ Load Balancing ขั้นสูง สำหรับ WebSocket Server","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F0s8pe3g2y0qas2l\u002Fcover_image_for_golang_the_series_ep_bjd5koqmts.ebSocketServers.webp","2026-03-04 08:45:22.302Z",{"keywords":438,"locale":456,"school_blog":457},[439,444,445,450,455],{"collectionId":12,"collectionName":13,"created":440,"created_by":15,"id":441,"name":442,"updated":443,"updated_by":15},"2026-03-04 08:45:21.423Z","li64irj457fco7n","WebSocket Production","2026-06-07 06:46:47.816Z",{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},{"collectionId":12,"collectionName":13,"created":446,"created_by":15,"id":447,"name":448,"updated":449,"updated_by":15},"2026-03-04 08:34:03.856Z","9dujh23qyko22y0","Load Balancing","2026-06-07 06:45:57.012Z",{"collectionId":12,"collectionName":13,"created":451,"created_by":15,"id":452,"name":453,"updated":454,"updated_by":15},"2026-03-04 08:45:22.045Z","dfxjlxr48oep97h","Auto-Scaling","2026-06-07 06:46:47.965Z",{"collectionId":12,"collectionName":13,"created":40,"created_by":15,"id":41,"name":42,"updated":43,"updated_by":15},{"code":45,"collectionId":46,"collectionName":47,"created":48,"flag":49,"id":50,"is_default":51,"label":52,"updated":53},{"category":55,"collectionId":56,"collectionName":57,"created":58,"expand":458,"id":462,"slug":463,"updated":464,"views":465},{"category":459},{"blogIds":460,"collectionId":62,"collectionName":63,"created":64,"created_by":15,"id":55,"image":65,"image_alt":58,"image_path":66,"label":461,"name":68,"priority":69,"publish_at":70,"scheduled_at":58,"status":71,"updated":72,"updated_by":15},[],{"en":68,"th":68},"n8v6ufz2p8bhb1f","websocket-auto-scaling-load-balancing","2026-06-21 06:01:08.791Z",250,"0s8pe3g2y0qas2l","2025-11-24 03:06:21.583Z","เรียนรู้การออกแบบ WebSocket Server ที่สามารถปรับขนาดได้อัตโนมัติ และกระจายโหลดอย่างมีประสิทธิภาพด้วย Kubernetes, Sticky Session และ Redis Pub\u002FSub เพื่อรองรับผู้ใช้หลักหมื่นคนพร้อมกัน","2026-06-07 06:43:31.668Z",{"alt":471,"cover_image_path":472,"created":473,"expand":474,"id":518,"published_at":519,"school_blog":514,"short_description":520,"title":471,"updated":521,"slug":515,"views":517},"ChatGPT Atlas คืออะไร? เปิดตัวเบราว์เซอร์ AI ตัวแรกจาก OpenAI ที่เปลี่ยนวิธีท่องเว็บตลอดกาล","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fvoi3jt0i9wd8l1v\u002Fwhat_is_chat_gpt_atlas_40aiw8flpz.webp","2026-03-04 08:45:27.958Z",{"keywords":475,"locale":501,"school_blog":502},[476,481,486,491,496],{"collectionId":12,"collectionName":13,"created":477,"created_by":15,"id":478,"name":479,"updated":480,"updated_by":15},"2026-03-04 08:45:24.247Z","qumyfjd00ukyzc5","Atlas","2026-06-07 06:46:48.129Z",{"collectionId":12,"collectionName":13,"created":482,"created_by":15,"id":483,"name":484,"updated":485,"updated_by":15},"2026-03-04 08:45:25.467Z","1tz3wejkhxews0x","AI Browser","2026-06-07 06:46:48.231Z",{"collectionId":12,"collectionName":13,"created":487,"created_by":15,"id":488,"name":489,"updated":490,"updated_by":15},"2026-03-04 08:45:25.998Z","otvtu2l6b7ra500","เบราว์เซอร์ AI","2026-06-07 06:46:48.552Z",{"collectionId":12,"collectionName":13,"created":492,"created_by":15,"id":493,"name":494,"updated":495,"updated_by":15},"2026-03-04 08:45:27.056Z","2uym5jyjlbrcyjp","OpenAI Atlas","2026-06-07 06:46:48.956Z",{"collectionId":12,"collectionName":13,"created":497,"created_by":15,"id":498,"name":499,"updated":500,"updated_by":15},"2026-03-04 08:45:27.721Z","pyp7qb8g6p56ich","ChatGPT Atlas","2026-06-07 06:46:49.357Z",{"code":45,"collectionId":46,"collectionName":47,"created":48,"flag":49,"id":50,"is_default":51,"label":52,"updated":53},{"category":503,"collectionId":56,"collectionName":57,"created":58,"expand":504,"id":514,"slug":515,"updated":516,"views":517},"spm4l1k5bgmhmmt",{"category":505},{"blogIds":506,"collectionId":62,"collectionName":63,"created":507,"created_by":15,"id":503,"image":508,"image_alt":58,"image_path":509,"label":510,"name":511,"priority":204,"publish_at":512,"scheduled_at":58,"status":71,"updated":513,"updated_by":15},[],"2026-03-04 08:31:18.590Z","50hyjr6os45_ayazwr5gq7.png","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fspm4l1k5bgmhmmt\u002F50hyjr6os45_ayazwr5gq7.png",{"en":511,"th":511},"Knowledge","2026-03-18 02:25:41.222Z","2026-06-07 06:45:02.533Z","7ks20fg76zrxq5e","chatgpt-atlas-ai-browser-openai","2026-05-25 10:30:38.973Z",245,"voi3jt0i9wd8l1v","2025-11-21 02:22:50.810Z","รู้จัก ChatGPT Atlas เบราว์เซอร์อัจฉริยะจาก OpenAI ที่รวม ChatGPT เข้ากับทุกแท็บ ช่วยสรุป เขียน และวิเคราะห์ข้อมูลได้แบบเรียลไทม์ พร้อมระบบความเป็นส่วนตัวที่ผู้ใช้ควบคุมได้เอง","2026-06-07 06:43:32.061Z",9,12,432,36]