Something is deeply wrong with this world.)
Introducing Chronos: A Replacement for Cron
51–60 of 63 posts
Re: Introducing Chronos: A Replacement for Cron
#52Earlier quoted context omitted.
One example that jumps to mind was that I was able to rip out several hundred lines of fiddley retry and backoff code and replace it with fine-grain-timed repeating events. One advantage to doing this in Redis was that our events aren't just "run a program" (though we can do that); we can also push onto a queue that consumers BLPOP from, or send a pubsub message to a bunch of consumers, or increment counters. later M…
You will get said timer support in Redis 2.8 with the ability to subscribe to keyspace events, which includes keys expiring (with millisecond resolution). https://github.com/antirez/redis/issues/594 psubscribe __keyevent@0__:expired cron_* psetex cron_run-me-in-1s 1000 0
Re: Introducing Chronos: A Replacement for Cron
#53Earlier quoted context omitted.
My C is terrible, probably far worse than you perceive yours to be. I'm sorry you feel that way. I hope you change your mind, advancing years or no. I'm with Sillysaurus, this is a great solution to a common problem. Pawn off the code onto me and I'll publish it under my name if you're that worried about getting bad publicity. :P
I actually feel very good about my C code; C is my native language. I just feel very bad about the Internet. :)
I laughed first, then realised there is more than a ring of truth to that line :/
If you do release (pseudonymously or otherwise), then release it and please announce to those of us, who are all genuinely interested in it in the first place :)
Re: Introducing Chronos: A Replacement for Cron
#54Anyone know why launchd hasn't taken off in this regard? I've used it on my personal systems with success, but rarely (if ever) see it mentioned as a cron replacement. Instead, you frequently see these solutions done from scratch.
Seriously, plists suck.
Re: Introducing Chronos: A Replacement for Cron
#55The crontab file has a weird syntax, that in some respects seems to look like a shell script, but isn't really one and some shell constructs work, other not. There are lots of ways you can make a mistake in writing the commands to be executed in a way that the command you intended won't run but will fail silently and you won't get any trace of an error happening. It is hard to even extract some common parts of commands and put them into a variable. I wasted hours and hours debugging weird cron errors. One case was where the crontab of one of the users was moved over to be the system crontab and strangely didn't work. Well, turns out the system wide crontab has one more field, but cron will not signal an error even in an obvious case like this, it will just fail silently (and this is the thing cron is really good at in my experience).
Re: Introducing Chronos: A Replacement for Cron
#56Awesome! If anyone's ever had to use Ctrl-M or AutoSys, you know well the supreme horridness of other solutions in this space.
Re: Introducing Chronos: A Replacement for Cron
#57I am using a similar tool for job automation, history & alert, and it is called Jenkins :)
Re: Introducing Chronos: A Replacement for Cron
#58Earlier quoted context omitted.
I don't think it's uncommon at all to roll your own job scheduler. I know I've done it at the last two places I have worked, though neither had nearly as fancy a front-end as Chronos appears to have. This particular scheduler (Chronos) looks like a cross between traditional cron and HPC cluster job scheduling systems (a la Sun Grid Engine). It looks like a really cool project.
That depends on what you mean by job scheduling, right? Lots of people would call Resque a job scheduling system, but they still reach for cron when they want to run something every 5 minutes.
Periodic execution. Anything else, is something else. Resque is a job queing system that executes jobs based on resource availability, rather than time. That's why you use queues.
Re: Introducing Chronos: A Replacement for Cron
#59I am using a similar tool for job automation, history & alert, and it is called Jenkins :)
Re: Introducing Chronos: A Replacement for Cron
#60Earlier quoted context omitted.
One example that jumps to mind was that I was able to rip out several hundred lines of fiddley retry and backoff code and replace it with fine-grain-timed repeating events. One advantage to doing this in Redis was that our events aren't just "run a program" (though we can do that); we can also push onto a queue that consumers BLPOP from, or send a pubsub message to a bunch of consumers, or increment counters. later M…
You will get said timer support in Redis 2.8 with the ability to subscribe to keyspace events, which includes keys expiring (with millisecond resolution). https://github.com/antirez/redis/issues/594 psubscribe __keyevent@0__:expired cron_* psetex cron_run-me-in-1s 1000 0
Currently keys don't actually really expire from the datastore until someone tries to access it after its TTL runs out. Changing redis so it will actually actively expire keys at the precise time the TTL runs down sounds expensive... but I would love that feature nonetheless.