﻿<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Ayende @ Rahien</title><link>http://ayende.com</link><description>Ayende @ Rahien</description><copyright>Copyright (C) Ayende Rahien  2004 - 2021 (c) 2026</copyright><ttl>60</ttl><item><title>Moti commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>@Gene

I do provide the ability to run the quartz tasks manually, I just do it from my own interface and application, under my own security model, under my own business logic (some tasks I won't allow running during work hours, unless you mark the application as 'down for repairs'), under my scalability model - basically, under my terms.

I want full control over my app. I can get it with task scheduler as well, but i have to work twice as hard.</description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment19</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment19</guid><pubDate>Tue, 15 May 2012 12:07:37 GMT</pubDate></item><item><title>njy commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>@Ken: i was referring to task scheduler specifically, that's only on windows. on *nix there's cron, i agree</description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment18</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment18</guid><pubDate>Mon, 14 May 2012 21:33:20 GMT</pubDate></item><item><title>Rafal commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>Oh come on, unix has console too but it's lame compared to windows cmd.exe</description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment17</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment17</guid><pubDate>Mon, 14 May 2012 19:03:27 GMT</pubDate></item><item><title>Ken Egozi commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>@nyt - win only? *nix has crond 

OS schedulers are pretty darn good. </description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment16</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment16</guid><pubDate>Mon, 14 May 2012 17:37:20 GMT</pubDate></item><item><title>Karep commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>@Daniel: If you run SQL jobs then ok.</description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment15</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment15</guid><pubDate>Mon, 14 May 2012 17:13:08 GMT</pubDate></item><item><title>Karep commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>Thanks for letting me know about TopShelf guys!</description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment14</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment14</guid><pubDate>Mon, 14 May 2012 17:10:30 GMT</pubDate></item><item><title>Daniel commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>If I am alreading using SQL Server, does anyone have a reason to not use it as a scheduler? 

http://msdn.microsoft.com/en-us/library/ms187880</description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment13</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment13</guid><pubDate>Mon, 14 May 2012 16:24:38 GMT</pubDate></item><item><title>Gene Hughson commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>Moti...that sounds more like a people problem than a technical problem.  I see the ability to manually run something as a big win in the flexibility column.</description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment12</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment12</guid><pubDate>Mon, 14 May 2012 15:26:05 GMT</pubDate></item><item><title>Moti commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>@James
The sys admin thing is the main reason why i stopped using windows task scheduler and moved to quartz.

My app needs something done every 72 hours? great. it is still a part of my  app. Let me administer that myself (if needed, let the power user access to tasks admin page).

One of the worst things that can happen in production, is that a time sensitive task runs since some idiot decided to right click and ran it. Task scheduler won't even tell you who did it.</description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment11</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment11</guid><pubDate>Mon, 14 May 2012 12:23:51 GMT</pubDate></item><item><title>njy commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>+1 James for console + win scheduler (only on win, of course)</description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment10</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment10</guid><pubDate>Mon, 14 May 2012 12:11:00 GMT</pubDate></item><item><title>John commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>There are a number of Task Scheduler wrapper libraries you could use, such as http://taskscheduler.codeplex.com/
</description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment9</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment9</guid><pubDate>Mon, 14 May 2012 11:44:31 GMT</pubDate></item><item><title>James Newton-King commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>Windows Task Scheduler + a console application is the way to go.

Simple, easy to debug and sys admins can go in and mess around with scheduling if they so desire.</description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment8</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment8</guid><pubDate>Mon, 14 May 2012 11:31:55 GMT</pubDate></item><item><title>Steve Kennaird commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>I think Ayende is talking about a one-off in a project so for simple tasks, sure, learning Quartz (and Topshelf) would be overkill. 
But when you start getting a collection of scheduled tasks, all running on different triggers, sharing logic and data layer etc, Quartz provides a decent framework and enforces patterns via IJob. Doesn't have to impact on the main app too much (or at all) if it's in its own solution whilst referencing only the projects it depends on from the main app's solution.</description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment7</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment7</guid><pubDate>Mon, 14 May 2012 11:16:59 GMT</pubDate></item><item><title>Mads Topro commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>To schedule on Windows Task Scheduler need I create a simple console application to put it there?</description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment6</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment6</guid><pubDate>Mon, 14 May 2012 11:03:03 GMT</pubDate></item><item><title>Rafal commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>Quartz is an overkill for such a simple task - .Net gives you timers so all you need to do is to store job status &amp; execution time somewhere... Don't make a pig of your application by adding unnecessary external dependencies, writing the execution time to a file is easier to do than learning quartz.net or topshelf.</description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment5</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment5</guid><pubDate>Mon, 14 May 2012 10:53:07 GMT</pubDate></item><item><title>Wesley commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>I agree on using the builtin scheduling features of the OS.
Writing code makes it more complex and a source for bugs and problems and more code to maintain.</description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment4</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment4</guid><pubDate>Mon, 14 May 2012 10:39:54 GMT</pubDate></item><item><title>Steve Kennaird commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>We use Quartz.NET with Topshelf in production, found it to be very reliable. Add decent logging and email notifications on success/error and you can near enough "set and forget" it.</description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment3</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment3</guid><pubDate>Mon, 14 May 2012 10:12:16 GMT</pubDate></item><item><title>Andre commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>Or use a scheduling framework like Quartz.NET (http://quartznet.sourceforge.net)</description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment2</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment2</guid><pubDate>Mon, 14 May 2012 09:30:25 GMT</pubDate></item><item><title>Jonathan Gill commented on Rotten Scheduling: Don&amp;rsquo;t roll your own</title><description>Why would you not use http://quartznet.sourceforge.net/  + topshelf </description><link>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment1</link><guid>http://ayende.com/155489/rotten-scheduling-don-t-roll-your-own#comment1</guid><pubDate>Mon, 14 May 2012 09:18:42 GMT</pubDate></item></channel></rss>