2010-05-21 29 views
5

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?

+3

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 đó. –

Trả lời

6

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.
1

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.

7

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:

  1. Đợi yêu cầu đến. (Giống như qua remoting hoặc WCF)
  2. 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.

6

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.

1

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.

1

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.

1

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

Các vấn đề liên quan