#77 - Debug lỗi chiếm dụng memory của ứng dụng
Những bài viết hay
The USE Method — www.brendangregg.com
Khi bạn có những tài nguyên phần cứng như CPU, RAM, Storage, trong quá trình hệ thống vận hành bạn cần những thông số để phân tích khả năng xử lý mà nguồn tài nguyên có thể cung cấp. Có một phương pháp đưa ra 3 yếu tố để đánh giá từng loại tài nguyên phần cứng gọi là USE (Utilization - Saturation - Error).
Debugging Sidekiq Poison Pills — medium.com
Đội ngũ kỹ sư của Gusto đã gặp một sự cố với Sidekiq - một background processing library của Ruby xử lý asynchronous job. Các job cứ liên tục được đẩy vào queue chờ xử lý nhưng các job đó cứ chiếm dụng hết memory của worker container và làm worker crash liên tục. Vậy vấn đề là gì?
Fast key-value stores: an idea whose time has come and gone — blog.acolyer.org
Các ứng dụng scale tốt thường sử dụng store lưu trữ có những đặc tính remote, in-memory, key-value (RInK). Những store RInK như Redis hay Memcached đã trơ nên phổ biến bởi chúng cung cấp khả năng: truy vấn nhanh, expire sau khoảng 1 thời gian. Nhưng liệu sử dụng RInK lúc nào cũng mang lại performance và latency tốt?
Debugging Memory Bloat — engineering.gusto.com
Hẳn đã có lần bạn gặp phải trường hợp job die, app crash, hay service tiêu hao nhiều tài nguyên mà có lẽ phải mất vài giờ tới cả ngày để tìm ra nguyên nhân không đáng có. Bài viết dưới đây là chia sẻ của tác giả Fredy Jacob khi phát hiện một bug gây tiêu hao tài nguyên bộ nhớ.
Tip bổ ích
Lessons Learned From an Entire Year of Time Tracking — zapier.com
Bạn có kế hoạch học thêm một ngoại ngữ hay đọc một quyển sách chuyên ngành nhưng lại không thể hoàn thành trong thời hạn đã định. Hoặc bạn muốn biết trong tuần (tháng) qua bạn đã làm gì. Việc ghi nhận những công việc đã làm trong khoảng thời gian trong ngày sẽ giúp bạn làm việc hiệu quả hơn. Từ đó bạn sẽ biết được trong tuần, trong tháng mình đã tốn thời gian cho những việc nào và đưa ra quyết định phù hợp về kế hoạch sắp tới cho bản thân.
Code & Tools
Tin tức khác
Quiz
Trong số newsletter trước, câu hỏi là
Các phương thức Http nào dưới đây được xem là Idempotent?
A - GET
B - PUT
C - POST
D - DEL
Một Http Idempotent Method là method thực thi với kết quả trả về của những request thành công đều không thay đổi, không phụ thuộc vào số lần thực thi thành công request đó. Nếu dựa trên nguyên tắc thiết kế RESTful API thì các method GET, PUT và DEL đều là những idempotent HTTP method.
An idempotent HTTP method is an HTTP method that can be called many times without different outcomes. It would not matter if the method is called only once, or ten times over. The result should be the same. It essentially means that the result of a successfully performed request is independent of the number of times it is executed. For example, in arithmetic, adding zero to a number is idempotent operation.
Giải thích ở đây
Như vậy đáp án cho câu hỏi trên là A, B và D
Câu hỏi quiz tuần này là:
Kết quả của đoạn code Javascript dưới đây là gì:
for (var i = 0; i < 3; i++) {
setTimeout(() => console.log(i), 1);
}
for (let i = 0; i < 3; i++) {
setTimeout(() => console.log(i), 1);
}
A - 2 3 1 và 0 1 2
B - 3 3 3 và0 1 2
C - 2 3 1 và 3 2 1
D - 0 1 2 và 0 1 2
Mời bạn đọc hãy gửi câu trả lời vào email newsletter@grokking.org
THIS WEEK'S SPONSOR
Team biên tập xin gửi lời cảm ơn đến VNG, nhà tài trợ cho newsletter số này.
Được thành lập từ năm 2004, VNG Corporation là một trong những công ty Internet Công Nghệ hàng đầu tại Việt Nam, được vinh danh là start-up kỳ lân đầu tiên của Việt Nam tính đến thời điểm hiện tại. VNG nuôi dưỡng hệ sinh thái dịch vụ đa dạng như trò chơi trực tuyến, nền tảng kết nối, tài chính, thanh toán, dịch vụ đám mây... Với sứ mệnh “thay đổi Internet để thay đổi cuộc sống người Việt”, VNG không ngừng cải tiến và hoàn thiện hơn các sản phẩm giúp người dùng có những trải nghiệm ấn tượng và tốt đẹp.
VNG hiện có 3 văn phòng tại Việt Nam (Hồ Chí Minh, Hà Nội, Đà Nẵng) và 3 văn phòng tại các nước Thái Lan, Singapore, Myanmar.
Quote
"That’s what’s cool about working with computers. They don’t argue, they remember everything and they don’t drink all your beer." - Paul Leary