2009-02-20 44 views
17

Trong khi câu hỏi này đặc biệt đối với Azure, tôi chắc chắn rằng đó là một tình huống phổ biến cho điện toán đám mây nói chung.Azure Task Scheduler

Tôi có một danh sách các tác vụ mà tôi cần chạy vào một thời điểm nhất định. Với một máy chủ của cửa sổ, tôi có thể sử dụng Task Scheduler và lên lịch cho chương trình của mình chạy vào một thời điểm nhất định. Tôi có thể đi xa hơn một bước và tạo ra một dịch vụ windows sẽ chạy ở một khoảng thời gian nhất định và sau đó thực hiện nhiệm vụ thích hợp.

Có ai có đề xuất về phương pháp tốt nhất là dành cho môi trường điện toán đám mây không?

Tôi có thể tạo vai trò công nhân thăm dò danh sách nhiệm vụ mỗi giây và sau đó ném nhiệm vụ thích hợp vào hàng đợi được xử lý bởi vai trò công nhân khác.

Tôi có thể tạo vai trò công nhân sẽ chạy mỗi ngày một lần, lấy tất cả các nhiệm vụ và gửi chúng lên hàng đợi. Sau đó, vai trò bộ xử lý sẽ kéo một mục ra khỏi hàng đợi và xử lý vào thời điểm thích hợp.

Bất kỳ đề xuất nào khác?

+2

Kiểm tra các Azure Toolkit (http: //azuretoolkit.codeplex .com). Nó bây giờ hỗ trợ lập lịch công việc 'cron'. –

Trả lời

1

Bản sao của: Recommend a C# Task Scheduling Library đề xuất Quartz.Net. Gần đây tôi đã làm việc trên một dự án sử dụng thành công này dưới Windows.

+0

Cảm ơn bạn đã liên kết. Điều đó trông giống như một thư viện tuyệt vời. Tuy nhiên, tại thời điểm này, tôi quan tâm đến các phương pháp hay nhất và phương pháp tiếp cận kiến ​​trúc. –

0

Bạn có cân nhắc sử dụng ngày hết hạn của các mục trên hàng đợi Azure không?

Tôi đã xem qua một cách tiếp cận mới để lập lịch biểu nên hoạt động trên Azure. Sử dụng các mục callbacks của ASP.NET Cache. Here.

+1

Làm thế nào điều này sẽ làm việc cho Azure - bạn không thể đăng ký gọi lại để thông báo rằng mục hàng đợi đã hết hạn, và bỏ phiếu và kiểm tra hết hạn có thể sẽ bỏ lỡ các mục. –

8

Bạn có thể thiết lập một xe buýt Queue Service và sử dụng như là lịch trình.

Gửi thư vào hàng đợi bằng cách đặt ScheduledEnqueueTimeUtc trên thư đến thời gian mong muốn và thư sẽ hiển thị trong hàng đợi tại thời điểm đó. Trong vai trò của nhân viên thực hiện/web bạn thiết lập một người nhận trên hàng đợi đó và sau đó sẽ nhận được công việc ngay khi thông báo xuất hiện, tức là công việc đã đến hạn.

Điều tuyệt vời về điều đó là bạn có thể sử dụng công cụ này để cân bằng công việc trên nhiều phiên bản và vì bộ hẹn giờ hoàn toàn nằm ngoài ứng dụng của bạn, bạn không phải lưu trữ và phục hồi và quản lý nó. SB làm tất cả những gì cho bạn.

Một lưu ý: SB không có cơ sở để hủy các tin nhắn được lên lịch.

6

Hiện nay có một vài tùy chọn để thực hiện điều này trên Azure

1

Yo có thể thử với bốn dịch vụ:

  1. Vai trò công nhân Azure (Dịch vụ đám mây)
  2. .210
  3. Azure Scheduler dịch vụ
  4. Azure Services Mobile scheduler
  5. Azure Jobs trang web Web

Đối với thông tin chi tiết xin theo liên kết Azure Schedule Tasks

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