[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"academy-blogs-th-10-12-Tailwind%252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252520CSS-all-all-createdAt:desc-default":3},{"data":4,"page":172,"perPage":526,"totalItems":527,"totalPages":528},[5,76,129,183,224,261,298,331,370,402,445,493],{"alt":6,"cover_image_path":7,"created":8,"expand":9,"id":72,"published_at":73,"school_blog":68,"short_description":74,"title":6,"updated":75,"slug":69,"views":71},"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":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:45:21.423Z","76qprkevbgfdps8","li64irj457fco7n","WebSocket Production","2026-06-07 06:46:47.816Z",{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},"2026-03-04 08:20:11.547Z","ey3puyme01a9bsw","Go","2026-06-07 06:45:07.798Z",{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"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":30,"created_by":15,"id":31,"name":32,"updated":33,"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":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},"2026-03-04 08:34:00.920Z","ecac9y661or1xka","WebSocket","2026-06-07 06:45:55.734Z",{"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":68,"slug":69,"updated":70,"views":71},"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":63,"priority":64,"publish_at":65,"scheduled_at":53,"status":66,"updated":67,"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":63,"th":63},"Golang The Series",1,"2026-03-16 04:39:38.440Z","published","2026-06-07 06:45:03.856Z","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":77,"cover_image_path":78,"created":79,"expand":80,"id":125,"published_at":126,"school_blog":121,"short_description":127,"title":77,"updated":128,"slug":122,"views":124},"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":81,"locale":107,"school_blog":108},[82,87,92,97,102],{"collectionId":12,"collectionName":13,"created":83,"created_by":15,"id":84,"name":85,"updated":86,"updated_by":15},"2026-03-04 08:45:24.247Z","qumyfjd00ukyzc5","Atlas","2026-06-07 06:46:48.129Z",{"collectionId":12,"collectionName":13,"created":88,"created_by":15,"id":89,"name":90,"updated":91,"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":93,"created_by":15,"id":94,"name":95,"updated":96,"updated_by":15},"2026-03-04 08:45:25.998Z","otvtu2l6b7ra500","เบราว์เซอร์ AI","2026-06-07 06:46:48.552Z",{"collectionId":12,"collectionName":13,"created":98,"created_by":15,"id":99,"name":100,"updated":101,"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":103,"created_by":15,"id":104,"name":105,"updated":106,"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":109,"collectionId":51,"collectionName":52,"created":53,"expand":110,"id":121,"slug":122,"updated":123,"views":124},"spm4l1k5bgmhmmt",{"category":111},{"blogIds":112,"collectionId":57,"collectionName":58,"created":113,"created_by":15,"id":109,"image":114,"image_alt":53,"image_path":115,"label":116,"name":117,"priority":118,"publish_at":119,"scheduled_at":53,"status":66,"updated":120,"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":117,"th":117},"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":130,"cover_image_path":131,"created":132,"expand":133,"id":179,"published_at":180,"school_blog":175,"short_description":181,"title":130,"updated":182,"slug":176,"views":178},"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":134,"locale":161,"school_blog":162},[135,140,145,150,155,156],{"collectionId":12,"collectionName":13,"created":136,"created_by":15,"id":137,"name":138,"updated":139,"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":141,"created_by":15,"id":142,"name":143,"updated":144,"updated_by":15},"2026-03-04 08:24:48.143Z","dourw0uuydrrh1h","Concurrency","2026-06-07 06:45:12.740Z",{"collectionId":12,"collectionName":13,"created":146,"created_by":15,"id":147,"name":148,"updated":149,"updated_by":15},"2026-03-04 08:45:26.685Z","cipipihaumk5zpt","Pipelines","2026-06-07 06:46:48.793Z",{"collectionId":12,"collectionName":13,"created":151,"created_by":15,"id":152,"name":153,"updated":154,"updated_by":15},"2026-03-04 08:20:42.484Z","vslzz9nvv6n77cx","JavaScript","2026-06-07 06:45:10.888Z",{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},{"collectionId":12,"collectionName":13,"created":157,"created_by":15,"id":158,"name":159,"updated":160,"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":163,"collectionId":51,"collectionName":52,"created":53,"expand":164,"id":175,"slug":176,"updated":177,"views":178},"hsa1afr8fcnd6qb",{"category":165},{"blogIds":166,"collectionId":57,"collectionName":58,"created":167,"created_by":15,"id":163,"image":168,"image_alt":53,"image_path":169,"label":170,"name":171,"priority":172,"publish_at":173,"scheduled_at":53,"status":66,"updated":174,"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":171,"th":171},"JS2GO",10,"2025-08-11 03:41:08.820Z","2026-06-07 06:45:02.240Z","s28wwjv2p4jxfgu","js2go-ep39-channels-and-pipelines-in-go-for-data-processing","2026-06-17 22:24:36.945Z",234,"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":184,"cover_image_path":185,"created":186,"expand":187,"id":220,"published_at":221,"school_blog":216,"short_description":222,"title":184,"updated":223,"slug":217,"views":219},"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":188,"locale":210,"school_blog":211},[189,194,195,200,205],{"collectionId":12,"collectionName":13,"created":190,"created_by":15,"id":191,"name":192,"updated":193,"updated_by":15},"2026-03-04 08:20:14.253Z","ah6lvy4x8qe08l5","Golang","2026-06-07 06:45:08.193Z",{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},{"collectionId":12,"collectionName":13,"created":196,"created_by":15,"id":197,"name":198,"updated":199,"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":201,"created_by":15,"id":202,"name":203,"updated":204,"updated_by":15},"2026-03-04 08:45:29.064Z","ppd9qfd57kr4d9v","Stream","2026-06-07 06:46:49.492Z",{"collectionId":12,"collectionName":13,"created":206,"created_by":15,"id":207,"name":208,"updated":209,"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":163,"collectionId":51,"collectionName":52,"created":53,"expand":212,"id":216,"slug":217,"updated":218,"views":219},{"category":213},{"blogIds":214,"collectionId":57,"collectionName":58,"created":167,"created_by":15,"id":163,"image":168,"image_alt":53,"image_path":169,"label":215,"name":171,"priority":172,"publish_at":173,"scheduled_at":53,"status":66,"updated":174,"updated_by":15},[],{"en":171,"th":171},"pl5erhc703mzokp","js2go-ep38-buffer-and-stream-in-nodejs-and-go","2026-06-02 07:37:22.104Z",231,"nsqblkgbr5lyuql","2025-11-12 02:36:50.991Z","เรียนรู้แนวทางการจัดการข้อมูลขนาดใหญ่ผ่าน Buffer และ Stream ทั้งใน Node.js และ Go เพื่อให้ระบบทำงานรวดเร็ว ใช้หน่วยความจำอย่างมีประสิทธิภาพ พร้อมตัวอย่างโค้ดจริงและแนวทางใช้งานใน Production","2026-06-07 06:43:32.739Z",{"alt":225,"cover_image_path":226,"created":227,"expand":228,"id":257,"published_at":258,"school_blog":253,"short_description":259,"title":225,"updated":260,"slug":254,"views":256},"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":229,"locale":247,"school_blog":248},[230,234,235,236,237,242],{"collectionId":12,"collectionName":13,"created":231,"created_by":15,"id":232,"name":171,"updated":233,"updated_by":15},"2026-03-04 08:45:30.765Z","nayuhpre9emd5xw","2026-06-07 06:46:49.847Z",{"collectionId":12,"collectionName":13,"created":190,"created_by":15,"id":191,"name":192,"updated":193,"updated_by":15},{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},{"collectionId":12,"collectionName":13,"created":151,"created_by":15,"id":152,"name":153,"updated":154,"updated_by":15},{"collectionId":12,"collectionName":13,"created":238,"created_by":15,"id":239,"name":240,"updated":241,"updated_by":15},"2026-03-04 08:45:31.134Z","erv835t5leo90qz","Iteration","2026-06-07 06:46:49.923Z",{"collectionId":12,"collectionName":13,"created":243,"created_by":15,"id":244,"name":245,"updated":246,"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":163,"collectionId":51,"collectionName":52,"created":53,"expand":249,"id":253,"slug":254,"updated":255,"views":256},{"category":250},{"blogIds":251,"collectionId":57,"collectionName":58,"created":167,"created_by":15,"id":163,"image":168,"image_alt":53,"image_path":169,"label":252,"name":171,"priority":172,"publish_at":173,"scheduled_at":53,"status":66,"updated":174,"updated_by":15},[],{"en":171,"th":171},"37rbeb1gdzv1ezc","js2go-ep37-recursion-vs-iteration-in-javascript-and-go","2026-06-13 21:51:07.309Z",233,"np98njk711u28jh","2025-11-12 02:36:45.781Z","เรียนรู้ความแตกต่างระหว่างการเขียนโค้ดแบบ Recursion (การเรียกซ้ำ) และ Iteration (การวนซ้ำ) พร้อมตัวอย่างโค้ดจริงใน JavaScript และ Go เพื่อเปรียบเทียบความเร็ว การใช้หน่วยความจำ และแนวทางเลือกใช้ในระบบจริง","2026-06-07 06:43:33.198Z",{"alt":262,"cover_image_path":263,"created":264,"expand":265,"id":294,"published_at":295,"school_blog":290,"short_description":296,"title":262,"updated":297,"slug":291,"views":293},"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":266,"locale":284,"school_blog":285},[267,268,269,274,279],{"collectionId":12,"collectionName":13,"created":151,"created_by":15,"id":152,"name":153,"updated":154,"updated_by":15},{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},{"collectionId":12,"collectionName":13,"created":270,"created_by":15,"id":271,"name":272,"updated":273,"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":275,"created_by":15,"id":276,"name":277,"updated":278,"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":280,"created_by":15,"id":281,"name":282,"updated":283,"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":163,"collectionId":51,"collectionName":52,"created":53,"expand":286,"id":290,"slug":291,"updated":292,"views":293},{"category":287},{"blogIds":288,"collectionId":57,"collectionName":58,"created":167,"created_by":15,"id":163,"image":168,"image_alt":53,"image_path":169,"label":289,"name":171,"priority":172,"publish_at":173,"scheduled_at":53,"status":66,"updated":174,"updated_by":15},[],{"en":171,"th":171},"zwxfag96iy33ciz","js2go-ep36-searching-algorithms-in-go-and-javascript","2026-06-22 17:05:52.150Z",216,"kc2for0fr30jztz","2025-11-12 02:36:39.446Z","เรียนรู้เทคนิคการค้นหาข้อมูลอย่างมีประสิทธิภาพผ่าน 3 อัลกอริทึมสำคัญ — Linear Search, Binary Search และ Map-based Lookup","2026-06-07 06:43:33.440Z",{"alt":299,"cover_image_path":300,"created":301,"expand":302,"id":327,"published_at":328,"school_blog":323,"short_description":329,"title":299,"updated":330,"slug":324,"views":326},"EP.109 การปรับปรุง Performance สำหรับ WebSocket บนมือถือ","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fketdslo0vzzv5b6\u002F189_11zon_cvsstgpwm1.webp","2026-03-04 08:45:34.928Z",{"keywords":303,"locale":317,"school_blog":318},[304,309,310,311,316],{"collectionId":12,"collectionName":13,"created":305,"created_by":15,"id":306,"name":307,"updated":308,"updated_by":15},"2026-03-04 08:45:34.193Z","6ogs62iwr48p5xn","WebSocket บนมือถือ","2026-06-07 06:46:50.751Z",{"collectionId":12,"collectionName":13,"created":190,"created_by":15,"id":191,"name":192,"updated":193,"updated_by":15},{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"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:44:48.724Z","s6xhnfomy7n5ycp","WebSocket Server","2026-06-07 06:46:39.070Z",{"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":50,"collectionId":51,"collectionName":52,"created":53,"expand":319,"id":323,"slug":324,"updated":325,"views":326},{"category":320},{"blogIds":321,"collectionId":57,"collectionName":58,"created":59,"created_by":15,"id":50,"image":60,"image_alt":53,"image_path":61,"label":322,"name":63,"priority":64,"publish_at":65,"scheduled_at":53,"status":66,"updated":67,"updated_by":15},[],{"en":63,"th":63},"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",{"alt":332,"cover_image_path":333,"created":334,"expand":335,"id":366,"published_at":367,"school_blog":362,"short_description":368,"title":332,"updated":369,"slug":363,"views":365},"EP.108 การจัดการ Timeout และ Connection Cleanup แบบ Advanced","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F29obs9yzyu0qjp5\u002F187_11zon_jcx1669axb.webp","2026-03-04 08:45:36.600Z",{"keywords":336,"locale":356,"school_blog":357},[337,342,343,348,353,354,355],{"collectionId":12,"collectionName":13,"created":338,"created_by":15,"id":339,"name":340,"updated":341,"updated_by":15},"2026-03-04 08:44:47.385Z","li4cs2v3atd0wds","Production","2026-06-07 06:46:38.822Z",{"collectionId":12,"collectionName":13,"created":312,"created_by":15,"id":313,"name":314,"updated":315,"updated_by":15},{"collectionId":12,"collectionName":13,"created":344,"created_by":15,"id":345,"name":346,"updated":347,"updated_by":15},"2026-03-04 08:45:35.697Z","14mxfvvebe39f82","Cleanup","2026-06-07 06:46:51.481Z",{"collectionId":12,"collectionName":13,"created":349,"created_by":15,"id":350,"name":351,"updated":352,"updated_by":15},"2026-03-04 08:45:35.177Z","ljqmsdx1e0bcmav","Timeout","2026-06-07 06:46:51.146Z",{"collectionId":12,"collectionName":13,"created":190,"created_by":15,"id":191,"name":192,"updated":193,"updated_by":15},{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"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":50,"collectionId":51,"collectionName":52,"created":53,"expand":358,"id":362,"slug":363,"updated":364,"views":365},{"category":359},{"blogIds":360,"collectionId":57,"collectionName":58,"created":59,"created_by":15,"id":50,"image":60,"image_alt":53,"image_path":61,"label":361,"name":63,"priority":64,"publish_at":65,"scheduled_at":53,"status":66,"updated":67,"updated_by":15},[],{"en":63,"th":63},"l3cnyp1es5143k8","ep108-timeout-connection-cleanup-websocket-golang","2026-06-10 02:08:14.150Z",229,"29obs9yzyu0qjp5","2025-11-10 09:04:40.562Z","เรียนรู้วิธีจัดการ WebSocket ที่หลุดหรือค้างด้วยเทคนิค Timeout และ Connection Cleanup เพื่อให้ระบบของคุณทำงานได้เสถียรและประหยัด resource มากที่สุด พร้อมตัวอย่างโค้ด Go ที่ใช้ได้จริงใน Production","2026-06-07 06:43:33.930Z",{"alt":371,"cover_image_path":372,"created":373,"expand":374,"id":398,"published_at":399,"school_blog":394,"short_description":400,"title":371,"updated":401,"slug":395,"views":397},"EP.107 การทำ Profiling และ Benchmark WebSocket Server","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fforovlt64om1dpv\u002F185_11zon_d8gvv4sv1g.webp","2026-03-04 08:45:37.532Z",{"keywords":375,"locale":388,"school_blog":389},[376,377,382,387],{"collectionId":12,"collectionName":13,"created":190,"created_by":15,"id":191,"name":192,"updated":193,"updated_by":15},{"collectionId":12,"collectionName":13,"created":378,"created_by":15,"id":379,"name":380,"updated":381,"updated_by":15},"2026-03-04 08:45:19.280Z","2zphwe6a9vls84d","Benchmark","2026-06-07 06:46:47.160Z",{"collectionId":12,"collectionName":13,"created":383,"created_by":15,"id":384,"name":385,"updated":386,"updated_by":15},"2026-03-04 08:45:37.043Z","wyzirss3g26xgv6","Profiling","2026-06-07 06:46:51.655Z",{"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":50,"collectionId":51,"collectionName":52,"created":53,"expand":390,"id":394,"slug":395,"updated":396,"views":397},{"category":391},{"blogIds":392,"collectionId":57,"collectionName":58,"created":59,"created_by":15,"id":50,"image":60,"image_alt":53,"image_path":61,"label":393,"name":63,"priority":64,"publish_at":65,"scheduled_at":53,"status":66,"updated":67,"updated_by":15},[],{"en":63,"th":63},"q4ahsx2qt6gr1e8","websocket-server-profiling-benchmark","2026-05-13 11:34:52.776Z",220,"forovlt64om1dpv","2025-11-10 09:02:53.837Z","เรียนรู้วิธีใช้ pprof, wrk และ hey เพื่อวัดความเร็ว ความเสถียร และประสิทธิภาพของ WebSocket Server พร้อมแนวทางปรับแต่งระบบสำหรับการใช้งานจริงใน Production","2026-06-07 06:43:34.305Z",{"alt":403,"cover_image_path":404,"created":405,"expand":406,"id":441,"published_at":442,"school_blog":437,"short_description":443,"title":403,"updated":444,"slug":438,"views":440},"EP.106 Monitoring & Metrics สำหรับ WebSocket Production","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fd3dzc93dkn7db6o\u002F183_11zon_t6oz4uy2n8.webp","2026-03-04 08:45:39.352Z",{"keywords":407,"locale":431,"school_blog":432},[408,413,414,415,420,425,430],{"collectionId":12,"collectionName":13,"created":409,"created_by":15,"id":410,"name":411,"updated":412,"updated_by":15},"2026-03-04 08:45:37.661Z","xjf08drjt5em75b","Metrics","2026-06-07 06:46:51.819Z",{"collectionId":12,"collectionName":13,"created":338,"created_by":15,"id":339,"name":340,"updated":341,"updated_by":15},{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},{"collectionId":12,"collectionName":13,"created":416,"created_by":15,"id":417,"name":418,"updated":419,"updated_by":15},"2026-03-04 08:45:37.995Z","1v2heky8yo3cwww","Grafana","2026-06-07 06:46:51.984Z",{"collectionId":12,"collectionName":13,"created":421,"created_by":15,"id":422,"name":423,"updated":424,"updated_by":15},"2026-03-04 08:45:38.382Z","8uz7io97gj0jusq","Prometheus","2026-06-07 06:46:52.110Z",{"collectionId":12,"collectionName":13,"created":426,"created_by":15,"id":427,"name":428,"updated":429,"updated_by":15},"2026-03-04 08:44:34.571Z","fiybaq65m7oymtd","Monitoring","2026-06-07 06:46:35.275Z",{"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":50,"collectionId":51,"collectionName":52,"created":53,"expand":433,"id":437,"slug":438,"updated":439,"views":440},{"category":434},{"blogIds":435,"collectionId":57,"collectionName":58,"created":59,"created_by":15,"id":50,"image":60,"image_alt":53,"image_path":61,"label":436,"name":63,"priority":64,"publish_at":65,"scheduled_at":53,"status":66,"updated":67,"updated_by":15},[],{"en":63,"th":63},"42pwzlod5lq9vxp","websocket-monitoring-metrics-production","2026-05-27 03:50:07.281Z",230,"d3dzc93dkn7db6o","2025-11-10 02:39:31.621Z","เมื่อ WebSocket Server เข้าสู่ Production แค่ log ไม่พอ! มาเรียนรู้การใช้ Prometheus และ Grafana เพื่อตรวจสอบสุขภาพระบบแบบ real-time พร้อมตัวอย่างโค้ดจริงในภาษา Go","2026-06-07 06:43:34.755Z",{"alt":446,"cover_image_path":447,"created":448,"expand":449,"id":489,"published_at":490,"school_blog":485,"short_description":491,"title":446,"updated":492,"slug":486,"views":488},"JS2GO EP.35 การทำ Sorting Algorithms ใน JavaScript และ Go","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Ff2u2doeg3r1toxm\u002F69_11zon_689d6syhf9.webp","2026-03-04 08:45:40.590Z",{"keywords":450,"locale":479,"school_blog":480},[451,456,461,466,471,476,477,478],{"collectionId":12,"collectionName":13,"created":452,"created_by":15,"id":453,"name":454,"updated":455,"updated_by":15},"2026-03-04 08:45:39.965Z","b9c614ysjg0x349","Sorting","2026-06-07 06:46:52.683Z",{"collectionId":12,"collectionName":13,"created":457,"created_by":15,"id":458,"name":459,"updated":460,"updated_by":15},"2026-03-04 08:35:05.133Z","ydn3q6brn8wh2st","Algorithm","2026-06-07 06:46:24.254Z",{"collectionId":12,"collectionName":13,"created":462,"created_by":15,"id":463,"name":464,"updated":465,"updated_by":15},"2026-03-04 08:45:39.715Z","fjjhdcqsies69y2","Bubble Sort","2026-06-07 06:46:52.547Z",{"collectionId":12,"collectionName":13,"created":467,"created_by":15,"id":468,"name":469,"updated":470,"updated_by":15},"2026-03-04 08:45:39.321Z","jb1nbj4tkoyx89d","Merge Sort","2026-06-07 06:46:52.470Z",{"collectionId":12,"collectionName":13,"created":472,"created_by":15,"id":473,"name":474,"updated":475,"updated_by":15},"2026-03-04 08:45:39.089Z","4p14lr9icx6fqm2","Quick Sort","2026-06-07 06:46:52.334Z",{"collectionId":12,"collectionName":13,"created":151,"created_by":15,"id":152,"name":153,"updated":154,"updated_by":15},{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},{"collectionId":12,"collectionName":13,"created":231,"created_by":15,"id":232,"name":171,"updated":233,"updated_by":15},{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":163,"collectionId":51,"collectionName":52,"created":53,"expand":481,"id":485,"slug":486,"updated":487,"views":488},{"category":482},{"blogIds":483,"collectionId":57,"collectionName":58,"created":167,"created_by":15,"id":163,"image":168,"image_alt":53,"image_path":169,"label":484,"name":171,"priority":172,"publish_at":173,"scheduled_at":53,"status":66,"updated":174,"updated_by":15},[],{"en":171,"th":171},"y7bryg1t410zd6w","js2go-ep35-sorting-algorithms-in-javascript-and-go","2026-05-26 01:43:14.003Z",219,"f2u2doeg3r1toxm","2025-11-03 01:47:58.354Z","เรียนรู้และเปรียบเทียบการทำงานของอัลกอริทึมจัดเรียงยอดนิยมอย่าง Bubble Sort, Merge Sort, Quick Sort และการใช้ sort package ใน Go พร้อมตัวอย่างโค้ดจริงทั้งสองภาษา เพื่อเข้าใจหลักการจัดเรียงข้อมูลและเลือกใช้อย่างเหมาะสมในระบบของคุณ","2026-06-07 06:43:34.993Z",{"alt":494,"cover_image_path":495,"created":496,"expand":497,"id":522,"published_at":523,"school_blog":518,"short_description":524,"title":494,"updated":525,"slug":519,"views":521},"JS2GO EP.34 การจัดการ Heap และ Priority Queue ใน Go และ JavaScript","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fn9pt1j9ian4j2md\u002F67_11zon_p6wwrz8255.webp","2026-03-04 08:45:41.345Z",{"keywords":498,"locale":512,"school_blog":513},[499,504,509,510,511],{"collectionId":12,"collectionName":13,"created":500,"created_by":15,"id":501,"name":502,"updated":503,"updated_by":15},"2026-03-04 08:45:40.772Z","v6z1lw61iahm61l","Heap","2026-06-07 06:46:52.985Z",{"collectionId":12,"collectionName":13,"created":505,"created_by":15,"id":506,"name":507,"updated":508,"updated_by":15},"2026-03-04 08:45:40.568Z","5g4t5pkbuw4nirz","Priority Queue","2026-06-07 06:46:52.882Z",{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},{"collectionId":12,"collectionName":13,"created":151,"created_by":15,"id":152,"name":153,"updated":154,"updated_by":15},{"collectionId":12,"collectionName":13,"created":231,"created_by":15,"id":232,"name":171,"updated":233,"updated_by":15},{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":163,"collectionId":51,"collectionName":52,"created":53,"expand":514,"id":518,"slug":519,"updated":520,"views":521},{"category":515},{"blogIds":516,"collectionId":57,"collectionName":58,"created":167,"created_by":15,"id":163,"image":168,"image_alt":53,"image_path":169,"label":517,"name":171,"priority":172,"publish_at":173,"scheduled_at":53,"status":66,"updated":174,"updated_by":15},[],{"en":171,"th":171},"mgybxftbhhias43","heap-and-priority-queue-in-go-and-javascript","2026-06-22 01:48:48.805Z",240,"n9pt1j9ian4j2md","2025-11-03 01:38:54.986Z","Heap และ Priority Queue คือหัวใจของระบบที่ต้องจัดลำดับงาน เช่น Job Queue, Pathfinding หรือ Recommendation Engine","2026-06-07 06:43:35.399Z",12,434,37]