Is there any product that will allow us to schedule via an api , and then if the time is triggered then it should call the destination via webhook(with payload preferably )
Right now we are using quartz scheduler which has more configuration (Including Mysql Connection ) .<p>Cons are 1) Does not have an admin UI 2) No reporting or history of jobs<p>Thanks
Nomad by Hashicorp. You have to do just a little legwork to get it to call an API - just schedule a job that calls the appropriate curl command. When I'm explaining it to people, I explain it is a "distributed cron". You schedule a job either using the command line or via an API to the Nomad server and then it runs the job on any box that has the Nomad agent running and registered to the server. If you combine Nomad with Consul, configuration is dead simple.<p><a href="https://www.nomadproject.io" rel="nofollow">https://www.nomadproject.io</a>
There are a few online tools, such as:<p><a href="https://www.easycron.com/" rel="nofollow">https://www.easycron.com/</a><p><a href="https://www.setcronjob.com/" rel="nofollow">https://www.setcronjob.com/</a><p>etc. You might be as well writing your own though, since it shouldn't be a difficult task.
I'm surprised no one's mentioned Chronos - it takes a butt load of setup because it runs on top of Mesos (which requires Zookeeper) etc - but if you already have these tools in your stack it's a pretty tidy clustered scheduler: <a href="https://medium.com/airbnb-engineering/chronos-a-replacement-for-cron-f05d7d986a9d" rel="nofollow">https://medium.com/airbnb-engineering/chronos-a-replacement-...</a><p>Edit: if you haven't got this stack around though i'd second calls to use a build tool like Jenkins or Rundeck - of course you probably don't want this on the same Jenkins that builds your jobs... so you'd have to set all that up
Google app engine has a cron service:<p><a href="https://cloud.google.com/appengine/docs/standard/python/config/cronref" rel="nofollow">https://cloud.google.com/appengine/docs/standard/python/conf...</a><p>You'll have to create an app handler for the URL which can then make the outbound http request. It's inexpensive, reliable and has an admin interface and logs.
Something like Azure Storage Queues and Functions may be what you're looking for<p><a href="https://aaron-hoffman.blogspot.com/2017/01/replace-azure-scheduler-with-azure.html" rel="nofollow">https://aaron-hoffman.blogspot.com/2017/01/replace-azure-sch...</a>
I agree that Nomad is a GREAT solution for this... but another thing to look at is Rundeck <a href="http://rundeck.org/" rel="nofollow">http://rundeck.org/</a>
I would use Jenkins, although marketed as CI tool, can do what you asked. And has a lot of customization.<p><a href="https://jenkins.io/" rel="nofollow">https://jenkins.io/</a>
with a friend we did : <a href="https://www.jobscheduler.xyz/" rel="nofollow">https://www.jobscheduler.xyz/</a>
it's an MVP but it works well for our projects (chatbot, emailing service...)