Tag Archives: elk stack

Chuyện về cái hộp đen trong máy bay, và những “hộp đen” trong ngành lập trình

Có thể bạn chưa biết: Cách đây tầm 5-60 năm, đi máy bay là một hình thức di chuyển cực kì nguy hiểm. Thời đấy, máy bay rơi hoặc tai nạn là chuyện … như cơm bữa, nhiều hãng hàng không bị tận 4-5 vụ tai nạn trong 1-2 năm.

Thế nhưng, nhờ 1 thiết bị nho nhỏ mà vô cùng quan trọng, ngành hàng không có thể tìm hiểu lý do máy bay rơi, từ đó cải thiện dần sau mỗi tai nạn. Sau hơn 60 năm, cho đến nay, đi máy bay đã trở thành 1 trong những phương pháp di chuyển an toàn nhất.

Muốn biết thiết bị nho nhỏ này là gì, nó có dính dáng gì đến ngành lập trình, bạn hãy đọc bài viết nhé!

Continue reading Chuyện về cái hộp đen trong máy bay, và những “hộp đen” trong ngành lập trình

12 yếu tố tạo nên 1 web app xịn xò – Lược dịch và giải thích Twelve-Factor – Phần 3

Như đã giới thiệu ở bài trước, mình sẽ giới thiệu về twlve-factor app. Đây là 12 yếu tố cần thiết để xây dựng 1 ứng dụng “xịn xò”, ổn định, dễ mở rộng, dễ deploy.

Trong bài này, mình sẽ giải thích các yếu tố từ 8 tới 12 nhé:

  • 8. Concurrency: Một app nên được chia tách thành nhiều process nhỏ để tăng concurrency
  • 9. Disposability: Process của web app nên sống nhanh, chết nhẹ nhàng, để có thể dễ dàng chạy/kill process nhanh chóng
  • 10. Dev/prod parity: Các môi trường dev/staging/production nên giống nhau hết sức có thể
  • 11. Logs: Logs nên được viết ra dạng stream ở stdout
  • 12. Admin Processes: Một số task dạng admin (tạo database, fix dữ liệu) nên được chạy trong cùng môi trường với app đang chạy

 

Đây là phần 3 trong series 3 phần về Twelve-Factor App:

  1. Lược dịch và giải thích Twelve-Factor. Giải thích Codebase và Dependencies
  2. Giải thích Config, Backing Service, Build -> Release -> Run, Processes, Port Binding
  3. Giải thích Concurrency, Disposability, Dev/Prod Parity, Logs, Admin Processes

Continue reading 12 yếu tố tạo nên 1 web app xịn xò – Lược dịch và giải thích Twelve-Factor – Phần 3

Tạm biệt Algomerchant – Startup đầu tiên mình từng làm việc

Sau khi nghỉ việc ở công ty nào, mình cũng đều viết 1 bài review, về quá trình làm việc, những thứ mình đã học, những đồng nghiệp cool ngầu mình đã được làm việc chung.

Vừa rồi, mình vừa nghỉ việc tại Algomerchant để theo đi theo tiếng gọi đam mê, … nhầm, tiếng gọi của đồng tiền qua startup 90Seconds. Do vậy, mình viết review bóc phốt, lộn, review tạm biệt công ty cũ nhé.

Continue reading Tạm biệt Algomerchant – Startup đầu tiên mình từng làm việc

Tìm hiểu về ELK Stack – công cụ quản lý log ngầu nhất quả đất!

Hôm trước, trong bài viết về các công cụ “hay ho” mà lập trình viên ít biết, mình có nhắc đến logging.

Logging là một công cụ đơn giản và mạnh mẽ, ghi lại toàn bộ những hoạt động của hệ thống. 

Nhờ có logging, ta có thể tra cứu lại trạng thái của hệ thống trong quá khứ, những code nào đã được chạy, từ đó tìm ra lỗi và fix dễ dàng hơn.

Hôm nay, mình sẽ giới thiệu về ELK Stack, một trong các stack mạnh mẽ, phổ biến nhất dùng để ghi log nhé!

Rất nhiều hệ thống lớn trên thế giới (LinkedIn, Netflix, Medium) đều sử dụng stack này đấy!

Continue reading Tìm hiểu về ELK Stack – công cụ quản lý log ngầu nhất quả đất!