Tôi có câu hỏi về cách tốt nhất để kiểm tra xem dịch vụ có đang chạy hay không.Cách tốt nhất để kiểm tra xem dịch vụ có treo số
Trước tiên hãy làm rõ một chút. Dịch vụ tôi có là một ứng dụng C# có thể chạy từ dòng lệnh hoặc có thể chạy dưới dạng Dịch vụ Windows. Chức năng của dịch vụ là kiểm tra các thay đổi đối với nguồn dữ liệu của bên thứ ba từ xa và xử lý các thay đổi đó trước khi thêm chúng vào kho lưu trữ dữ liệu cục bộ của chính chúng ta.
Tôi muốn có thể xác định thời điểm dịch vụ ngừng hoạt động vì bất kỳ lý do gì và thông báo cho ai đó khi điều này xảy ra tự động nhất có thể. Điều này cần xảy ra bất kể dịch vụ đang được chạy dưới dạng Dịch vụ Windows hay từ dòng lệnh.
Tôi đã xem xét theo dõi lưu trữ dữ liệu cục bộ để thay đổi và thông báo khi các thay đổi không xảy ra trong một khoảng thời gian nhất định, tuy nhiên điều này đã được chứng minh là quá không nhất quán, vì tần suất thay đổi đối với bên thứ 3 nguồn dữ liệu biến đổi, có nghĩa là việc thiếu thay đổi kéo dài không nhất thiết cho thấy dịch vụ đã ngừng hoạt động, nó chỉ có thể là không có thay đổi!
Có bất kỳ đề xuất nào về cách tôi có thể tiến hành theo dõi việc này không? Bất cứ ai có kinh nghiệm làm việc với một cái gì đó tương tự?
Cảm ơn, M
Sửa 1 Chỉ cần đưa ra một ý tưởng thô của cách làm việc của dịch vụ: Các dịch vụ bên thứ 3 làm tăng sự kiện khi mới/cập nhật dữ liệu có sẵn để phục vụ tôi ngồi và chờ đợi những sự kiện này được nâng lên và xử lý dữ liệu được trả lại trong sự kiện được nêu ra. Vì vậy đây là lý do tại sao nó khó để xác định khi có "không có thay đổi" thay vì "dịch vụ bị rơi".
Chỉnh sửa 2 Tôi nghĩ rằng tôi cần phải được rõ ràng hơn một chút: Lý do chính để giám sát này là để thông báo cho người dùng về một vấn đề tiềm năng hoặc với dịch vụ hoặc với kết nối với dịch vụ bên thứ 3. Bản thân dịch vụ là một luồng đơn và có xử lý và ghi nhật ký ngoại lệ phù hợp. Rất có thể dịch vụ này sẽ được chạy trên một máy chủ ở đâu đó vì vậy nếu có bất kỳ vấn đề nào với dịch vụ và nó ngừng cập nhật kho dữ liệu cục bộ của chúng tôi vì bất kỳ lý do nào dịch vụ cần thông báo cho ai đó.
Dịch vụ của bạn có một số loại vòng lặp bỏ phiếu không? –
Bạn có thể cho chúng tôi thấy một phác thảo Pseudo về những gì dịch vụ của bạn thực sự làm không? Chúng tôi có thể giúp xác định một nơi để định vị một dạng nhịp tim nào đó. – KingCronus