Elasticsearch 7.11 :: ว่าด้วยเรื่อง Schema on read

ปกติ Elasticsaearch ข้อมูลต่าง ๆ ที่จัดเก็บในแต่ละ index จะสามารถค้นหาได้ก็ต่อเมื่อ ทำการบันทึกลงใน disk แล้วเท่านั้นหรือเรียกว่า Schema on writeโดย schema หรือโครงสร้างข้อมูลจะต้องถูกวางแผนก่อนเสมอว่าจะมีโครงสร้างอย่างไร ว่าแต่ละ field จะมีชนิดอะไร

Read More…

รูปสวย ๆ สรุปการเปลี่ยนแปลงใน Go 1.16

ไปเจอรูปการสรุปความสามารถใหม่ ๆ ที่เพิ่มเข้ามาใน Go 1.16 แบบสวย ๆ ที่ reddit แล้วเข้าใจได้ง่าย

Read More…

ทำการ build Go สำหรับลองใช้งาน Generic

นั่งฟัง Live เรื่อง Generic ใน Go 2 จาก DEVdose นั้นมีสิ่งหนึ่งที่คนสนใจต้องทำคือ อ่าน Type parameters :: Draft design ทดลองเขียน code ได้ที่ Go2Go Playground ทำการ build Go จาก source ใน branch dev.go2go

Read More…

ใช้งาน GIN index ของ PostgreSQL database สำหรับค้นหาข้อมูล

ใน PostgreSQL database นั้นเตรียม index ประเภทต่าง ๆ ไว้ให้ใช้งานสำหรับการเพิ่ม performace ของการ query ข้อมูลแต่ก็ต้องแลกมากับ การเพิ่มหรือแก้ไขข้อมูลที่ช้าลงรวมทั้งใช้พื้นที่ disk ในการจัดเก็บที่สูงขึ้นเลือกใช้งานตาม use case ต่าง ๆ ดังนี้ B-Tree (default index) Hash GiST (Generalized Search Tree) SP-GiST (Space-Partitioned GiST) GIN (Generalized Inverted Index) BRIN (Block Range INdexes)

Read More…

มาดูสิ่งที่น่าสนใจใน Spring Boot 2.5.0 (M2)

มาดูว่าใน Spring Boot 2.5 M2 มีอะไรที่น่าสนใจบ้าง ? อะไรก็ตามที่แจ้ง deprecated ใน Spring Boot 2.3 จะถูกลบออกไปทั้งหมดดังนั้น ถ้าใครใช้งานสิ่งที่ depecated อยู่ เตรียมตัวพังได้เลย เรื่องของการ initial SQL script ตอน start ซึ่งมักจะใช้งาน schema.sql และ data.sql นั้นแต่ถ้าใช้ร่วมกับ JPA จะพบว่าลำดับการทำงานจะเป็นดังนี้ ทำการ run schema.sql และ data.sql ทำการ initial ของ JPA แต่ถ้าต้องให้สลับลำดับการทำงานสามารถกำหนดผ่านspring.datasource.initialization-order=after-jpa อื่น ๆ ก็จะมีเรื่องของ Layered WAR จากเดิมที่ทำ Layered JAR ไปแล้ว สนับสนุน Custom buildpacks สำหรับ docker [&hellip

Read More…

ทำความรู้จักกับ Dapr (Distributed application runtime)

เห็นใน feed มีสิ่งที่น่าสนใจคือ Dapr (Distributed application runtime)คำถามแรกคือ มันคืออะไรถูกสร้างมาเพื่ออะไรจึงทำการอ่านและสรุปไว้นิดหน่อย

Read More…

Go module by default สำหรับ Go 1.16 แล้ว

ตอนนี้ Go 1.16 ตัวเต็มถูกปล่อยออกมาแล้วซึ่งมีความสามารถต่าง ๆ ที่เพิ่มเข้ามาและแก้ไขพอควรหนึ่งสิ่งที่น่าสนใจคือ Go module by defaultนั่นหมายความว่า คำสั่งต่าง ๆ จะใช้งานไม่ได้เลยถ้าไม่ได้ initial ด้วย Go moduleถือว่าเป็นการเปลี่ยนแปลง ที่หลาย ๆ คนต้องปรับตัวนิดหน่อย

Read More…

สร้าง Docker image ของระบบพัฒนาจากภาษา Go ด้วย Buildpacks

มาดูการสร้าง Docker image ด้วย Buildpacks กันหน่อยโดยที่เราไม่จำเป็นต้องสร้างผ่าน Dockerfileซึ่งเป็นการลดขั้นตอนของการสร้าง Docker image ลงไปที่สำคัญเมื่อนำมาร่วมกับระบบที่พัฒนาด้วยภาษา Go ยิ่งสะดวกไปอีกมาดูกันว่า ใช้งานอย่างไรบ้าง

Read More…

มาเดากันหน่อยว่า Clubhouse ใช้เทคโนโลยีอะไรกันบ้าง

วันนี้เห็นว่าทาง Clubhouse นั้นเขียน blog เรื่อง Welcoming More Voicesอธิบายของการเติบโตของการใช้งานที่สูงมาก ๆซึ่งทำให้ตรงปรับปรุงระบบให้รองรับได้มากขึ้น

Read More…

สรุปการพูดคุยเรื่อง Swagger/Protobuf usecase and trend

วันนี้ได้พูดคุยใน ClubHouse กันนิดหน่อย เรื่อง Swagger/Protobuf usecase and trendเป็นการแลกเปลี่ยนแนวทางในการพัฒนา API ไม่ว่าจะเป็น RESTFul API, Protobuf หรือพวก gRPC แนวทางในการพูดคุยประกอบไปด้วย

Read More…