Vì sao Ruby lại ngốn nhiều bộ nhớ đến vậy?
(joyfulbikeshedding.com)Đây là bài viết chỉ giới hạn trong Ruby trên Linux.
Ngay cả khi bạn không biết Ruby, đây vẫn là một bài đáng đọc, vì nó trình bày cách bộ nhớ được quản lý ở tầng OS và interpreter. Cách paging và paging pool được sử dụng cũng như các giải thích về phân mảnh bộ nhớ đều được trình bày rất dễ hiểu.
Có vẻ như cũng có nhiều điều đáng học hỏi từ cách lần theo memory leak.
4 bình luận
Nhưng nhắc là glibc vậy thôi, thực ra có lẽ mọi dự án dùng đa luồng trong số tất cả các chương trình Linux sử dụng thư viện C tiêu chuẩn đều sẽ bị ảnh hưởng cả ;m ;
Vì Python cũng phụ thuộc vào glibc nên gặp cùng một vấn đề; cũng có cách dùng Jemalloc thay cho allocator mặc định để giảm phân mảnh bộ nhớ.
http://egloos.zum.com/mcchae/v/11175458
Nhân tiện, câu này thực sự rất ấn tượng...
Không có công cụ -> nên đã tự làm ra.
Tôi nghĩ đó là một thái độ thật tuyệt vời của lập trình viên.