Tuần trước một cái gì đó kỳ lạ đã xảy ra trên cơ sở dữ liệu của chúng tôi. Thật bất ngờ, ứng dụng đã chặn những người dùng của chúng tôi không thể lưu các thực thể mới, v.v. Sau khi xem Trình giám sát hoạt động của SQL Server (2008 với chế độ tương thích 2005), tôi thấy ba mục sau:
Sau một thời gian, người dùng đã hết thời gian kết nối. Khi tôi giết tiến trình 64, chúng có thể lưu lại bình thường.
Vấn đề là các thực thể mà chúng cố lưu trong khối được chèn vào DB nhiều lần (tối đa 3 lần) mặc dù có mã nên ngăn điều này xảy ra (cột số phải là duy nhất nhưng không có ràng buộc ... kiểm tra xảy ra trong mã).
Chúng tôi sử dụng Entity Framework 6.0.
- Có ai trong số các bạn biết tại sao và khi các loại chờ ASYNC_NETWORK_IO này xảy ra không và làm thế nào để tránh chúng?
- Và chính xác thì chúng có ý nghĩa gì?