Có tình huống nào chúng ta nên sử dụng dịch vụ cửa sổ không?
Tôi đang xây dựng một dự án client-server (C#) và máy chủ phải làm việc một mình mà không cần bất kỳ người dùng nào để người khác khuyên tôi sử dụng dịch vụ windows để chạy máy chủ, đúng không? hoặc có một giải pháp tốt hơn?Khi nào chúng tôi sử dụng dịch vụ windows?
Trả lời
Trong trường hợp của bạn tôi sẽ sử dụng dịch vụ vì những lý do sau đây:
- Bạn không cần phải có một phiên chạy. Điều này là tốt cho an ninh, và cũng làm giảm chi phí trên máy chủ.
- Bạn nhận được một số các lệnh managment xây dựng vào miễn phí
- Bắt đầu
- Dừng
- Pause
- Tiếp tục
- Bạn có thể xử lý các sự kiện máy chủ như tắt máy.
Bạn nên tạo Dịch vụ Windows để chạy mã trong nền mà không cần tương tác của người dùng.
Ví dụ: Dịch vụ Windows sẽ chạy ngay cả khi không có ai đăng nhập.
Bất kỳ máy chủ nào chấp nhận kết nối (chẳng hạn như thư, web hoặc máy chủ FTP) thường phải là Dịch vụ Windows.
Dịch vụ Windows thường được sử dụng khi ứng dụng cần chạy liên tục. Ví dụ: nếu họ cần:
- Đợi yêu cầu đến. (Giống như qua remoting hoặc WCF)
- Giám sát một hệ thống hàng đợi, tập tin, vv
Nếu một chương trình chỉ cần chạy theo định kỳ, giống như ngày một lần. Việc tạo một tác vụ được lập lịch thông thường dễ dàng hơn.
Dịch vụ Windows có thể bắt đầu chạy ngay sau khi máy được cấp nguồn, điều này lý tưởng cho việc chạy máy chủ, ví dụ http máy chủ. Không ai được yêu cầu đăng nhập.
Vâng, một Dịch vụ Windows cung cấp một khung làm việc đầy đủ cho ứng dụng của bạn và duy trì hoạt động trong khi bạn muốn nó hoạt động, vì vậy tôi nghĩ nó ổn.
dịch vụ Windows là điều đúng đắn để sử dụng cho cái gì đó nên chạy tất cả các thời điểm đó, có hay không một người dùng đăng nhập.
Nếu bạn cần một cái gì đó để chạy mà không có một người sử dụng hoạt động đăng nhập, bạn cần để sử dụng dịch vụ windows.
Khi bạn cần ứng dụng bắt đầu chạy ngay cả khi không có ai đăng nhập vào máy, điều này phổ biến với máy chủ, dịch vụ là ứng cử viên tốt trong trường hợp này. Đặc biệt là vì dịch vụ có thể được cấu hình để tự khởi động, có nghĩa là dịch vụ sẽ bắt đầu khi máy được khởi động lại với sự can thiệp của con người.
Tuy nhiên, nếu bạn đang muốn đăng cai các dịch vụ web (WCF) trong khi một dịch vụ là một lựa chọn, bạn có thể xem xét lưu trữ trong IIS, điều này giúp bạn thoát viết mã lưu trữ thực tế, vv
- 1. Sử dụng dịch vụ MFC trong Windows?
- 2. Sử dụng Ninject với Dịch vụ Windows
- 3. Sử dụng Thread.Sleep() trong Dịch vụ Windows
- 4. Dịch vụ WCF và Dịch vụ Windows
- 5. "sử dụng net" lệnh trong một dịch vụ Windows
- 6. Cách chạy tác vụ khi dịch vụ windows khởi động?
- 7. khi nào sử dụng dịch vụ in hai mặt?
- 8. Android: Khi nào sử dụng Dịch vụ so với Singleton?
- 9. Sử dụng Dịch vụ web trong C# Windows App
- 10. Khi nào thì không nên sử dụng dịch vụ web?
- 11. Ở đâu/khi nào chúng tôi sử dụng JSON?
- 12. Sử dụng ajax để gọi dịch vụ web khi Windows Authentication được bật?
- 13. Cách sử dụng giá trị của appSettings từ tệp App.Config khi tạo Dịch vụ Windows
- 14. Dịch vụ Android dừng khi tôi thoát khỏi ứng dụng
- 15. Tôi nên sử dụng quy ước đặt tên nào trong mô hình dịch vụ Ngăn xếp dịch vụ?
- 16. sử dụng dịch vụ ntp
- 17. Ứng dụng của chúng tôi phá vỡ ứng dụng WCF của chúng tôi
- 18. Khi nào tôi cần sử dụng @WebServiceRef?
- 19. Khi nào chúng ta sử dụng ANTLR
- 20. MSDeploy để cài đặt dịch vụ windows?
- 21. ClickOnce triển khai Dịch vụ Windows?
- 22. Ứng dụng Java EE với MySQL - Dịch vụ đám mây nào tôi sẽ sử dụng?
- 23. Khi nào nên sử dụng dịch vụ dữ liệu WCF và khi nào thì không?
- 24. dịch vụ Windows sẽ tự động dừng
- 25. Dịch vụ Windows trên EC2?
- 26. Dịch vụ Windows C# Phương pháp chính
- 27. Mở rộng các Dịch vụ Windows
- 28. Làm thế nào để sử dụng Fiddler để giám sát một Dịch vụ Windows?
- 29. Cách tạo Dịch vụ Windows Celery?
- 30. Làm cách nào để thêm Dịch vụ hệ thống của riêng chúng tôi trong Android Framework?
Nếu bạn đi với một dịch vụ , đảm bảo bạn không bật lên hộp thoại tin nhắn hoặc bất kỳ thứ gì. Có vẻ như thông thường, nhưng tôi đã thấy nhiều lần một ứng dụng được phát triển như một ứng dụng chung, nơi các hộp thông báo và các thông báo được sử dụng để gỡ lỗi, sau đó nó được triển khai dưới dạng dịch vụ mà không xóa các hộp thoại gỡ lỗi đó. –