Bỏ qua điều hướng

Prompt miễn phí

Tối ưu truy vấn chậm trong lớp truy cập dữ liệu

Phân tích nguyên nhân truy vấn chậm, tối ưu cách lấy dữ liệu và giữ nguyên kết quả đầu ra theo ngưỡng hiệu năng đã đặt.

Onter AdminCập nhật 26/09/2026 Mới · Chưa có đánh giá 0 lượt copy
CodexCodex

Prompt dùng để làm gì?

Phân tích nguyên nhân truy vấn chậm, tối ưu cách lấy dữ liệu và giữ nguyên kết quả đầu ra theo ngưỡng hiệu năng đã đặt.

Điền thông tin của bạn

Prompt

Hãy phân tích {{doan_code}} như một đoạn truy vấn hoặc lớp truy cập dữ liệu đang chậm, dựa trên {{so_lieu_do}} để xác định nguyên nhân chính như lặp thừa, tải dữ liệu quá mức, query không tận dụng chỉ mục, lọc sai vị trí hoặc gọi nhiều lần không cần thiết. Mục tiêu là đề xuất và viết lại phiên bản tối ưu đạt gần hoặc vượt {{muc_tieu_hieu_nang}} mà vẫn giữ đúng kết quả. Nếu có {{rang_buoc_ghi_nhan}}, hãy coi đó là điều kiện bắt buộc. Khi trả lời, cần chỉ rõ điểm nghẽn, cách tối ưu đã chọn, phần nào thay đổi về độ phức tạp hoặc số lần truy cập dữ liệu, và gợi ý cách đo lại để so sánh trước/sau. Không được làm sai logic nghiệp vụ; nếu có nhiều phương án, hãy ưu tiên phương án ít rủi ro, dễ kiểm chứng và ít phụ thuộc vào hạ tầng.
Xem đã lưu

Input mẫu

{
"doan_code": "Hàm loadOrders đang gọi database trong vòng lặp cho từng user rồi gom kết quả bằng map thủ công.",
"so_lieu_do": "Thời gian trung bình 2.4s cho 500 user, 501 truy vấn mỗi lần chạy.",
"muc_tieu_hieu_nang": "Dưới 400ms và không quá 5 truy vấn",
"rang_buoc_ghi_nhan": "Không đổi cấu trúc dữ liệu trả về của API"
}

Output mẫu

{
"phan_tich": "Nút thắt chính là N+1 query do truy vấn trong vòng lặp.",
"toi_uu": "Chuyển sang lấy hàng loạt bằng một truy vấn có IN/joins, sau đó nhóm dữ liệu trong bộ nhớ.",
"ket_qua_ky_vong": "Giảm còn 2 truy vấn chính và giữ nguyên cấu trúc response hiện tại."
}

Cách sử dụng

Đưa vào code thật cùng số liệu đo thật, rồi dán vào Codex. Sau khi nhận kết quả, áp dụng bản sửa, chạy lại benchmark hoặc test hiệu năng, và đối chiếu đầu ra để bảo đảm tối ưu nhưng không đổi kết quả nghiệp vụ.

Giải thích cấu trúc

Role
Vai trò là chuyên gia tối ưu code dữ liệu với trọng tâm là hiệu năng và tính đúng.
Context
Bối cảnh là lớp truy cập dữ liệu hoặc truy vấn đang vượt ngưỡng chấp nhận.
Task
Tìm nguyên nhân chậm, đề xuất cách viết lại và chỉ ra cách đo lại.
Constraints
Phải giữ đúng kết quả, tôn trọng ràng buộc ghi nhận và không phá hợp đồng đầu ra.
Output
Kết quả cần nêu phân tích nghẽn, bản tối ưu và kế hoạch xác minh bằng số liệu.

Mẹo sử dụng

  • So sánh số lần truy vấn trước và sau vì đây thường là tín hiệu rõ nhất của N+1.
  • Nếu dùng ORM, kiểm tra eager loading, prefetch hoặc select cụ thể các cột cần thiết.
  • Đừng tối ưu mù bằng cache nếu vấn đề gốc là truy vấn thừa.
  • Hãy giữ một bộ test đầu ra cố định để bắt sai khác dữ liệu sau tối ưu.

Nguồn và giấy phép

ONTER biên tập · original

Đánh giá prompt

Chọn số sao theo trải nghiệm của bạn. Bạn có thể sửa đánh giá sau một phút.

Prompt liên quan

Tài khoản Onter

Đăng nhập rồi tiếp tục việc đang làm.

Mở trang đăng nhập riêng nếu trình duyệt chưa hiển thị biểu mẫu.

Contact Me on Zalo