Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

LINQ to SQL:Sử dụng CPU quá nhiều:Điều gì xảy ra khi có nhiều người dùng

Hồ sơ. Hồ sơ. Hồ sơ.

Hồ sơ để tìm ra chính xác truy vấn nào đang chiếm nhiều tài nguyên nhất và cải thiện hiệu suất của truy vấn đó. Bạn có thể sử dụng thuộc tính Log của DataContext để xem SQL - xem bài viết này . Bạn có thể nhận các kế hoạch truy vấn cho một truy vấn trong SQL Server - xem bài viết này .

Ví dụ về các cách cải thiện truy vấn:

  • Thêm các chỉ mục còn thiếu.
  • Viết lại truy vấn để tận dụng các chỉ mục đã có.
  • Không tìm nạp quá nhiều dữ liệu cho mỗi truy vấn - sử dụng phân trang và chỉ tìm nạp thêm hàng khi được yêu cầu. Không tìm nạp các trường bạn không cần.
  • Không tìm nạp quá ít dữ liệu cho mỗi truy vấn - không tạo vòng lặp tìm nạp từng hàng một. Tìm nạp nhiều hàng cùng một lúc.

Khi bạn đã hoàn thành việc đó, hãy lập hồ sơ một lần nữa để kiểm tra xem bạn đã cải thiện hiệu suất của truy vấn đó chưa. Nếu không, hãy lặp lại cho đến khi bạn có.

Sau đó, hãy lập hồ sơ một lần nữa để xem truy vấn sát thủ tiếp theo là gì và lặp lại quy trình cho đến khi hiệu suất của bạn có thể chấp nhận được.

Bạn nói rằng bạn đã lập hồ sơ, nhưng bạn chưa đăng bất kỳ thông tin hồ sơ nào như truy vấn, kế hoạch truy vấn, thời gian thực hiện, tần suất truy vấn, v.v. Nếu không có thêm thông tin hồ sơ, tất cả những gì chúng tôi có thể làm là đoán.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. THỜI GIAN THỐNG KÊ trong SQL Server là gì?

  2. SQL được tạo động so với các tham số trong SQL Server

  3. Cách tốt nhất để bắt lỗi vi phạm ràng buộc duy nhất của sql trong c # trong khi chèn

  4. Là một hàm có giá trị bảng có thể cập nhật được

  5. Làm thế nào để lấy tổng của cột có cùng id trong SQL?