Gần đây, chúng tôi đã gặp sự cố với cơ sở dữ liệu oracle của chúng tôi khóa trên 1 truy vấn mà chúng tôi biết cho đến nay.
Tôi sẽ chia sẻ những gì đang xảy ra tuy nhiên thực sự không liên quan gì đến câu hỏi của tôi nhưng tôi sẵn sàng góp ý.
Không liên tục không biết khi nào nó sẽ xảy ra, đã xảy ra 4 lần trong tháng qua, một người dùng, sẽ nhấp vào một cái gì đó trong ứng dụng. Những gì người dùng đang nhấp vẫn chưa được biết. Khi nhấp vào bất cứ thứ gì, nó sẽ chạy một truy vấn trên cơ sở dữ liệu sẽ tạo ra khoảng 700k Hàng.
Tôi đã kiểm tra bảng rằng truy vấn đang được chạy và các chỉ mục có vẻ tốt.
Cơ sở dữ liệu là 60 GB có 32 GB trên máy chủ.
Từ nhật ký trên máy chủ cơ sở dữ liệu tôi thấy I / O cao nhưng CPU và RAM vẫn giữ nguyên.
Một máy chủ ứng dụng, CPU tăng lên khoảng 75%. Tôi có thể tìm thấy tiến trình worker, tìm PID, tuy nhiên khi tôi giết PID được liên kết với process worker, CPU sẽ tắt nhanh và sau đó quay lại ngay.
Cũng tái chế nhóm ứng dụng và khởi động lại IIS cũng làm điều tương tự, CPU sẽ ngừng hoạt động trong một thời gian ngắn và sau đó quay lại ngay.
Điều duy nhất có thể được thực hiện để đưa máy chủ trở lại hàng là khởi động lại.
Vì vậy, đề nghị của tôi NẾU truy vấn này là nguyên nhân gây ra khóa máy có thể tăng bộ nhớ trên hộp để cho phép cơ sở dữ liệu được lưu vào bộ nhớ cache và hết bộ nhớ. Tôi đã nghe điều này một lần nhưng tôi không chắc nó có đúng không.
Bộ lưu trữ là HP PAR 3 với 3 tầng và cơ sở dữ liệu sống khá nhiều trong tầng SSD.
Đó là SSD hoặc bộ nhớ nhanh hơn