[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"academy-blogs-th-5-12-Web%252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252520Development-all-all-createdAt:desc-default":3},{"data":4,"page":491,"perPage":492,"totalItems":493,"totalPages":494},[5,69,122,154,202,234,266,303,346,386,418,455],{"alt":6,"cover_image_path":7,"created":8,"expand":9,"id":65,"published_at":66,"school_blog":61,"short_description":67,"title":6,"updated":68,"slug":62,"views":64},"กว่าจะเป็นภาษา Rust: จากตำนานลิฟต์ค้าง 21 ชั้น สู่ภาษาที่ปลอดภัยที่สุดในโลก","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fkgcg8jbo8fqnwgw\u002Fcover_image_the_origin_of_rust_how_a_stuck_elevator_created_the_world_s_safest_language_xdzkd2ysox.webp","2026-03-04 08:20:13.026Z",{"keywords":10,"locale":34,"school_blog":44},[11,19,24,29],{"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:20:06.615Z","76qprkevbgfdps8","ugbeyp380i0crdq","Graydon Hoare","2026-06-07 06:45:07.178Z",{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},"2026-03-04 08:20:08.738Z","1b028bgp2ckk0r0","Borrow Checker","2026-06-07 06:45:07.505Z",{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},"2026-03-04 08:20:10.141Z","avqzi5llku0ag52","ประวัติ Rust","2026-06-07 06:45:07.684Z",{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},"2026-03-04 08:20:06.235Z","254619mvnk1hr7y","Rust","2026-06-07 06:45:07.039Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},"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":45,"collectionId":46,"collectionName":47,"created":48,"expand":49,"id":61,"slug":62,"updated":63,"views":64},"isnp2fv80bn3yem","pbc_2105096300","school_blogs","",{"category":50},{"blogIds":51,"collectionId":52,"collectionName":53,"created":54,"created_by":15,"id":45,"image":48,"image_alt":48,"image_path":48,"label":55,"name":56,"priority":57,"publish_at":58,"scheduled_at":48,"status":59,"updated":60,"updated_by":15},[],"sclcatblg987654321","school_category_blogs","2026-03-04 08:19:47.590Z",{"en":56,"th":56},"กว่าจะเป็นภาษาโค้ด",8,"2026-02-18 01:59:49.988Z","published","2026-06-07 06:45:01.789Z","y4zlcase4qgxoxc","history-of-rust-from-stuck-elevator-to-linux-kernel","2026-05-22 05:02:06.317Z",263,"kgcg8jbo8fqnwgw","2026-02-04 02:08:44.934Z","เจาะลึกจุดกำเนิดของ Rust จากความหงุดหงิดเรื่องลิฟต์ค้าง สู่การเป็นภาษาเดียวที่ได้รับความไว้วางใจให้เข้าไปอยู่ใน Linux Kernel","2026-06-07 06:42:43.448Z",{"alt":70,"cover_image_path":71,"created":72,"expand":73,"id":118,"published_at":119,"school_blog":114,"short_description":120,"title":70,"updated":121,"slug":115,"views":117},"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":74,"locale":100,"school_blog":101},[75,80,85,90,95],{"collectionId":12,"collectionName":13,"created":76,"created_by":15,"id":77,"name":78,"updated":79,"updated_by":15},"2026-03-04 08:34:00.920Z","ecac9y661or1xka","WebSocket","2026-06-07 06:45:55.734Z",{"collectionId":12,"collectionName":13,"created":81,"created_by":15,"id":82,"name":83,"updated":84,"updated_by":15},"2026-03-04 08:20:11.547Z","ey3puyme01a9bsw","Go","2026-06-07 06:45:07.798Z",{"collectionId":12,"collectionName":13,"created":86,"created_by":15,"id":87,"name":88,"updated":89,"updated_by":15},"2026-03-04 08:20:14.253Z","ah6lvy4x8qe08l5","Golang","2026-06-07 06:45:08.193Z",{"collectionId":12,"collectionName":13,"created":91,"created_by":15,"id":92,"name":93,"updated":94,"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":96,"created_by":15,"id":97,"name":98,"updated":99,"updated_by":15},"2026-03-04 08:44:32.396Z","n8p7muy44udt3cd","Multi-instance","2026-06-07 06:46:34.864Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":102,"collectionId":46,"collectionName":47,"created":48,"expand":103,"id":114,"slug":115,"updated":116,"views":117},"wqxt7ag2gn7xcmk",{"category":104},{"blogIds":105,"collectionId":52,"collectionName":53,"created":106,"created_by":15,"id":102,"image":107,"image_alt":48,"image_path":108,"label":109,"name":110,"priority":111,"publish_at":112,"scheduled_at":48,"status":59,"updated":113,"updated_by":15},[],"2026-03-04 08:33:53.210Z","59ty92ns80w_15oc1implw.png","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fwqxt7ag2gn7xcmk\u002F59ty92ns80w_15oc1implw.png",{"en":110,"th":110},"Golang The Series",1,"2026-03-16 04:39:38.440Z","2026-06-07 06:45:03.856Z","qtnun31cy8m4a50","golang-multi-instance-websocket-redis-pubsub","2026-05-25 02:56:20.004Z",250,"f00z8opmt2e4n26","2026-01-28 00:54:43.993Z","แก้ปัญหาข้อความหายเมื่อสเกล WebSocket Server ด้วยการใช้ Redis Pub\u002FSub เป็นตัวกลางเชื่อมต่อข้อมูลข้ามเครื่อง (Horizontal Scaling) เพื่อรองรับผู้ใช้ระดับแสน","2026-06-07 06:43:18.956Z",{"alt":123,"cover_image_path":124,"created":125,"expand":126,"id":150,"published_at":151,"school_blog":147,"short_description":152,"title":123,"updated":153,"slug":148,"views":117},"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":127,"locale":141,"school_blog":142},[128,129,130,135,140],{"collectionId":12,"collectionName":13,"created":81,"created_by":15,"id":82,"name":83,"updated":84,"updated_by":15},{"collectionId":12,"collectionName":13,"created":86,"created_by":15,"id":87,"name":88,"updated":89,"updated_by":15},{"collectionId":12,"collectionName":13,"created":131,"created_by":15,"id":132,"name":133,"updated":134,"updated_by":15},"2026-03-04 08:44:29.876Z","ozn15duk6wovj6g","Microservices","2026-06-07 06:46:34.292Z",{"collectionId":12,"collectionName":13,"created":136,"created_by":15,"id":137,"name":138,"updated":139,"updated_by":15},"2026-03-04 08:44:30.561Z","mh6or11b3q7afdh","Microservices Architecture","2026-06-07 06:46:34.508Z",{"collectionId":12,"collectionName":13,"created":76,"created_by":15,"id":77,"name":78,"updated":79,"updated_by":15},{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":102,"collectionId":46,"collectionName":47,"created":48,"expand":143,"id":147,"slug":148,"updated":149,"views":117},{"category":144},{"blogIds":145,"collectionId":52,"collectionName":53,"created":106,"created_by":15,"id":102,"image":107,"image_alt":48,"image_path":108,"label":146,"name":110,"priority":111,"publish_at":112,"scheduled_at":48,"status":59,"updated":113,"updated_by":15},[],{"en":110,"th":110},"yjukg8iwp0s8i17","golang-websocket-microservices-integration","2026-05-26 00:33:36.806Z","znc9u5kpa96ukor","2026-01-28 00:54:36.837Z","ออกแบบระบบ WebSocket ให้ทำงานร่วมกับ Microservices อื่นๆ ด้วย Ticket-based Auth และ gRPC","2026-06-07 06:43:18.571Z",{"alt":155,"cover_image_path":156,"created":157,"expand":158,"id":198,"published_at":199,"school_blog":194,"short_description":200,"title":155,"updated":201,"slug":195,"views":197},"Roadmap 2026: เริ่มต้นจากศูนย์สู่โปรแกรมเมอร์มืออาชีพ","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fnk79500si2y6ahn\u002Fcover_image_2026_programmer_roadmap_from_zero_to_software_engineer_bhehw41tmz.webp","2026-03-04 08:44:31.383Z",{"keywords":159,"locale":180,"school_blog":181},[160,165,170,175],{"collectionId":12,"collectionName":13,"created":161,"created_by":15,"id":162,"name":163,"updated":164,"updated_by":15},"2026-03-04 08:44:11.146Z","gms2qr4xg6qv65e","Superdev Academy","2026-06-07 06:46:28.624Z",{"collectionId":12,"collectionName":13,"created":166,"created_by":15,"id":167,"name":168,"updated":169,"updated_by":15},"2026-03-04 08:44:29.531Z","4seuuz6nouafgw1","เริ่มต้นเขียนโปรแกรม","2026-06-07 06:46:34.161Z",{"collectionId":12,"collectionName":13,"created":171,"created_by":15,"id":172,"name":173,"updated":174,"updated_by":15},"2026-03-04 08:26:56.612Z","yf74wkqyamfc5qx","โปรแกรมเมอร์","2026-06-07 06:45:20.920Z",{"collectionId":12,"collectionName":13,"created":176,"created_by":15,"id":177,"name":178,"updated":179,"updated_by":15},"2026-03-04 08:31:35.253Z","r1k7m3354tp5ovr","เรียนเขียนโปรแกรม","2026-06-07 06:45:29.140Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":182,"collectionId":46,"collectionName":47,"created":48,"expand":183,"id":194,"slug":195,"updated":196,"views":197},"9926he4i0bn9xla",{"category":184},{"blogIds":185,"collectionId":52,"collectionName":53,"created":186,"created_by":15,"id":182,"image":187,"image_alt":48,"image_path":188,"label":189,"name":190,"priority":191,"publish_at":192,"scheduled_at":48,"status":59,"updated":193,"updated_by":15},[],"2026-03-04 08:32:41.255Z","8skhge1ublj_lsje1q3y65.png","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002F9926he4i0bn9xla\u002F8skhge1ublj_lsje1q3y65.png",{"en":190,"th":190},"Future Skills",0,"2025-01-16 06:26:07.717Z","2026-06-07 06:45:03.621Z","lqcs43nmczmic45","roadmap-programmer-2026-professional-guide","2026-05-22 04:35:00.798Z",274,"nk79500si2y6ahn","2026-01-28 00:54:31.643Z","คู่มือปั้นคุณเป็นโปรแกรมเมอร์ในปี 2026 เจาะลึกการเรียนรู้ยุค AI ตั้งแต่พื้นฐาน Logic จนถึงการออกแบบระบบที่ซับซ้อน เริ่มต้นอาชีพสาย Tech อย่างมั่นใจกับ Superdev Academy","2026-06-07 06:43:18.725Z",{"alt":203,"cover_image_path":204,"created":205,"expand":206,"id":230,"published_at":231,"school_blog":226,"short_description":232,"title":203,"updated":233,"slug":227,"views":229},"กว่าจะเป็นภาษา Go: เมื่อวิศวกร Google ทนรอคอมไพล์โค้ดไม่ไหว จนเกิดภาษาเปลี่ยนโลก","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fm6fpznlrztvh4d5\u002Fcover_image_the_origins_of_go_how_google_engineers_built_a_language_while_waiting_for_compilation_4w0ai0x6jj.webp","2026-03-04 08:20:18.891Z",{"keywords":207,"locale":220,"school_blog":221},[208,213,214,215],{"collectionId":12,"collectionName":13,"created":209,"created_by":15,"id":210,"name":211,"updated":212,"updated_by":15},"2026-03-04 08:20:15.939Z","v9v7ah7oaphr5n4","ประวัติภาษา Go","2026-06-07 06:45:08.560Z",{"collectionId":12,"collectionName":13,"created":81,"created_by":15,"id":82,"name":83,"updated":84,"updated_by":15},{"collectionId":12,"collectionName":13,"created":86,"created_by":15,"id":87,"name":88,"updated":89,"updated_by":15},{"collectionId":12,"collectionName":13,"created":216,"created_by":15,"id":217,"name":218,"updated":219,"updated_by":15},"2026-03-04 08:20:15.564Z","9zhk20p0247axym","Google","2026-06-07 06:45:08.345Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":45,"collectionId":46,"collectionName":47,"created":48,"expand":222,"id":226,"slug":227,"updated":228,"views":229},{"category":223},{"blogIds":224,"collectionId":52,"collectionName":53,"created":54,"created_by":15,"id":45,"image":48,"image_alt":48,"image_path":48,"label":225,"name":56,"priority":57,"publish_at":58,"scheduled_at":48,"status":59,"updated":60,"updated_by":15},[],{"en":56,"th":56},"7nyg2flm9t53dgl","history-of-go-language-google-compilation-struggle","2026-06-01 10:19:09.629Z",251,"m6fpznlrztvh4d5","2026-01-28 00:54:25.928Z","เจาะลึกจุดกำเนิดของภาษา Go จากความหงุดหงิดของ 3 วิศวกรระดับตำนาน สู่ภาษาที่กลายเป็นรากฐานของ Docker และ Kubernetes","2026-06-07 06:42:43.526Z",{"alt":235,"cover_image_path":236,"created":237,"expand":238,"id":262,"published_at":263,"school_blog":258,"short_description":264,"title":235,"updated":265,"slug":259,"views":261},"Golang The Series EP 129: High Availability & Failover – ออกแบบระบบให้ \"อึด ถึก ทน\"","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fdl91cve930nplii\u002Fcover_image_golang_the_series_ep_129_high_availability_failover_design_for_zero_downtime_nibn2rjvtl.webp","2026-03-04 08:44:33.854Z",{"keywords":239,"locale":252,"school_blog":253},[240,245,246,247],{"collectionId":12,"collectionName":13,"created":241,"created_by":15,"id":242,"name":243,"updated":244,"updated_by":15},"2026-03-04 08:44:32.713Z","b9jmymu9lbpj60c","High Availability","2026-06-07 06:46:35.110Z",{"collectionId":12,"collectionName":13,"created":81,"created_by":15,"id":82,"name":83,"updated":84,"updated_by":15},{"collectionId":12,"collectionName":13,"created":86,"created_by":15,"id":87,"name":88,"updated":89,"updated_by":15},{"collectionId":12,"collectionName":13,"created":248,"created_by":15,"id":249,"name":250,"updated":251,"updated_by":15},"2026-03-04 08:44:32.915Z","pyrjlxpn42ys3ql","Failover","2026-06-07 06:46:35.177Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":102,"collectionId":46,"collectionName":47,"created":48,"expand":254,"id":258,"slug":259,"updated":260,"views":261},{"category":255},{"blogIds":256,"collectionId":52,"collectionName":53,"created":106,"created_by":15,"id":102,"image":107,"image_alt":48,"image_path":108,"label":257,"name":110,"priority":111,"publish_at":112,"scheduled_at":48,"status":59,"updated":113,"updated_by":15},[],{"en":110,"th":110},"7z0t10yivtf6z9w","golang-high-availability-failover-design-guide","2026-05-24 23:03:17.551Z",241,"dl91cve930nplii","2026-01-27 03:55:09.309Z","เจาะลึกกลยุทธ์การออกแบบระบบให้มี Uptime 99.99% ด้วยแนวคิด High Availability การกำจัดจุดตายเดี่ยว (SPOF) และการเขียน Go ให้รองรับ Graceful Shutdown","2026-06-07 06:43:19.487Z",{"alt":267,"cover_image_path":268,"created":269,"expand":270,"id":299,"published_at":300,"school_blog":295,"short_description":301,"title":267,"updated":302,"slug":296,"views":298},"Golang The Series EP 128: Logging, Monitoring และ Observability – เปลี่ยนกล่องดำให้เป็นกล่องแก้ว","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fwvtfc87vu8adv1s\u002Fcover_image_golang_the_series_ep_128_mastering_logging_monitoring_and_observability_in_go_n1rgzl6yx6.webp","2026-03-04 08:44:35.539Z",{"keywords":271,"locale":289,"school_blog":290},[272,277,278,279,284],{"collectionId":12,"collectionName":13,"created":273,"created_by":15,"id":274,"name":275,"updated":276,"updated_by":15},"2026-03-04 08:44:34.753Z","l1a17htphmxe52a","Observability","2026-06-07 06:46:35.412Z",{"collectionId":12,"collectionName":13,"created":86,"created_by":15,"id":87,"name":88,"updated":89,"updated_by":15},{"collectionId":12,"collectionName":13,"created":81,"created_by":15,"id":82,"name":83,"updated":84,"updated_by":15},{"collectionId":12,"collectionName":13,"created":280,"created_by":15,"id":281,"name":282,"updated":283,"updated_by":15},"2026-03-04 08:44:34.571Z","fiybaq65m7oymtd","Monitoring","2026-06-07 06:46:35.275Z",{"collectionId":12,"collectionName":13,"created":285,"created_by":15,"id":286,"name":287,"updated":288,"updated_by":15},"2026-03-04 08:33:55.302Z","0mue4zt83jcdtq9","Logging","2026-06-07 06:45:53.507Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":102,"collectionId":46,"collectionName":47,"created":48,"expand":291,"id":295,"slug":296,"updated":297,"views":298},{"category":292},{"blogIds":293,"collectionId":52,"collectionName":53,"created":106,"created_by":15,"id":102,"image":107,"image_alt":48,"image_path":108,"label":294,"name":110,"priority":111,"publish_at":112,"scheduled_at":48,"status":59,"updated":113,"updated_by":15},[],{"en":110,"th":110},"huvj1rgte3iwzdx","golang-observability-logging-monitoring-slog","2026-05-28 10:43:17.225Z",240,"wvtfc87vu8adv1s","2026-01-26 03:57:08.107Z","เรียนรู้ 3 เสาหลักในการทำ Observability ด้วยภาษา Go เจาะลึกการใช้ log\u002Fslog, Prometheus และแนวคิดการเปลี่ยนระบบให้โปร่งใสเพื่อการแก้ปัญหาที่รวดเร็วระดับมืออาชีพ","2026-06-07 06:43:19.708Z",{"alt":304,"cover_image_path":305,"created":306,"expand":307,"id":342,"published_at":343,"school_blog":338,"short_description":344,"title":304,"updated":345,"slug":339,"views":341},"คัมภีร์ Git และ GitHub ฉบับสมบูรณ์: สรุปครบทุกขั้นตอนสำหรับการทำงานจริงระดับมืออาชีพ","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fdwh64w0g4p8mj0i\u002Fthe_ultimate_git_git_hub_manual_mastering_professional_collaboration_and_workflows_9am8fi1j1b.webp","2026-03-04 08:44:36.942Z",{"keywords":308,"locale":325,"school_blog":326},[309,314,319,320],{"collectionId":12,"collectionName":13,"created":310,"created_by":15,"id":311,"name":312,"updated":313,"updated_by":15},"2026-03-04 08:44:36.134Z","pg679bitpkii9vv","Git","2026-06-07 06:46:36.158Z",{"collectionId":12,"collectionName":13,"created":315,"created_by":15,"id":316,"name":317,"updated":318,"updated_by":15},"2026-03-04 08:44:35.823Z","andd8rbw15sng17","GitHub","2026-06-07 06:46:35.932Z",{"collectionId":12,"collectionName":13,"created":171,"created_by":15,"id":172,"name":173,"updated":174,"updated_by":15},{"collectionId":12,"collectionName":13,"created":321,"created_by":15,"id":322,"name":323,"updated":324,"updated_by":15},"2026-03-04 08:44:35.619Z","9z8e1xfjt07e7n9","Git Workflow","2026-06-07 06:46:35.800Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":327,"collectionId":46,"collectionName":47,"created":48,"expand":328,"id":338,"slug":339,"updated":340,"views":341},"spm4l1k5bgmhmmt",{"category":329},{"blogIds":330,"collectionId":52,"collectionName":53,"created":331,"created_by":15,"id":327,"image":332,"image_alt":48,"image_path":333,"label":334,"name":335,"priority":191,"publish_at":336,"scheduled_at":48,"status":59,"updated":337,"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":335,"th":335},"Knowledge","2026-03-18 02:25:41.222Z","2026-06-07 06:45:02.533Z","87a0eh8dpji0woo","git-github-complete-manual-guide","2026-06-05 05:04:26.089Z",392,"dwh64w0g4p8mj0i","2026-01-21 03:29:41.862Z","เจาะลึกการใช้ Git และ GitHub ตั้งแต่พื้นฐาน 4 โซนสำคัญ การบริหารจัดการ Branch แบบมืออาชีพ ไปจนถึงเทคนิคการแก้ Code Conflict และการทำ Pull Request เพื่อการทำงานร่วมกันในทีมอย่างมีประสิทธิภาพ","2026-06-07 06:43:20.245Z",{"alt":347,"cover_image_path":348,"created":349,"expand":350,"id":382,"published_at":383,"school_blog":378,"short_description":384,"title":347,"updated":385,"slug":379,"views":381},"กว่าจะเป็นภาษา Java: ปฏิวัติวงการด้วยแนวคิด \"Write Once, Run Anywhere\"","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F9zisuux1bzb1rsj\u002Fcover_image_the_origin_of_java_revolutionizing_the_world_with_write_once_run_anywhere_umugmc52u6.webp","2026-03-04 08:20:35.835Z",{"keywords":351,"locale":372,"school_blog":373},[352,357,362,367],{"collectionId":12,"collectionName":13,"created":353,"created_by":15,"id":354,"name":355,"updated":356,"updated_by":15},"2026-03-04 08:20:25.947Z","trcc0ngsny7a9zh","Bytecode","2026-06-07 06:45:08.787Z",{"collectionId":12,"collectionName":13,"created":358,"created_by":15,"id":359,"name":360,"updated":361,"updated_by":15},"2026-03-04 08:20:29.827Z","kaajdy60saamd6y","James Gosling","2026-06-07 06:45:09.137Z",{"collectionId":12,"collectionName":13,"created":363,"created_by":15,"id":364,"name":365,"updated":366,"updated_by":15},"2026-03-04 08:20:31.631Z","9psyxnixy5hvrcv","ประวัติ Java","2026-06-07 06:45:09.396Z",{"collectionId":12,"collectionName":13,"created":368,"created_by":15,"id":369,"name":370,"updated":371,"updated_by":15},"2026-03-04 08:20:32.925Z","a77j8bhv489p2sx","Java","2026-06-07 06:45:09.622Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":45,"collectionId":46,"collectionName":47,"created":48,"expand":374,"id":378,"slug":379,"updated":380,"views":381},{"category":375},{"blogIds":376,"collectionId":52,"collectionName":53,"created":54,"created_by":15,"id":45,"image":48,"image_alt":48,"image_path":48,"label":377,"name":56,"priority":57,"publish_at":58,"scheduled_at":48,"status":59,"updated":60,"updated_by":15},[],{"en":56,"th":56},"wnjjzdrlrynynjv","the-making-of-java-write-once-run-anywhere","2026-05-14 07:35:07.999Z",248,"9zisuux1bzb1rsj","2026-01-20 02:33:48.613Z","เจาะลึกประวัติศาสตร์ Java จากโปรเจกต์เครื่องใช้ไฟฟ้าสู่ภาษาที่ครองโลกองค์กรและ Android เรียนรู้เบื้องหลังเทคโนโลยี JVM และการจัดการหน่วยความจำที่เปลี่ยนโลกซอฟต์แวร์","2026-06-07 06:42:44.100Z",{"alt":387,"cover_image_path":388,"created":389,"expand":390,"id":414,"published_at":415,"school_blog":410,"short_description":416,"title":387,"updated":417,"slug":411,"views":413},"Golang The Series EP 127: Connection Management & Circuit Breaker ป้องกันระบบล่มแบบโดมิโน่","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fk5d182ak8tb0bet\u002Fcover_image_golang_the_series_ep_127_connection_management_circuit_breaker_preventing_cascading_fail_adws7t11p8.webp","2026-03-04 08:44:37.916Z",{"keywords":391,"locale":404,"school_blog":405},[392,397,402,403],{"collectionId":12,"collectionName":13,"created":393,"created_by":15,"id":394,"name":395,"updated":396,"updated_by":15},"2026-03-04 08:44:37.391Z","krqs9dt45y5ixau","Connection Management","2026-06-07 06:46:36.387Z",{"collectionId":12,"collectionName":13,"created":398,"created_by":15,"id":399,"name":400,"updated":401,"updated_by":15},"2026-03-04 08:44:37.056Z","erl8jxcjedbe0i0","Circuit Breaker","2026-06-07 06:46:36.230Z",{"collectionId":12,"collectionName":13,"created":81,"created_by":15,"id":82,"name":83,"updated":84,"updated_by":15},{"collectionId":12,"collectionName":13,"created":86,"created_by":15,"id":87,"name":88,"updated":89,"updated_by":15},{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":102,"collectionId":46,"collectionName":47,"created":48,"expand":406,"id":410,"slug":411,"updated":412,"views":413},{"category":407},{"blogIds":408,"collectionId":52,"collectionName":53,"created":106,"created_by":15,"id":102,"image":107,"image_alt":48,"image_path":108,"label":409,"name":110,"priority":111,"publish_at":112,"scheduled_at":48,"status":59,"updated":113,"updated_by":15},[],{"en":110,"th":110},"dfoukm4b8ogtmtf","golang-the-series-ep-127-connection-management-circuit-breaker","2026-05-24 18:26:13.970Z",243,"k5d182ak8tb0bet","2026-01-20 02:24:42.277Z","เจาะลึกการใช้ Circuit Breaker Pattern ในภาษา Go เพื่อสร้างระบบที่ทนทานต่อความผิดพลาด เรียนรู้การใช้ gobreaker, การจัดการ Connection Pool และการทำ Fallback เพื่อป้องกัน Cascading Failure ใน Microservices","2026-06-07 06:43:20.345Z",{"alt":419,"cover_image_path":420,"created":421,"expand":422,"id":451,"published_at":452,"school_blog":447,"short_description":453,"title":419,"updated":454,"slug":448,"views":450},"Golang The Series EP 126: วิธีทำ DDoS Protection และ Rate Limiting เพื่อระบบที่ไม่มีวันตาย","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F5sqsjq1yzrjzg3f\u002Fcover_image_for_golang_the_series_ep_126_implementing_ddo_s_protection_and_rate_limiting_for_high_av_7siud2uttd.webp","2026-03-04 08:44:40.473Z",{"keywords":423,"locale":441,"school_blog":442},[424,429,434,439,440],{"collectionId":12,"collectionName":13,"created":425,"created_by":15,"id":426,"name":427,"updated":428,"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":430,"created_by":15,"id":431,"name":432,"updated":433,"updated_by":15},"2026-03-04 08:44:38.426Z","cwmp6ppr4svplqr","DDoS Protection","2026-06-07 06:46:36.631Z",{"collectionId":12,"collectionName":13,"created":435,"created_by":15,"id":436,"name":437,"updated":438,"updated_by":15},"2026-03-04 08:34:07.915Z","921nl48h9in67sw","Rate Limiting","2026-06-07 06:45:58.705Z",{"collectionId":12,"collectionName":13,"created":81,"created_by":15,"id":82,"name":83,"updated":84,"updated_by":15},{"collectionId":12,"collectionName":13,"created":86,"created_by":15,"id":87,"name":88,"updated":89,"updated_by":15},{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":102,"collectionId":46,"collectionName":47,"created":48,"expand":443,"id":447,"slug":448,"updated":449,"views":450},{"category":444},{"blogIds":445,"collectionId":52,"collectionName":53,"created":106,"created_by":15,"id":102,"image":107,"image_alt":48,"image_path":108,"label":446,"name":110,"priority":111,"publish_at":112,"scheduled_at":48,"status":59,"updated":113,"updated_by":15},[],{"en":110,"th":110},"htou1khawwt2hn7","golang-the-series-ep-126-ddos-protection-rate-limiting","2026-06-03 23:21:20.098Z",259,"5sqsjq1yzrjzg3f","2026-01-19 03:55:09.416Z","เจาะลึกเทคนิคการป้องกันระบบล่มจาก Traffic มหาศาลด้วยการทำ Rate Limiting และ DDoS Protection ในภาษา Go เรียนรู้การใช้งาน Token Bucket Algorithm การสร้าง Middleware จัดการ IP และการตั้งค่า Server Timeout แบบมืออาชีพเพื่อรองรับงานระดับ Enterprise","2026-06-07 06:43:20.779Z",{"alt":456,"cover_image_path":457,"created":458,"expand":459,"id":487,"published_at":488,"school_blog":483,"short_description":489,"title":456,"updated":490,"slug":484,"views":486},"GitHub Workflow 2026: มาตรฐานการจัดการ Branch ที่ทีม Dev ระดับโลกเลือกใช้","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fanlci173u2ch5k6\u002Fcover_image_git_hub_workflow_2026_modern_branching_standards_for_global_dev_teams_btp9t8b6hr.webp","2026-03-04 08:44:41.403Z",{"keywords":460,"locale":477,"school_blog":478},[461,466,471,472],{"collectionId":12,"collectionName":13,"created":462,"created_by":15,"id":463,"name":464,"updated":465,"updated_by":15},"2026-03-04 08:44:39.878Z","36yxgpqj8fqr1gq","Git for Team","2026-06-07 06:46:37.013Z",{"collectionId":12,"collectionName":13,"created":467,"created_by":15,"id":468,"name":469,"updated":470,"updated_by":15},"2026-03-04 08:44:40.149Z","5uksedh6rrjozlk","การจัดการ Branch","2026-06-07 06:46:37.210Z",{"collectionId":12,"collectionName":13,"created":315,"created_by":15,"id":316,"name":317,"updated":318,"updated_by":15},{"collectionId":12,"collectionName":13,"created":473,"created_by":15,"id":474,"name":475,"updated":476,"updated_by":15},"2026-03-04 08:44:35.235Z","nesdqt6l5obkq2o","GitHub Workflow","2026-06-07 06:46:35.602Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":327,"collectionId":46,"collectionName":47,"created":48,"expand":479,"id":483,"slug":484,"updated":485,"views":486},{"category":480},{"blogIds":481,"collectionId":52,"collectionName":53,"created":331,"created_by":15,"id":327,"image":332,"image_alt":48,"image_path":333,"label":482,"name":335,"priority":191,"publish_at":336,"scheduled_at":48,"status":59,"updated":337,"updated_by":15},[],{"en":335,"th":335},"53gn7yw5p9z5mpp","github-workflow-2026-branching-standards","2026-06-06 02:55:13.801Z",287,"anlci173u2ch5k6","2026-01-15 05:36:21.052Z","เจาะลึกมาตรฐาน GitHub Workflow ปี 2026 สำหรับโปรแกรมเมอร์มืออาชีพ ตั้งแต่การตั้งชื่อ Branch ให้เป็นระบบ, การใช้ AI ช่วยรีวิวโค้ด, การวางระบบ 4 Environments ไปจนถึงเทคนิค Squash and Merge เพื่อการทำงานเป็นทีมที่มีประสิทธิภาพสูงสุด","2026-06-07 06:43:21.149Z",5,12,421,36]