Windows Terminal (2)

Q: วันก่อนติดตั้ง WSL2 แล้วอยากใช้งาน bash บน Windows Terminal ด้วยทำไง? A: กด แล้วเลือก Ubuntu 20.04 ไงล่ะ!! Q: ไม่อยากกดเอาแบบเปิดมาแล้วเป็น ubuntu เลยอ่ะ A: แก้ Settings คลิก เลือก Settings จะเป็นการเปิดการตั้งค่าต่างๆ ด้วย Text Editor ที่ชื่นชอบ เลื่อนลงมาดูเรื่อยๆ จะเจอว่ามี Ubuntu-20.04 อยู่ สนใจบรรทัดที่เขียนว่า “guid”: ให้ copy ข้อความที่อยู่ภายใน “{ }” มาทั้งหมด จากตัวอย่างคือ 07b52e3e-de2c-5db4-bd2d-ba144ed6c273 แล้วให้เลื่อนจอขึ้นไปด้านบนจนเห็นบรรทัดที่มีข้อความว่า “defaultProfile”: แทนที่ข้อความที่อยู่ภายในเครื่องหมาย “{ }” ด้วยข้อความที่ copy ไว้ เปลี่ยนเป็น แล้ว save ปิดแล้วเปิดใหม่ก็จะได้ Ubuntu-20.04 เป็นค่า default จบขอให้สนุก

Read More »

[กันลืม] ปรับแต่ง MySql/Mariadb ให้โหลดข้อมูลได้เร็วขึ้น

เพื่อให้ดาต้าเบส (Database) ทำงานได้อย่างเต็มประสิทธิภาพและสามารถใช้ทรัพยาการของเครื่องเซิร์ฟเวอร์ (Server) ได้เต็มศักยภาพของเครื่องเมื่อติดตั้งเสร็จก็จะควรมีการปรับแต่งค่าให้เหมาะสมกับการใช้งาน สำหรับ Linux ให้แก้ไขไฟล์ /etc/mysql/my.cnf สำหรับ Windows (XAMPP) ให้แก้ไขไฟล์ C:\xampp\mysql\bin\my.ini มาเริ่มกันเลย! ปัจจุบัน MySql/Mariadb เวอร์ชั่นใหม่จะใช้เอนจินแบบ InnoDB เป็นค่าเริ่มต้น ฉะนั้นเราจะโฟกัสความสำคัญเฉพาะการตั้งค่า InnoDB โดยเฉพาะค่า innodb_buffer_pool_size ควรกำหนดให้ไม่เกิน 70-80% ของขนาด RAM มีตัวย่างการค่าคอนเฟิกดังนี้ (สมมุติสเปกเครื่องเซิร์ฟเวอร์ CPU 4 core  RAM 4 GB) คำสั่งคิวรีที่ใช้ตรวจสอบค่าที่เหมาะสมของ innodb_buffer_pool_size เมื่อใช้ดาต้าเบสไปได้ 1-2 สัปดาห์ ให้ใช้คำสั่งคิวรีนี้เพื่อใช้ตรวจสอบว่าหน่วยความจำ GB จริงที่ถูกใช้โดย InnoDB Data ใน InnoDB Buffer Pool ในขณะนี้ถูกใช้งานไปเท่าไร และมีค่าอื่นๆ อีกเช่น เสร็จแล้วให้บักทึก และ Restart การทำงาน MySql/Mariadb ใหม่อีกครั้ง แนะนำบทความเพื่อศึกษาเพิ่มเติม : Tuning MySQL : สำรวจตัวเองและเข้าใจตัวแปร อ้างอิง https://gist.github.com/fevangelou/fb72f36bbe333e059b66 https://qastack.in.th/dba/27328/how-large-should-be-mysql-innodb-buffer-pool-size https://www.bunyiam.com/%E0%B8%A1%E0%B8%B2%E0%B8%9B%E0%B8%A3%E0%B8%B1%E0%B8%9A%E0%B9%81%E0%B8%95%E0%B9%88%E0%B8%87-mysql-%E0%B9%83%E0%B8%AB%E0%B9%89%E0%B9%80%E0%B8%A3%E0%B9%87%E0%B8%A7%E0%B9%81%E0%B8%A3%E0%B8%87%E0%B8%AA/

Read More »

[กันลืม] Elasticsearch API พื้นฐาน

INDEX วิธีดูว่ามี index อะไรบ้าง GET /_cat Response เมื่อทราบว่ามี index อะไรบ้าง ต้องการดูรายละเอียด ใส่ query string parameter (qrs) “v”‘ GET /_cat/indices?v Response ต้องการทราบว่า แต่ละ Fields มีความหมายอย่างไร ใช้ qrs ‘help’ GET /_cat/indices?help Response ต้องการแสดงเฉพาะบาง Fields ใช้ qrs ‘h=’ GET /_cat/indices?h=idx,dc,ss&v Response ต้องการดูขนาดจัดเก็บ ใช้ qrs ‘bytes=’ GET /_cat/indices?h=idx,dc,ss&bytes=b&v Response ต้องการเรียงลำดับ ใช้ qrs ‘s=’ และ สามารถกำกับ ‘:desc’, ‘:asc’ GET /_cat/indices?h=idx,dc,ss&bytes=b&s=ss:desc&v ลบ INDEX DELETE /kx01 DOCUMENTS Document เป็น JSON ที่มีรายละเอียดเกี่ยวกับการสร้างขึ้นมา เช่น _id, _version และ _source ซึ่ง source หรือ (stored fields) create / update if exist โดยใน Index เดียวกับ เก็บ Document คนละ Schema กันก็ได้ Check if exist HEAD /kx01/_doc/1/ Response 200 – OK get a source (stored fields) GET /kx01/_doc/1/ Response get only document value GET /kx01/_source/1/ Response อื่น ๆ Source filtering source_include source_exclude

Read More »

รู้จักเอแจ๊กซ์ (AJAX) และการใช้งาน

AJAX ย่อมาจากคำว่า Asynchronous JavaScript and XML ซึ่งหมายถึงการพัฒนาเว็บแอพพลิเคชั่นที่ประมวลผลในเบื้องหลังเป็นเทคนิคในการพัฒนาเว็บแอปพลิเคชันเพื่อให้สามารถโต้ตอบกับผู้ใช้ได้ดีขึ้น ทำให้ความรู้สึกการใช้งานโปรแกรมเหมือนกับเดสก์ท็อปแอปพลิเคชัน ปกติแล้วในภาษาสคริปต์ที่ใช้งานกับเว็บไซต์จะมีการทำงานประมวลผลแบบเป็นลำดับ (synchronous) โดยที่คำสั่งแรกจะต้องประมวลผลให้เสร็จสิ้นก่อนแล้วถึงจะทำงานในคำสั่งถัดไป แต่กระบวนการทำงานแบบเอแจ๊กซ์เมื่อบราวเซอร์ (Browser) ร้องขอข้อมูลไปยังเซิร์ฟเวอร์ (Server) บราวเซอร์จะไปทำงานคำสั่งถัดไปทันที (asynchronous) โดยที่ไม่ต้องรอการตอบกลับจากเซิร์ฟเวอร์ก่อน ทำให้การตอบสนองต่อผู้ใช้งานดูรวดเร็วขึ้น และเมื่อเซิร์ฟเวอร์ประมวลผลเสร็จแล้วถึงจะส่งข้อมูลกลับมาที่เอแจ๊กซ์และให้เอแจ๊กซ์ทำงานกับข้อมูลที่ส่งกลับมาอีกทีซึ่งสามารถเขียนโค้คการทำงานดังนี้ ตัวอย่างโค้คการทำงาน AJAX ของโดยใช้ jQuery และปัจจุบันในการเขียน JavaScript เพื่อเรียกใช้งาน AJAX นั้นเราไม่จำเป็นต้องพึ่งพา jQuery อีกต่อไปแล้วซึ่งสามารถเขียนโค้ดการทำงานได้ดังนี้ วิธีที่ 1  ใช้ XMLHttpRequest [1] วิธีที่ 2 ใช้ Fetch API [2] อ้างอิง: https://tutorialzine.com/2014/06/10-tips-for-writing-javascript-without-jquery [1] https://developers.google.com/web/updates/2015/03/introduction-to-fetch [2] https://www.javascripttutorial.net/javascript-fetch-api/   วิดีโอ: https://www.youtube.com/watch?v=F1TECaRf-uA&feature=youtu.be&t=2375

Read More »

รู้จักการจัดการข้อมูล JSON และการใช้งาน

รูปแบบข้อมูล JSON เป็นมาตรฐานในการแลกเปลี่ยนข้อมูลระหว่างเซิฟเวอร์และไคลเอนต์ที่ได้รับความนิยมในปัจจุบันซึ่งได้ถูกนำไปใช้งานอย่างแพร่หลายเช่นการเขียนโปรแกรมโดยใช้เทคนิค AJAX, RESTFul, เขียนคอนฟิกไฟล์ หรือการพัฒนา API เป็นต้น ด้วยคุณสมบัติของ JSON ที่เป็นไฟล์ประเภทข้อความ (Text based) ขนาดเล็กน้ำหนักเบา เป็นมาตรฐานกลางทุกภาษาสามารถใช้งานได้ง่ายทั้งการอ่านและเขียนที่มนุษย์สามารถอ่านเข้าใจได้ง่าย อักขระมาตารฐานของ JSON เครื่องหมาย “:” ใช้สำหรับแยกค่า name และ value เครื่องหมาย “,” ใช้สำหรับแยกข้อมุล name-value ในแต่ละคู่ เครื่องหมาย “{” และ “}” ระบุว่าข้อมูลเป็นออบเจ็ค เครื่องหมาย “[” และ “]” ระบุว่าข้อมูลเป็นอาเรย์ เครื่องหมาย “” (double quotes) ใช้เขียนค่า name-value ใน JSON ตัวอย่างการเขียนค่า Json – จำนวน 1 คู่ – หากมีมากกว่า 1 คู่ ให้ใช้เครื่องหมายคอมมา , (comma) ในการแยกเป็นคู่ – ต้วอย่าง JSON object ชนิดข้อมูลของ JSON มี 6 ชนิด คือ strings numbers objects arrays booleans null or empty – ตัวอย่างการใช้งานชนิดข้อมูล การใช้งาน JSON ร่วมกับภาษา JavaScript – ตัวอย่างการแสดงค่า JSON objects – ตัวอย่างการแสดงค่า JSON objects ใน array – ตัวอย่างการแสดงค่า JSON objects ใน objects ทริปเล็กๆน้อยๆ ในการใช้งาน JSON ในภาษา JavaScript มีฟังก์ชั่นที่เราใช้งานบ่อยๆ อยู่ 2 ฟังก์ชัน คือ JSON parser สำหรับแปลง JSON object เป็น javascript object ตัวอย่างเช่น  2. JSON stringify สำหรับแปลง JavaScript object เป็น JSON text (*ข้อควรระวังอย่าสับสนระหว่าง JSON object กับ  javascript object เพราะมันเป็นคนละอย่างกันนะครับ [3]) ทริปเพิ่มเติมสำหรับการใช้งานร่วมกับภาษา PHP จะมีฟังก์ชั่น json_encode เพื่อส่งข้อมูล json ไปให้ฝั่ง javascript ไปใช้งานต่ออีกที หากเราต้องการที่จะแปลงข้อมูลให้เป็น javascript object เพื่อจะให้เรานำข้อมูล json ไปทำงานต่อไปได้ง่ายขึ้นสามารถทำดังนี้ Reference: https://beginnersbook.com/2015/04/json-tutorial/ https://restfulapi.net/json-data-types/ Javascript Object VS JSON(JavaScript Object Notation) มันคนละเรื่องกัน ? [3]

Read More »