2012-06-23 23 views
7

Tôi đang phát triển máy chủ phụ trợ cho trò chơi dựa trên lượt sử dụng App Harbor và cho đến nay có vẻ như hoàn toàn phù hợp với nhu cầu của tôi. Tôi thực sự muốn chạy một quá trình nền để xử lý dữ liệu lần lượt vv và tôi đã tự hỏi nếu ai đó có thể làm rõ sự khác biệt giữa 'công nhân Web' và 'Nhân viên nền' là gì? Tôi có kinh nghiệm khá hạn chế với phát triển web, nhưng theo như tôi có thể nói 'công nhân Web' là để tương tác với các trang AJAX (mà tôi không cần) và 'Nhân viên nền' cho phép bạn chạy ứng dụng bảng điều khiển ở chế độ nền (mà tôi cần!)Sự khác biệt giữa 'Công nhân Web' và 'Nhân viên nền' trên App Harbor

Cảm ơn!

Trả lời

5

Nhân viên web được kết nối với yêu cầu từ trình duyệt và có thể nhận và gửi dữ liệu đến yêu cầu trên trình duyệt.

Công nhân nền là các chuỗi độc lập không được kết nối với bất kỳ yêu cầu nào và không thể gửi dữ liệu đến trình duyệt *.

[*] Chỉ thông qua nhân viên web.

4

Nói chung 'Nhân viên Web' là ứng dụng web hoặc trang web/dịch vụ ASP.NET xử lý các yêu cầu từ người dùng. 'Nhân viên nền' chỉ đơn giản là một tác vụ được lên lịch. Nó chạy trong nền, trong khoảng thời gian xác định, và thực hiện một số mã.

Sự khác biệt là một nhân viên Web thực hiện một số công việc khi có yêu cầu mới đến ứng dụng. Một yêu cầu có nghĩa là ai đó tải một trang/gọi một dịch vụ web trên ASP.NET. Trong khi nhân viên nền đang được bắt đầu vào một khoảng thời gian nào đó và không cần người dùng tải trang được thực thi. Nó chủ yếu được sử dụng để xử lý các tác vụ dài hạn. Luồng công việc thông thường là - nhân viên web nhận được yêu cầu từ người dùng và xếp hàng một số dữ liệu cần xử lý. Trong lần chạy tiếp theo, nhân viên nền sẽ lấy dữ liệu và xử lý nó, và lưu trữ dữ liệu ở đâu đó (thường là trong cơ sở dữ liệu). Sau đó, nhân viên web, theo yêu cầu tiếp theo từ người dùng, kiểm tra cơ sở dữ liệu và nếu kết quả có - hiển thị nó cho người dùng.

Bằng cách này, người dùng không cần phải đợi trang asp.net xử lý dữ liệu và trả lại kết quả ngay lập tức.

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