Code-khôn ngoan, cả Lượt xem và màn hình được thể hiện bằng các đối tượng. Khi Chế độ xem đang được xử lý, nó sẽ tải tất cả các hiển thị con của nó vào bộ nhớ, bất kể bạn chỉ hiển thị một Chế độ xem trong trang bạn đang xem. Trong khi các truy vấn cơ sở dữ liệu chỉ được thực hiện cho màn hình hoạt động, các thuộc tính của màn hình không hoạt động vẫn được tải vào bộ nhớ.
Điều này có nghĩa là nếu bạn có 50 màn hình trong một Chế độ xem, 50 màn hình sẽ được tải vào bộ nhớ, bất kể bạn chỉ hiển thị một trong số chúng. Vì vậy, câu trả lời cho câu hỏi của bạn là có, thông thường, bạn càng có nhiều màn hình hiển thị trong chế độ xem, Chế độ xem càng trở nên kém hiệu quả.
Với điều đó đã được nói, cá nhân tôi nghĩ rằng có bất kỳ nơi nào có từ 2-10 màn hình trong Chế độ xem sẽ chứng minh trí nhớ không đáng kể. Rốt cuộc, việc có một lượng hiển thị kín đáo trong Chế độ xem sẽ phục vụ mục đích thiết thực của nó (nếu không, tại sao chúng lại ở đó ngay từ đầu?).
Đối với câu hỏi thứ hai của bạn (tác động hiệu suất của các bộ lọc bổ sung, v.v.), có, việc thêm các tham số nhất định vào Chế độ xem của bạn sẽ ảnh hưởng đến hiệu suất. Nếu bạn muốn biết chính xác bao nhiêu, bạn có thể truy cập quản trị / cấu trúc / lượt xem / cài đặt (nếu bạn ở D7) và chọn Hiển thị thông tin và thống kê về chế độ xem trong khi xem trước trực tiếp , Hiển thị truy vấn SQL và Hiển thị thống kê hiệu suất . Dưới đây là ảnh chụp màn hình của màn hình hiệu suất:
Nếu bạn quan tâm hơn đến hành vi của các truy vấn (có bao nhiêu hàng được phân tích, sử dụng khóa nào), bạn có thể sao chép truy vấn từ giao diện Lượt xem (một khi bạn đã chọn "Hiển thị truy vấn SQL") và phân tích truy vấn sử dụng explain
lệnh MySQL . Có rất nhiều bài viết như thế này để explain
sử dụng trên Google.