[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"academy-blogs-th-11-12-Web%2525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252520Development-all-all-createdAt:desc-default":3},{"data":4,"page":517,"perPage":518,"totalItems":519,"totalPages":520},[5,75,122,171,208,245,282,335,373,414,451,488],{"alt":6,"cover_image_path":7,"created":8,"expand":9,"id":71,"published_at":72,"school_blog":67,"short_description":73,"title":6,"updated":74,"slug":68,"views":70},"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":10,"locale":39,"school_blog":49},[11,19,24,29,34],{"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:51.471Z","76qprkevbgfdps8","hlato0hav8vo8wm","Golang The Series","2026-06-07 06:46:40.040Z",{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"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":25,"created_by":15,"id":26,"name":27,"updated":28,"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":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},"2026-03-04 08:34:00.920Z","ecac9y661or1xka","WebSocket","2026-06-07 06:45:55.734Z",{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},"2026-03-04 08:20:11.547Z","ey3puyme01a9bsw","Go","2026-06-07 06:45:07.798Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},"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":50,"collectionId":51,"collectionName":52,"created":53,"expand":54,"id":67,"slug":68,"updated":69,"views":70},"wqxt7ag2gn7xcmk","pbc_2105096300","school_blogs","",{"category":55},{"blogIds":56,"collectionId":57,"collectionName":58,"created":59,"created_by":15,"id":50,"image":60,"image_alt":53,"image_path":61,"label":62,"name":17,"priority":63,"publish_at":64,"scheduled_at":53,"status":65,"updated":66,"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":17,"th":17},1,"2026-03-16 04:39:38.440Z","published","2026-06-07 06:45:03.856Z","c5vhepb3pkr5tot","go-advanced-multiroom-chat-system","2026-07-23 03:32:07.388Z",238,"031eo95zo2f02o0","2025-12-02 03:38:42.902Z","สร้างระบบแชทแบบหลายห้อง (Multi-room Chat) ที่รองรับผู้ใช้หลายกลุ่มพร้อมกัน พร้อมฟังก์ชันกระจายข้อความแบบเรียลไทม์ และเชื่อมต่อ Redis Pub\u002FSub เพื่อรองรับหลาย instance ได้จริงในระบบ production","2026-06-07 06:43:29.204Z",{"alt":76,"cover_image_path":77,"created":78,"expand":79,"id":118,"published_at":119,"school_blog":114,"short_description":120,"title":76,"updated":121,"slug":115,"views":117},"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":80,"locale":108,"school_blog":109},[81,86,91,96,97,98,103],{"collectionId":12,"collectionName":13,"created":82,"created_by":15,"id":83,"name":84,"updated":85,"updated_by":15},"2026-03-04 08:44:48.724Z","s6xhnfomy7n5ycp","WebSocket Server","2026-06-07 06:46:39.070Z",{"collectionId":12,"collectionName":13,"created":87,"created_by":15,"id":88,"name":89,"updated":90,"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":92,"created_by":15,"id":93,"name":94,"updated":95,"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":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},{"collectionId":12,"collectionName":13,"created":99,"created_by":15,"id":100,"name":101,"updated":102,"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":104,"created_by":15,"id":105,"name":106,"updated":107,"updated_by":15},"2026-03-04 08:45:14.176Z","90clm03jhn4xsnp","Notification","2026-06-07 06:46:46.208Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":50,"collectionId":51,"collectionName":52,"created":53,"expand":110,"id":114,"slug":115,"updated":116,"views":117},{"category":111},{"blogIds":112,"collectionId":57,"collectionName":58,"created":59,"created_by":15,"id":50,"image":60,"image_alt":53,"image_path":61,"label":113,"name":17,"priority":63,"publish_at":64,"scheduled_at":53,"status":65,"updated":66,"updated_by":15},[],{"en":17,"th":17},"8g70iqmnsdxbwpb","websocket-real-time-notification-ep112","2026-06-23 11:00:28.563Z",351,"wbl9d896ederjtt","2025-12-01 04:20:07.889Z","เรียนรู้วิธีสร้างระบบ Notification แบบเรียลไทม์ด้วย Go และ WebSocket พร้อมรองรับการขยายระบบด้วย Redis Pub\u002FSub เพื่อให้ผู้ใช้ได้รับการแจ้งเตือนทันทีเมื่อเกิด Event สำคัญ","2026-06-07 06:43:29.432Z",{"alt":123,"cover_image_path":124,"created":125,"expand":126,"id":167,"published_at":168,"school_blog":163,"short_description":169,"title":123,"updated":170,"slug":164,"views":166},"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":127,"locale":149,"school_blog":150},[128,133,138,143,144],{"collectionId":12,"collectionName":13,"created":129,"created_by":15,"id":130,"name":131,"updated":132,"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":134,"created_by":15,"id":135,"name":136,"updated":137,"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":139,"created_by":15,"id":140,"name":141,"updated":142,"updated_by":15},"2026-03-04 08:20:42.484Z","vslzz9nvv6n77cx","JavaScript","2026-06-07 06:45:10.888Z",{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":145,"created_by":15,"id":146,"name":147,"updated":148,"updated_by":15},"2026-03-04 08:24:48.143Z","dourw0uuydrrh1h","Concurrency","2026-06-07 06:45:12.740Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":151,"collectionId":51,"collectionName":52,"created":53,"expand":152,"id":163,"slug":164,"updated":165,"views":166},"hsa1afr8fcnd6qb",{"category":153},{"blogIds":154,"collectionId":57,"collectionName":58,"created":155,"created_by":15,"id":151,"image":156,"image_alt":53,"image_path":157,"label":158,"name":159,"priority":160,"publish_at":161,"scheduled_at":53,"status":65,"updated":162,"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":159,"th":159},"JS2GO",10,"2025-08-11 03:41:08.820Z","2026-06-07 06:45:02.240Z","hntkdnpnkznr05d","js2go-ep41-advanced-concurrency-patterns-go-vs-javascript","2026-07-12 07:33:27.112Z",221,"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":172,"cover_image_path":173,"created":174,"expand":175,"id":204,"published_at":205,"school_blog":200,"short_description":206,"title":172,"updated":207,"slug":201,"views":203},"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":176,"locale":194,"school_blog":195},[177,182,187,192,193],{"collectionId":12,"collectionName":13,"created":178,"created_by":15,"id":179,"name":180,"updated":181,"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":183,"created_by":15,"id":184,"name":185,"updated":186,"updated_by":15},"2026-03-04 08:45:19.280Z","2zphwe6a9vls84d","Benchmark","2026-06-07 06:46:47.160Z",{"collectionId":12,"collectionName":13,"created":188,"created_by":15,"id":189,"name":190,"updated":191,"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":139,"created_by":15,"id":140,"name":141,"updated":142,"updated_by":15},{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":151,"collectionId":51,"collectionName":52,"created":53,"expand":196,"id":200,"slug":201,"updated":202,"views":203},{"category":197},{"blogIds":198,"collectionId":57,"collectionName":58,"created":155,"created_by":15,"id":151,"image":156,"image_alt":53,"image_path":157,"label":199,"name":159,"priority":160,"publish_at":161,"scheduled_at":53,"status":65,"updated":162,"updated_by":15},[],{"en":159,"th":159},"ym4kynngu92kw5x","js2go-ep40-optimize-performance-go-vs-javascript","2026-07-04 02:02:50.399Z",231,"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":209,"cover_image_path":210,"created":211,"expand":212,"id":241,"published_at":242,"school_blog":237,"short_description":243,"title":209,"updated":244,"slug":238,"views":240},"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":213,"locale":231,"school_blog":232},[214,219,224,229,230],{"collectionId":12,"collectionName":13,"created":215,"created_by":15,"id":216,"name":217,"updated":218,"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":220,"created_by":15,"id":221,"name":222,"updated":223,"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":225,"created_by":15,"id":226,"name":227,"updated":228,"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":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":50,"collectionId":51,"collectionName":52,"created":53,"expand":233,"id":237,"slug":238,"updated":239,"views":240},{"category":234},{"blogIds":235,"collectionId":57,"collectionName":58,"created":59,"created_by":15,"id":50,"image":60,"image_alt":53,"image_path":61,"label":236,"name":17,"priority":63,"publish_at":64,"scheduled_at":53,"status":65,"updated":66,"updated_by":15},[],{"en":17,"th":17},"c1ullelv877gga6","ep111-message-ordering-event-sequence","2026-07-19 22:15:03.223Z",225,"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":246,"cover_image_path":247,"created":248,"expand":249,"id":278,"published_at":279,"school_blog":274,"short_description":280,"title":246,"updated":281,"slug":275,"views":277},"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":250,"locale":268,"school_blog":269},[251,256,257,262,267],{"collectionId":12,"collectionName":13,"created":252,"created_by":15,"id":253,"name":254,"updated":255,"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":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":258,"created_by":15,"id":259,"name":260,"updated":261,"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":263,"created_by":15,"id":264,"name":265,"updated":266,"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":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":50,"collectionId":51,"collectionName":52,"created":53,"expand":270,"id":274,"slug":275,"updated":276,"views":277},{"category":271},{"blogIds":272,"collectionId":57,"collectionName":58,"created":59,"created_by":15,"id":50,"image":60,"image_alt":53,"image_path":61,"label":273,"name":17,"priority":63,"publish_at":64,"scheduled_at":53,"status":65,"updated":66,"updated_by":15},[],{"en":17,"th":17},"n8v6ufz2p8bhb1f","websocket-auto-scaling-load-balancing","2026-07-16 02:06:36.273Z",252,"0s8pe3g2y0qas2l","2025-11-24 03:06:21.583Z","เรียนรู้การออกแบบ WebSocket Server ที่สามารถปรับขนาดได้อัตโนมัติ และกระจายโหลดอย่างมีประสิทธิภาพด้วย Kubernetes, Sticky Session และ Redis Pub\u002FSub เพื่อรองรับผู้ใช้หลักหมื่นคนพร้อมกัน","2026-06-07 06:43:31.668Z",{"alt":283,"cover_image_path":284,"created":285,"expand":286,"id":331,"published_at":332,"school_blog":327,"short_description":333,"title":283,"updated":334,"slug":328,"views":330},"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":287,"locale":313,"school_blog":314},[288,293,298,303,308],{"collectionId":12,"collectionName":13,"created":289,"created_by":15,"id":290,"name":291,"updated":292,"updated_by":15},"2026-03-04 08:45:24.247Z","qumyfjd00ukyzc5","Atlas","2026-06-07 06:46:48.129Z",{"collectionId":12,"collectionName":13,"created":294,"created_by":15,"id":295,"name":296,"updated":297,"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":299,"created_by":15,"id":300,"name":301,"updated":302,"updated_by":15},"2026-03-04 08:45:25.998Z","otvtu2l6b7ra500","เบราว์เซอร์ AI","2026-06-07 06:46:48.552Z",{"collectionId":12,"collectionName":13,"created":304,"created_by":15,"id":305,"name":306,"updated":307,"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":309,"created_by":15,"id":310,"name":311,"updated":312,"updated_by":15},"2026-03-04 08:45:27.721Z","pyp7qb8g6p56ich","ChatGPT Atlas","2026-06-07 06:46:49.357Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":315,"collectionId":51,"collectionName":52,"created":53,"expand":316,"id":327,"slug":328,"updated":329,"views":330},"spm4l1k5bgmhmmt",{"category":317},{"blogIds":318,"collectionId":57,"collectionName":58,"created":319,"created_by":15,"id":315,"image":320,"image_alt":53,"image_path":321,"label":322,"name":323,"priority":324,"publish_at":325,"scheduled_at":53,"status":65,"updated":326,"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":323,"th":323},"Knowledge",0,"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",{"alt":336,"cover_image_path":337,"created":338,"expand":339,"id":369,"published_at":370,"school_blog":365,"short_description":371,"title":336,"updated":372,"slug":366,"views":368},"JS2GO EP.39 การใช้ Channels และ Pipelines ใน Go สำหรับ Data Processing","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F1rm9mb65vfkuus7\u002F77_11zon_tqln3so5ar.webp","2026-03-04 08:45:29.773Z",{"keywords":340,"locale":359,"school_blog":360},[341,346,347,352,353,354],{"collectionId":12,"collectionName":13,"created":342,"created_by":15,"id":343,"name":344,"updated":345,"updated_by":15},"2026-03-04 08:45:27.349Z","n1nlaxsxjy2673f","Data Processing","2026-06-07 06:46:49.227Z",{"collectionId":12,"collectionName":13,"created":145,"created_by":15,"id":146,"name":147,"updated":148,"updated_by":15},{"collectionId":12,"collectionName":13,"created":348,"created_by":15,"id":349,"name":350,"updated":351,"updated_by":15},"2026-03-04 08:45:26.685Z","cipipihaumk5zpt","Pipelines","2026-06-07 06:46:48.793Z",{"collectionId":12,"collectionName":13,"created":139,"created_by":15,"id":140,"name":141,"updated":142,"updated_by":15},{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":355,"created_by":15,"id":356,"name":357,"updated":358,"updated_by":15},"2026-03-04 08:33:55.714Z","yxs12a8pjduka2m","Channels","2026-06-07 06:45:53.703Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":151,"collectionId":51,"collectionName":52,"created":53,"expand":361,"id":365,"slug":366,"updated":367,"views":368},{"category":362},{"blogIds":363,"collectionId":57,"collectionName":58,"created":155,"created_by":15,"id":151,"image":156,"image_alt":53,"image_path":157,"label":364,"name":159,"priority":160,"publish_at":161,"scheduled_at":53,"status":65,"updated":162,"updated_by":15},[],{"en":159,"th":159},"s28wwjv2p4jxfgu","js2go-ep39-channels-and-pipelines-in-go-for-data-processing","2026-06-27 17:50:28.595Z",235,"1rm9mb65vfkuus7","2025-11-12 02:36:58.760Z","เรียนรู้การใช้ Channels และ Pipelines ใน Go เพื่อสร้างระบบประมวลผลข้อมูลแบบ Parallel และ Asynchronous อย่างมีประสิทธิภาพ พร้อมตัวอย่างโค้ดจริง การเปรียบเทียบกับ JavaScript และแนวทางการออกแบบ Pipeline สำหรับงาน Data Processing ในระดับ Production","2026-06-07 06:43:32.486Z",{"alt":374,"cover_image_path":375,"created":376,"expand":377,"id":410,"published_at":411,"school_blog":406,"short_description":412,"title":374,"updated":413,"slug":407,"views":409},"JS2GO EP.38 การจัดการ Buffer และ Stream ใน Node.js และ Go","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fnsqblkgbr5lyuql\u002F75_11zon_p7murcdbvq.webp","2026-03-04 08:45:30.996Z",{"keywords":378,"locale":400,"school_blog":401},[379,384,385,390,395],{"collectionId":12,"collectionName":13,"created":380,"created_by":15,"id":381,"name":382,"updated":383,"updated_by":15},"2026-03-04 08:20:14.253Z","ah6lvy4x8qe08l5","Golang","2026-06-07 06:45:08.193Z",{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":386,"created_by":15,"id":387,"name":388,"updated":389,"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":391,"created_by":15,"id":392,"name":393,"updated":394,"updated_by":15},"2026-03-04 08:45:29.064Z","ppd9qfd57kr4d9v","Stream","2026-06-07 06:46:49.492Z",{"collectionId":12,"collectionName":13,"created":396,"created_by":15,"id":397,"name":398,"updated":399,"updated_by":15},"2026-03-04 08:45:29.466Z","ikxxjlf4gp9demr","Buffer","2026-06-07 06:46:49.712Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":151,"collectionId":51,"collectionName":52,"created":53,"expand":402,"id":406,"slug":407,"updated":408,"views":409},{"category":403},{"blogIds":404,"collectionId":57,"collectionName":58,"created":155,"created_by":15,"id":151,"image":156,"image_alt":53,"image_path":157,"label":405,"name":159,"priority":160,"publish_at":161,"scheduled_at":53,"status":65,"updated":162,"updated_by":15},[],{"en":159,"th":159},"pl5erhc703mzokp","js2go-ep38-buffer-and-stream-in-nodejs-and-go","2026-07-12 00:57:15.140Z",234,"nsqblkgbr5lyuql","2025-11-12 02:36:50.991Z","เรียนรู้แนวทางการจัดการข้อมูลขนาดใหญ่ผ่าน Buffer และ Stream ทั้งใน Node.js และ Go เพื่อให้ระบบทำงานรวดเร็ว ใช้หน่วยความจำอย่างมีประสิทธิภาพ พร้อมตัวอย่างโค้ดจริงและแนวทางใช้งานใน Production","2026-06-07 06:43:32.739Z",{"alt":415,"cover_image_path":416,"created":417,"expand":418,"id":447,"published_at":448,"school_blog":443,"short_description":449,"title":415,"updated":450,"slug":444,"views":446},"JS2GO EP.37 การใช้ Recursion และ Iteration ใน JavaScript และ Go","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fnp98njk711u28jh\u002F73_11zon_e3x83hj33c.webp","2026-03-04 08:45:32.896Z",{"keywords":419,"locale":437,"school_blog":438},[420,424,425,426,427,432],{"collectionId":12,"collectionName":13,"created":421,"created_by":15,"id":422,"name":159,"updated":423,"updated_by":15},"2026-03-04 08:45:30.765Z","nayuhpre9emd5xw","2026-06-07 06:46:49.847Z",{"collectionId":12,"collectionName":13,"created":380,"created_by":15,"id":381,"name":382,"updated":383,"updated_by":15},{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":139,"created_by":15,"id":140,"name":141,"updated":142,"updated_by":15},{"collectionId":12,"collectionName":13,"created":428,"created_by":15,"id":429,"name":430,"updated":431,"updated_by":15},"2026-03-04 08:45:31.134Z","erv835t5leo90qz","Iteration","2026-06-07 06:46:49.923Z",{"collectionId":12,"collectionName":13,"created":433,"created_by":15,"id":434,"name":435,"updated":436,"updated_by":15},"2026-03-04 08:45:31.539Z","thoynmyxpcmdicf","Recursion","2026-06-07 06:46:50.081Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":151,"collectionId":51,"collectionName":52,"created":53,"expand":439,"id":443,"slug":444,"updated":445,"views":446},{"category":440},{"blogIds":441,"collectionId":57,"collectionName":58,"created":155,"created_by":15,"id":151,"image":156,"image_alt":53,"image_path":157,"label":442,"name":159,"priority":160,"publish_at":161,"scheduled_at":53,"status":65,"updated":162,"updated_by":15},[],{"en":159,"th":159},"37rbeb1gdzv1ezc","js2go-ep37-recursion-vs-iteration-in-javascript-and-go","2026-07-05 19:12:12.086Z",236,"np98njk711u28jh","2025-11-12 02:36:45.781Z","เรียนรู้ความแตกต่างระหว่างการเขียนโค้ดแบบ Recursion (การเรียกซ้ำ) และ Iteration (การวนซ้ำ) พร้อมตัวอย่างโค้ดจริงใน JavaScript และ Go เพื่อเปรียบเทียบความเร็ว การใช้หน่วยความจำ และแนวทางเลือกใช้ในระบบจริง","2026-06-07 06:43:33.198Z",{"alt":452,"cover_image_path":453,"created":454,"expand":455,"id":484,"published_at":485,"school_blog":480,"short_description":486,"title":452,"updated":487,"slug":481,"views":483},"JS2GO EP.36 การทำ Searching Algorithms ใน Go และ JavaScript","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fkc2for0fr30jztz\u002F71_11zon_fhhdh9rncf.webp","2026-03-04 08:45:33.253Z",{"keywords":456,"locale":474,"school_blog":475},[457,458,459,464,469],{"collectionId":12,"collectionName":13,"created":139,"created_by":15,"id":140,"name":141,"updated":142,"updated_by":15},{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":460,"created_by":15,"id":461,"name":462,"updated":463,"updated_by":15},"2026-03-04 08:45:32.020Z","8vrqzeheyjmdnla","Binary Search","2026-06-07 06:46:50.251Z",{"collectionId":12,"collectionName":13,"created":465,"created_by":15,"id":466,"name":467,"updated":468,"updated_by":15},"2026-03-04 08:45:32.242Z","qrrtdp2now459ki","Linear Search","2026-06-07 06:46:50.368Z",{"collectionId":12,"collectionName":13,"created":470,"created_by":15,"id":471,"name":472,"updated":473,"updated_by":15},"2026-03-04 08:34:57.930Z","3j6u3nyhnmlp6ld","Searching Algorithms","2026-06-07 06:46:21.076Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":151,"collectionId":51,"collectionName":52,"created":53,"expand":476,"id":480,"slug":481,"updated":482,"views":483},{"category":477},{"blogIds":478,"collectionId":57,"collectionName":58,"created":155,"created_by":15,"id":151,"image":156,"image_alt":53,"image_path":157,"label":479,"name":159,"priority":160,"publish_at":161,"scheduled_at":53,"status":65,"updated":162,"updated_by":15},[],{"en":159,"th":159},"zwxfag96iy33ciz","js2go-ep36-searching-algorithms-in-go-and-javascript","2026-06-27 17:50:25.125Z",217,"kc2for0fr30jztz","2025-11-12 02:36:39.446Z","เรียนรู้เทคนิคการค้นหาข้อมูลอย่างมีประสิทธิภาพผ่าน 3 อัลกอริทึมสำคัญ — Linear Search, Binary Search และ Map-based Lookup","2026-06-07 06:43:33.440Z",{"alt":489,"cover_image_path":490,"created":491,"expand":492,"id":513,"published_at":514,"school_blog":509,"short_description":515,"title":489,"updated":516,"slug":510,"views":512},"EP.109 การปรับปรุง Performance สำหรับ WebSocket บนมือถือ","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fketdslo0vzzv5b6\u002F189_11zon_cvsstgpwm1.webp","2026-03-04 08:45:34.928Z",{"keywords":493,"locale":503,"school_blog":504},[494,499,500,501,502],{"collectionId":12,"collectionName":13,"created":495,"created_by":15,"id":496,"name":497,"updated":498,"updated_by":15},"2026-03-04 08:45:34.193Z","6ogs62iwr48p5xn","WebSocket บนมือถือ","2026-06-07 06:46:50.751Z",{"collectionId":12,"collectionName":13,"created":380,"created_by":15,"id":381,"name":382,"updated":383,"updated_by":15},{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":82,"created_by":15,"id":83,"name":84,"updated":85,"updated_by":15},{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":50,"collectionId":51,"collectionName":52,"created":53,"expand":505,"id":509,"slug":510,"updated":511,"views":512},{"category":506},{"blogIds":507,"collectionId":57,"collectionName":58,"created":59,"created_by":15,"id":50,"image":60,"image_alt":53,"image_path":61,"label":508,"name":17,"priority":63,"publish_at":64,"scheduled_at":53,"status":65,"updated":66,"updated_by":15},[],{"en":17,"th":17},"ctvrep1frbjn8eq","websocket-mobile-optimization","2026-05-27 16:11:06.638Z",243,"ketdslo0vzzv5b6","2025-11-10 09:14:57.443Z","เรียนรู้เทคนิคปรับปรุง WebSocket Server ให้ทำงานได้อย่างเสถียรและประหยัดพลังงานบนอุปกรณ์พกพา พร้อมโค้ดตัวอย่างระดับ Production เช่น การตั้ง Timeout, การ reconnect อัตโนมัติ และการจัดการ network switching","2026-06-07 06:43:33.646Z",11,12,451,38]