[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"academy-blogs-th-1-12-Golang The Series-all-all-createdAt:desc-default":3},{"data":4,"page":73,"perPage":477,"totalItems":478,"totalPages":477},[5,85,124,166,198,234,275,311,347,382,413,445],{"alt":6,"cover_image_path":7,"created":8,"expand":9,"id":79,"published_at":80,"school_blog":77,"short_description":81,"slug":82,"title":83,"updated":84,"views":78},"ภาพปกบทความ Golang The Series EP.140 ตอนจบ แสดงตัวอย่างโค้ด Go สำหรับระบบ Enterprise WebSocket Server","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fc5xq31ilcgu6y0o\u002Farticle_cover_for_golang_the_series_ep_5491p66i4h.eWebSocketserver.png","2026-03-16 03:49:53.524Z",{"keywords":10,"locale":49,"school_blog":59},[11,19,24,29,34,39,44],{"collectionId":12,"collectionName":13,"created":14,"created_by":15,"id":16,"name":17,"updated":18,"updated_by":15},"sclkey987654321","school_keywords","2026-03-16 03:48:45.467Z","","wqkhxxucp5tcem4","Golang","2026-04-10 16:14:41.123Z",{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},"2026-03-16 03:48:56.473Z","srjooxgro6oq0bc","WebSocket","2026-04-10 16:14:41.213Z",{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},"2026-03-16 03:49:04.210Z","lkxlsj34k1324jz","Enterprise Architecture","2026-04-10 16:14:41.311Z",{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},"2026-03-16 03:49:11.920Z","68w24pqpvxluy94","Roadmap","2026-04-10 16:14:41.404Z",{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},"2026-03-16 03:49:19.659Z","8jw741wsqhx919b","Backend Developer","2026-04-10 16:14:41.498Z",{"collectionId":12,"collectionName":13,"created":40,"created_by":15,"id":41,"name":42,"updated":43,"updated_by":15},"2026-03-16 03:49:27.028Z","6x2tx5b8cvpi4tf","พัฒนาซอฟต์แวร์","2026-04-10 16:14:41.588Z",{"collectionId":12,"collectionName":13,"created":45,"created_by":15,"id":46,"name":47,"updated":48,"updated_by":15},"2026-03-16 03:49:34.466Z","mmrky37ung92c97","ระบบ Real-time","2026-04-10 16:14:41.735Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},"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":60,"collectionId":61,"collectionName":62,"expand":63,"id":77,"views":78},"wqxt7ag2gn7xcmk","pbc_2105096300","school_blogs",{"category":64},{"blogIds":65,"collectionId":66,"collectionName":67,"created":68,"created_by":15,"id":60,"image":69,"image_alt":15,"image_path":70,"label":71,"name":72,"priority":73,"publish_at":74,"scheduled_at":15,"status":75,"updated":76,"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":72,"th":72},"Golang The Series",1,"2026-03-16 04:39:38.440Z","published","2026-04-25 02:32:15.470Z","c2puowxb5818jta",141,"c5xq31ilcgu6y0o","2026-03-17 02:55:21.850Z","บทสรุปส่งท้ายมหากาพย์ 140 ตอน! รวบรวมหัวใจสำคัญของการสร้างระบบ WebSocket ระดับโลก พร้อมแจก Template โครงสร้างโค้ดระดับ Production, 3 สิ่งที่ต้องศึกษาต่อ และคำแนะนำจากใจเพื่อก้าวสู่ Senior Developer","golang-enterprise-websocket-final-roadmap-advice","Golang The Series EP.140: สรุปและแนวทางการพัฒนา WebSocket Server ระดับ Enterprise (ตอนจบ)","2026-04-22 07:11:51.165Z",{"alt":86,"cover_image_path":87,"created":88,"expand":89,"id":119,"published_at":120,"school_blog":117,"short_description":121,"slug":122,"title":86,"updated":123,"views":118},"EP.11 Go กับ Modules: จัดการ Dependency อย่างมืออาชีพ","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fi3gpxgyzelb5hst\u002F21_11zon_p6enrx0w0x.webp","2026-03-04 08:51:53.280Z",{"keywords":90,"locale":111,"school_blog":112},[91,96,101,106],{"collectionId":12,"collectionName":13,"created":92,"created_by":15,"id":93,"name":94,"updated":95,"updated_by":15},"2026-03-04 08:20:11.547Z","ey3puyme01a9bsw","Go","2026-04-10 16:07:25.893Z",{"collectionId":12,"collectionName":13,"created":97,"created_by":15,"id":98,"name":99,"updated":100,"updated_by":15},"2026-03-04 08:33:53.709Z","k5ox6iu2wn2n6co","Go Modules","2026-04-10 16:08:02.738Z",{"collectionId":12,"collectionName":13,"created":102,"created_by":15,"id":103,"name":104,"updated":105,"updated_by":15},"2026-03-04 08:33:54.415Z","dtu0hnobmvg32lx","Dependency Management","2026-04-10 16:08:03.071Z",{"collectionId":12,"collectionName":13,"created":107,"created_by":15,"id":108,"name":109,"updated":110,"updated_by":15},"2026-03-04 08:34:12.496Z","992k3hc4xxojtaj","ความเสถียร","2026-04-10 16:08:09.493Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":60,"collectionId":61,"collectionName":62,"expand":113,"id":117,"views":118},{"category":114},{"blogIds":115,"collectionId":66,"collectionName":67,"created":68,"created_by":15,"id":60,"image":69,"image_alt":15,"image_path":70,"label":116,"name":72,"priority":73,"publish_at":74,"scheduled_at":15,"status":75,"updated":76,"updated_by":15},[],{"en":72,"th":72},"vey0miiiraly806",398,"i3gpxgyzelb5hst","2026-03-06 03:23:46.142Z","เรียนรู้การเริ่มต้นโปรเจกต์ด้วย Go Modules การติดตั้งและอัปเดตแพ็กเกจ รวมถึงการจัดการเวอร์ชันของ Dependency อย่างมืออาชีพ","go-modules-managing-dependency","2026-04-22 07:11:50.854Z",{"alt":125,"cover_image_path":126,"created":127,"expand":128,"id":161,"published_at":162,"school_blog":159,"short_description":163,"slug":164,"title":125,"updated":165,"views":160},"Golang The Series EP.139: Mobile & Low-bandwidth – เทคนิครับมือเน็ตหลุดและแบนด์วิดท์จำกัด","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fajh621tzfnpj0u2\u002Fgolang_the_series_ep_3aap0aplut.nstableNetworks.webp","2026-03-04 08:44:12.091Z",{"keywords":129,"locale":153,"school_blog":154},[130,134,138,143,148],{"collectionId":12,"collectionName":13,"created":131,"created_by":15,"id":132,"name":17,"updated":133,"updated_by":15},"2026-03-04 08:20:14.253Z","ah6lvy4x8qe08l5","2026-04-10 16:07:26.172Z",{"collectionId":12,"collectionName":13,"created":135,"created_by":15,"id":136,"name":22,"updated":137,"updated_by":15},"2026-03-04 08:34:00.920Z","ecac9y661or1xka","2026-04-10 16:08:05.227Z",{"collectionId":12,"collectionName":13,"created":139,"created_by":15,"id":140,"name":141,"updated":142,"updated_by":15},"2026-03-04 08:44:10.146Z","0fzsu1l5cyqadwi","Mobile Optimization","2026-04-10 16:12:40.902Z",{"collectionId":12,"collectionName":13,"created":144,"created_by":15,"id":145,"name":146,"updated":147,"updated_by":15},"2026-03-04 08:44:10.927Z","3ed6g568seusybp","Low Bandwidth","2026-04-10 16:12:41.094Z",{"collectionId":12,"collectionName":13,"created":149,"created_by":15,"id":150,"name":151,"updated":152,"updated_by":15},"2026-03-04 08:44:11.146Z","gms2qr4xg6qv65e","Superdev Academy","2026-04-10 16:12:41.207Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":60,"collectionId":61,"collectionName":62,"expand":155,"id":159,"views":160},{"category":156},{"blogIds":157,"collectionId":66,"collectionName":67,"created":68,"created_by":15,"id":60,"image":69,"image_alt":15,"image_path":70,"label":158,"name":72,"priority":73,"publish_at":74,"scheduled_at":15,"status":75,"updated":76,"updated_by":15},[],{"en":72,"th":72},"v3pnrpaatmfvk5q",235,"ajh621tzfnpj0u2","2026-03-02 08:50:22.787Z","เจาะลึกการจูน WebSocket สำหรับโลก Mobile! ตั้งแต่การทำ Adaptive Heartbeat เพื่อประหยัดแบตเตอรี่ ไปจนถึงเทคนิค Resume Message เมื่อเน็ตหลุด เพื่อให้แอปของคุณเสถียรที่สุดแม้ในวันที่เน็ตไม่เป็นใจ","golang-websocket-mobile-optimization-low-bandwidth","2026-04-25 02:47:39.038Z",{"alt":167,"cover_image_path":168,"created":169,"expand":170,"id":193,"published_at":194,"school_blog":191,"short_description":195,"slug":196,"title":167,"updated":197,"views":192},"Golang The Series EP.138: Monitoring Latency & Performance – รีดความเร็ว WebSocket ให้ลื่นระดับเทพ","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fkonpz3tbe4ya0tx\u002Fgolang_the_series_ep_tk994uyv8n.nceOptimization.webp","2026-03-04 08:44:12.584Z",{"keywords":171,"locale":185,"school_blog":186},[172,173,178,183,184],{"collectionId":12,"collectionName":13,"created":149,"created_by":15,"id":150,"name":151,"updated":152,"updated_by":15},{"collectionId":12,"collectionName":13,"created":174,"created_by":15,"id":175,"name":176,"updated":177,"updated_by":15},"2026-03-04 08:44:11.932Z","8sanh9jytfatsgk","Performance Optimization","2026-04-10 16:12:41.404Z",{"collectionId":12,"collectionName":13,"created":179,"created_by":15,"id":180,"name":181,"updated":182,"updated_by":15},"2026-03-04 08:44:11.548Z","ezm3p0vsuowuadd","Latency","2026-04-10 16:12:41.299Z",{"collectionId":12,"collectionName":13,"created":135,"created_by":15,"id":136,"name":22,"updated":137,"updated_by":15},{"collectionId":12,"collectionName":13,"created":131,"created_by":15,"id":132,"name":17,"updated":133,"updated_by":15},{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":60,"collectionId":61,"collectionName":62,"expand":187,"id":191,"views":192},{"category":188},{"blogIds":189,"collectionId":66,"collectionName":67,"created":68,"created_by":15,"id":60,"image":69,"image_alt":15,"image_path":70,"label":190,"name":72,"priority":73,"publish_at":74,"scheduled_at":15,"status":75,"updated":76,"updated_by":15},[],{"en":72,"th":72},"8puudn0kcj2zq78",239,"konpz3tbe4ya0tx","2026-03-02 04:30:22.021Z","เลิกดูแค่ค่าเฉลี่ย! เจาะลึกวิธีวัด Latency แบบ P95\u002FP99 และเทคนิครีดประสิทธิภาพ Go WebSocket ให้ถึงขีดสุดด้วย sync.Pool, Protobuf และการจูน TCP Stack เพื่อประสบการณ์ผู้ใช้ที่ไม่มีสะดุด","golang-websocket-latency-performance-optimization-guide","2026-04-25 02:47:39.346Z",{"alt":199,"cover_image_path":200,"created":201,"expand":202,"id":229,"published_at":230,"school_blog":227,"short_description":231,"slug":232,"title":199,"updated":233,"views":228},"Golang The Series EP.137: Enterprise Security Best Practices – สร้างป้อมปราการให้ WebSocket Server","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fcn8q0wy16fj2pmf\u002Fgolang_the_series_ep_ev0mmhv6xz.eakableFortress.webp","2026-03-04 08:44:15.226Z",{"keywords":203,"locale":221,"school_blog":222},[204,205,210,215,216],{"collectionId":12,"collectionName":13,"created":131,"created_by":15,"id":132,"name":17,"updated":133,"updated_by":15},{"collectionId":12,"collectionName":13,"created":206,"created_by":15,"id":207,"name":208,"updated":209,"updated_by":15},"2026-03-04 08:44:13.770Z","ij1u9pugpnctjvk","WebSocket Security","2026-04-10 16:12:41.774Z",{"collectionId":12,"collectionName":13,"created":211,"created_by":15,"id":212,"name":213,"updated":214,"updated_by":15},"2026-03-04 08:34:18.095Z","z3u3nql685g5e3b","Authentication","2026-04-10 16:08:11.664Z",{"collectionId":12,"collectionName":13,"created":92,"created_by":15,"id":93,"name":94,"updated":95,"updated_by":15},{"collectionId":12,"collectionName":13,"created":217,"created_by":15,"id":218,"name":219,"updated":220,"updated_by":15},"2026-03-04 08:44:13.045Z","g4w6cq87d9yzbaz","CSWSH","2026-04-10 16:12:41.704Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":60,"collectionId":61,"collectionName":62,"expand":223,"id":227,"views":228},{"category":224},{"blogIds":225,"collectionId":66,"collectionName":67,"created":68,"created_by":15,"id":60,"image":69,"image_alt":15,"image_path":70,"label":226,"name":72,"priority":73,"publish_at":74,"scheduled_at":15,"status":75,"updated":76,"updated_by":15},[],{"en":72,"th":72},"v4prmym5dowcxtz",233,"cn8q0wy16fj2pmf","2026-02-24 02:34:26.075Z","แค่ WSS ยังไม่พอ! เจาะลึก 5 เสาหลักความปลอดภัย WebSocket ระดับองค์กร เรียนรู้วิธีป้องกัน CSWSH, การทำ Ticket-based Auth และการจัดการทรัพยากรไม่ให้ Server บึ้มจากการโจมตี DoS","golang-enterprise-websocket-security-best-practices","2026-04-25 02:47:39.618Z",{"alt":235,"cover_image_path":236,"created":237,"expand":238,"id":270,"published_at":271,"school_blog":268,"short_description":272,"slug":273,"title":235,"updated":274,"views":269},"Golang The Series EP.136: WebSocket Versioning อัปเกรดระบบให้ล้ำ โดยไม่ทิ้ง User เวอร์ชันเก่า","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fsykvogu6k97tz2t\u002Fcover_image_golang_the_series_ep_0lvk9j7j3n.eamlessUpgrades.webp","2026-03-04 08:44:15.846Z",{"keywords":239,"locale":262,"school_blog":263},[240,241,242,247,252,257],{"collectionId":12,"collectionName":13,"created":131,"created_by":15,"id":132,"name":17,"updated":133,"updated_by":15},{"collectionId":12,"collectionName":13,"created":135,"created_by":15,"id":136,"name":22,"updated":137,"updated_by":15},{"collectionId":12,"collectionName":13,"created":243,"created_by":15,"id":244,"name":245,"updated":246,"updated_by":15},"2026-03-04 08:44:14.062Z","z1020rjuhndf8m9","Versioning","2026-04-10 16:12:41.929Z",{"collectionId":12,"collectionName":13,"created":248,"created_by":15,"id":249,"name":250,"updated":251,"updated_by":15},"2026-03-04 08:44:14.705Z","7qpvbtbl99sazyl","API Design","2026-04-10 16:12:42.202Z",{"collectionId":12,"collectionName":13,"created":253,"created_by":15,"id":254,"name":255,"updated":256,"updated_by":15},"2026-03-04 08:44:14.480Z","d23neji0er26rrf","Backward Compatibility","2026-04-10 16:12:42.065Z",{"collectionId":12,"collectionName":13,"created":258,"created_by":15,"id":259,"name":260,"updated":261,"updated_by":15},"2026-03-04 08:44:15.009Z","kjorqkld4c8r3lc","Subprotocol","2026-04-10 16:12:42.341Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":60,"collectionId":61,"collectionName":62,"expand":264,"id":268,"views":269},{"category":265},{"blogIds":266,"collectionId":66,"collectionName":67,"created":68,"created_by":15,"id":60,"image":69,"image_alt":15,"image_path":70,"label":267,"name":72,"priority":73,"publish_at":74,"scheduled_at":15,"status":75,"updated":76,"updated_by":15},[],{"en":72,"th":72},"c9ogfoo6l8btdpg",234,"sykvogu6k97tz2t","2026-02-23 03:15:03.776Z","อัปเกรดแอปฯ ยังไงไม่ให้พัง? เจาะลึกกลยุทธ์ Versioning สำหรับ WebSocket ตั้งแต่ Path-based ไปจนถึง Subprotocol เพื่อรักษา Backward Compatibility ในระดับ Enterprise ให้ระบบของคุณเติบโตได้อย่างยั่งยืน","golang-websocket-versioning-backward-compatibility","2026-04-25 02:47:39.899Z",{"alt":276,"cover_image_path":277,"created":278,"expand":279,"id":306,"published_at":307,"school_blog":304,"short_description":308,"slug":309,"title":276,"updated":310,"views":305},"Golang The Series EP 135: CI\u002FCD สำหรับ WebSocket Deploy เนียนกริบ ไม่ต้องกลัวคนหลุด","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F7tmp80figmdf7bu\u002Fcover_image_golang_the_series_ep_135_ci_cd_for_web_socket_servers_seamless_deployment_guide_0hv1vt4g0r.webp","2026-03-04 08:44:20.186Z",{"keywords":280,"locale":298,"school_blog":299},[281,282,287,288,293],{"collectionId":12,"collectionName":13,"created":131,"created_by":15,"id":132,"name":17,"updated":133,"updated_by":15},{"collectionId":12,"collectionName":13,"created":283,"created_by":15,"id":284,"name":285,"updated":286,"updated_by":15},"2026-03-04 08:44:18.322Z","1n94l86nx7etuf9","CI\u002FCD","2026-04-10 16:12:43.067Z",{"collectionId":12,"collectionName":13,"created":135,"created_by":15,"id":136,"name":22,"updated":137,"updated_by":15},{"collectionId":12,"collectionName":13,"created":289,"created_by":15,"id":290,"name":291,"updated":292,"updated_by":15},"2026-03-04 08:44:18.652Z","jr5zczy6qrxmd88","Docker","2026-04-10 16:12:43.264Z",{"collectionId":12,"collectionName":13,"created":294,"created_by":15,"id":295,"name":296,"updated":297,"updated_by":15},"2026-03-04 08:44:18.923Z","jt1jqlzs29xu1i7","Deploy","2026-04-10 16:12:43.373Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":60,"collectionId":61,"collectionName":62,"expand":300,"id":304,"views":305},{"category":301},{"blogIds":302,"collectionId":66,"collectionName":67,"created":68,"created_by":15,"id":60,"image":69,"image_alt":15,"image_path":70,"label":303,"name":72,"priority":73,"publish_at":74,"scheduled_at":15,"status":75,"updated":76,"updated_by":15},[],{"en":72,"th":72},"zu068disz091bac",400,"7tmp80figmdf7bu","2026-02-17 01:37:51.989Z","เจาะลึกการทำ CI\u002FCD สำหรับระบบ Stateful อย่าง WebSocket เรียนรู้วิธีวาง Pipeline ด้วย GitHub Actions และกลยุทธ์การ Deploy แบบ Rolling Update เพื่อป้องกันปัญหา Thundering Herd และทำให้การปล่อยของเป็นเรื่องง่าย","golang-websocket-cicd-deployment-guide","2026-04-25 02:47:40.661Z",{"alt":312,"cover_image_path":313,"created":314,"expand":315,"id":342,"published_at":343,"school_blog":340,"short_description":344,"slug":345,"title":312,"updated":346,"views":341},"Golang The Series EP 134: Load & Stress Testing ทดสอบระบบ WebSocket ให้ถึงขีดจำกัดด้วย k6","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fw3qd4tw05xso27x\u002Fcover_image_golang_the_series_ep_134_load_stress_testing_web_sockets_with_k6_xxqje98pwi.webp","2026-03-04 08:44:20.622Z",{"keywords":316,"locale":334,"school_blog":335},[317,318,319,324,329],{"collectionId":12,"collectionName":13,"created":131,"created_by":15,"id":132,"name":17,"updated":133,"updated_by":15},{"collectionId":12,"collectionName":13,"created":135,"created_by":15,"id":136,"name":22,"updated":137,"updated_by":15},{"collectionId":12,"collectionName":13,"created":320,"created_by":15,"id":321,"name":322,"updated":323,"updated_by":15},"2026-03-04 08:44:19.453Z","s7490uhe8oarthf","k6","2026-04-10 16:12:43.471Z",{"collectionId":12,"collectionName":13,"created":325,"created_by":15,"id":326,"name":327,"updated":328,"updated_by":15},"2026-03-04 08:44:19.737Z","wfofysa5fhg0v0p","Load Testing","2026-04-10 16:12:43.560Z",{"collectionId":12,"collectionName":13,"created":330,"created_by":15,"id":331,"name":332,"updated":333,"updated_by":15},"2026-03-04 08:34:00.521Z","44l3qn47xjhwgf8","Stress Testing","2026-04-10 16:08:05.159Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":60,"collectionId":61,"collectionName":62,"expand":336,"id":340,"views":341},{"category":337},{"blogIds":338,"collectionId":66,"collectionName":67,"created":68,"created_by":15,"id":60,"image":69,"image_alt":15,"image_path":70,"label":339,"name":72,"priority":73,"publish_at":74,"scheduled_at":15,"status":75,"updated":76,"updated_by":15},[],{"en":72,"th":72},"5eetr92m80djrui",255,"w3qd4tw05xso27x","2026-02-16 03:44:10.212Z","อย่าปล่อยให้ระบบล่มในคืนสำคัญ! มาเรียนรู้วิธีการทำ Load และ Stress Testing สำหรับ WebSocket ด้วย k6 เจาะลึกการหาจุดแตกหัก (Breaking Point) และเทคนิคการจูน OS\u002FGo ให้รองรับคนนับแสน","golang-websocket-load-stress-testing-k6-guide","2026-04-25 02:47:40.809Z",{"alt":348,"cover_image_path":349,"created":350,"expand":351,"id":377,"published_at":378,"school_blog":375,"short_description":379,"slug":380,"title":348,"updated":381,"views":376},"Golang The Series EP 133: Real-time Analytics & Metrics Streaming วิเคราะห์ข้อมูลในเสี้ยววินาที","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fy0ar1uwcz40jipr\u002Fcover_image_golang_the_series_ep_133_mastering_real_time_analytics_metrics_streaming_in_go_9s67830xb0.webp","2026-03-04 08:44:24.622Z",{"keywords":352,"locale":369,"school_blog":370},[353,354,359,364],{"collectionId":12,"collectionName":13,"created":131,"created_by":15,"id":132,"name":17,"updated":133,"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:44:23.847Z","hmdk2zsz6hmdbc9","Real-time Analytics","2026-04-10 16:12:44.538Z",{"collectionId":12,"collectionName":13,"created":360,"created_by":15,"id":361,"name":362,"updated":363,"updated_by":15},"2026-03-04 08:44:24.371Z","rwwmu24vycuwtir","Metrics Streaming","2026-04-10 16:12:44.644Z",{"collectionId":12,"collectionName":13,"created":365,"created_by":15,"id":366,"name":367,"updated":368,"updated_by":15},"2026-03-04 08:44:23.104Z","cu70tpopmpfnpzw","Redis Streams","2026-04-10 16:12:44.320Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":60,"collectionId":61,"collectionName":62,"expand":371,"id":375,"views":376},{"category":372},{"blogIds":373,"collectionId":66,"collectionName":67,"created":68,"created_by":15,"id":60,"image":69,"image_alt":15,"image_path":70,"label":374,"name":72,"priority":73,"publish_at":74,"scheduled_at":15,"status":75,"updated":76,"updated_by":15},[],{"en":72,"th":72},"60laq0bu4zsz2am",227,"y0ar1uwcz40jipr","2026-02-10 02:53:40.541Z","เปลี่ยนจาก Batch สู่ Streaming! เรียนรู้วิธีสร้างระบบวิเคราะห์ข้อมูลแบบ Real-time ด้วย Go เจาะลึกการใช้ Redis Streams และ Time-series DB เพื่อสร้าง \"ตาทิพย์\" ให้กับธุรกิจของคุณ","golang-real-time-analytics-metrics-streaming-guide","2026-04-25 02:47:41.400Z",{"alt":383,"cover_image_path":384,"created":385,"expand":386,"id":408,"published_at":409,"school_blog":406,"short_description":410,"slug":411,"title":383,"updated":412,"views":407},"Golang The Series EP 132: Cloud Cost Optimization สำหรับ WebSocket","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Ffuyc9o9rzuocavp\u002Fcover_image_golang_the_series_ep_132_cloud_cost_optimization_for_web_socket_systems_p6341ahcpi.webp","2026-03-04 08:44:25.298Z",{"keywords":387,"locale":400,"school_blog":401},[388,389,394,399],{"collectionId":12,"collectionName":13,"created":135,"created_by":15,"id":136,"name":22,"updated":137,"updated_by":15},{"collectionId":12,"collectionName":13,"created":390,"created_by":15,"id":391,"name":392,"updated":393,"updated_by":15},"2026-03-04 08:34:06.624Z","xjxx81inhjp5ujb","Optimization","2026-04-10 16:08:07.289Z",{"collectionId":12,"collectionName":13,"created":395,"created_by":15,"id":396,"name":397,"updated":398,"updated_by":15},"2026-03-04 08:44:24.642Z","06gn3kqvksxcr0t","Cloud Cost","2026-04-10 16:12:44.820Z",{"collectionId":12,"collectionName":13,"created":131,"created_by":15,"id":132,"name":17,"updated":133,"updated_by":15},{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":60,"collectionId":61,"collectionName":62,"expand":402,"id":406,"views":407},{"category":403},{"blogIds":404,"collectionId":66,"collectionName":67,"created":68,"created_by":15,"id":60,"image":69,"image_alt":15,"image_path":70,"label":405,"name":72,"priority":73,"publish_at":74,"scheduled_at":15,"status":75,"updated":76,"updated_by":15},[],{"en":72,"th":72},"nf8br7l4q8mmkzx",241,"fuyc9o9rzuocavp","2026-02-09 03:15:27.468Z","เทคนิคการลดค่าใช้จ่าย Cloud สำหรับระบบ Real-time ด้วยการปรับแต่ง Go และ Load Balancer","golang-cloud-cost-optimization-websocket","2026-04-25 02:47:41.666Z",{"alt":414,"cover_image_path":415,"created":416,"expand":417,"id":440,"published_at":441,"school_blog":438,"short_description":442,"slug":443,"title":414,"updated":444,"views":439},"Golang The Series EP 130: Multi-instance WebSocket – สเกลระบบ Real-time ด้วย Redis","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Ff00z8opmt2e4n26\u002Fcover_image_golang_the_series_ep_130_scalable_multi_instance_web_sockets_with_redis_pub_sub_eg4qluwfaz.webp","2026-03-04 08:44:32.764Z",{"keywords":418,"locale":432,"school_blog":433},[419,420,421,422,427],{"collectionId":12,"collectionName":13,"created":135,"created_by":15,"id":136,"name":22,"updated":137,"updated_by":15},{"collectionId":12,"collectionName":13,"created":92,"created_by":15,"id":93,"name":94,"updated":95,"updated_by":15},{"collectionId":12,"collectionName":13,"created":131,"created_by":15,"id":132,"name":17,"updated":133,"updated_by":15},{"collectionId":12,"collectionName":13,"created":423,"created_by":15,"id":424,"name":425,"updated":426,"updated_by":15},"2026-03-04 08:34:10.254Z","rss87kgvhtvkri1","Redis Pub\u002FSub","2026-04-10 16:08:08.714Z",{"collectionId":12,"collectionName":13,"created":428,"created_by":15,"id":429,"name":430,"updated":431,"updated_by":15},"2026-03-04 08:44:32.396Z","n8p7muy44udt3cd","Multi-instance","2026-04-10 16:12:46.549Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":60,"collectionId":61,"collectionName":62,"expand":434,"id":438,"views":439},{"category":435},{"blogIds":436,"collectionId":66,"collectionName":67,"created":68,"created_by":15,"id":60,"image":69,"image_alt":15,"image_path":70,"label":437,"name":72,"priority":73,"publish_at":74,"scheduled_at":15,"status":75,"updated":76,"updated_by":15},[],{"en":72,"th":72},"qtnun31cy8m4a50",236,"f00z8opmt2e4n26","2026-01-28 00:54:43.993Z","แก้ปัญหาข้อความหายเมื่อสเกล WebSocket Server ด้วยการใช้ Redis Pub\u002FSub เป็นตัวกลางเชื่อมต่อข้อมูลข้ามเครื่อง (Horizontal Scaling) เพื่อรองรับผู้ใช้ระดับแสน","golang-multi-instance-websocket-redis-pubsub","2026-04-25 02:47:42.666Z",{"alt":446,"cover_image_path":447,"created":448,"expand":449,"id":472,"published_at":473,"school_blog":470,"short_description":474,"slug":475,"title":446,"updated":476,"views":471},"Golang The Series EP 131: WebSocket ใน Microservices Architecture","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fznc9u5kpa96ukor\u002Fcover_image_golang_the_series_ep_131_integrating_web_sockets_into_microservices_flmfgjh3s8.webp","2026-03-04 08:44:30.944Z",{"keywords":450,"locale":464,"school_blog":465},[451,452,453,458,463],{"collectionId":12,"collectionName":13,"created":92,"created_by":15,"id":93,"name":94,"updated":95,"updated_by":15},{"collectionId":12,"collectionName":13,"created":131,"created_by":15,"id":132,"name":17,"updated":133,"updated_by":15},{"collectionId":12,"collectionName":13,"created":454,"created_by":15,"id":455,"name":456,"updated":457,"updated_by":15},"2026-03-04 08:44:29.876Z","ozn15duk6wovj6g","Microservices","2026-04-10 16:12:46.024Z",{"collectionId":12,"collectionName":13,"created":459,"created_by":15,"id":460,"name":461,"updated":462,"updated_by":15},"2026-03-04 08:44:30.561Z","mh6or11b3q7afdh","Microservices Architecture","2026-04-10 16:12:46.171Z",{"collectionId":12,"collectionName":13,"created":135,"created_by":15,"id":136,"name":22,"updated":137,"updated_by":15},{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":60,"collectionId":61,"collectionName":62,"expand":466,"id":470,"views":471},{"category":467},{"blogIds":468,"collectionId":66,"collectionName":67,"created":68,"created_by":15,"id":60,"image":69,"image_alt":15,"image_path":70,"label":469,"name":72,"priority":73,"publish_at":74,"scheduled_at":15,"status":75,"updated":76,"updated_by":15},[],{"en":72,"th":72},"yjukg8iwp0s8i17",237,"znc9u5kpa96ukor","2026-01-28 00:54:36.837Z","ออกแบบระบบ WebSocket ให้ทำงานร่วมกับ Microservices อื่นๆ ด้วย Ticket-based Auth และ gRPC","golang-websocket-microservices-integration","2026-04-25 02:47:42.437Z",12,142]