Câu hỏi phỏng vấn Ruby
Câu hỏi

N+1 query là gì? Làm sao để nhận biết và khắc phục

Câu trả lời

N+1 query là một vấn đề hiệu năng trong truy vấn cơ sở dữ liệu khi bạn thực hiện một truy vấn để lấy danh sách object (N object) và sau đó thực hiện thêm một truy vấn riêng cho từng object để lấy dữ liệu liên quan. Điều này dẫn đến tổng cộng N + 1 truy vấn thay vì chỉ cần 1-2 truy vấn tối ưu. Ví dụ:

ruby Copy
@posts = Post.all
@posts.each do |post|
 puts post.comments.count
end...
middle

middle

Gợi ý câu hỏi phỏng vấn

middle

Sự khác nhau giữa create, save, và update_attributes?

middle

Sự khác biệt khi gọi một phương thức private so với gọi một phương thức public từ bên trong lớp định nghĩa nó là gì?

senior

Một block có phải là một đối tượng không?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào