Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add scheduler support for Local server #2454

Closed
aritzbastida opened this issue Sep 28, 2018 · 14 comments
Closed

Add scheduler support for Local server #2454

aritzbastida opened this issue Sep 28, 2018 · 14 comments
Labels
type/help-needed Calling help

Comments

@aritzbastida
Copy link

Currently, there is only support for PCF Scheduler in Spring Cloud Data Flow. As a result, using any other runtime will raise exceptions when trying to use the scheduler "feature toggle".

Are there any plans to add Local Server scheduler support to the mix? It would be fine either to integrate it with Spring Scheduler or Quartz. Currently, the only options for scheduling with the Local server are to do it externally (maybe a cron process launching through the shell) or using triggertask. But both options are quite convoluted, comparing to the "Schedule" button in the Dashboard...

@sabbyanandan sabbyanandan added the type/help-needed Calling help label Oct 1, 2018
@sabbyanandan
Copy link
Contributor

sabbyanandan commented Oct 1, 2018

Hi, @aritzbastida. We are currently working on Kubernetes implementation. There's plan to add a Local implementation in the future, though.

In the meantime, it'd be great if you can contribute it to the project. You can use the CF and K8s as reference implementations of the SPI. We would love to work with you by reviewing the PR and guide you in the process.

There's an empty repo for it - we welcome PRs!

@aritzbastida
Copy link
Author

Thanks for your feedback, @sabbyanandan! I'm on holidays for the next three weeks (honey moon!), but I'll try to contribute to the Local implementation when I come back.

Just to be sure, Quartz integration is preferred over Spring's internal TaskScheduler, right? Quartz allows to persist the scheduling information, so that would make sense.

@Manokethan
Copy link

Manokethan commented Oct 5, 2018

Hi @aritzbastida and @sabbyanandan.

i'am interessed by the project quartz integration.. I will try this weekend to contribute to the project. i got some ideas in mind, do you advise to launch the scheduled task by the LocalTaskLauncher from spring-cloud-deployer or via rest api ?
.
Advance thanks

@sabbyanandan
Copy link
Contributor

@aritzbastida / @Manokethan: Great! Thanks for the continued interest in SCDF.

I'd suggest looking at the K8s-scheduler implementation for reference. It uses the Fabric8 client to perform the REST operations [see example]. Likewise, the CF-scheduler implementation uses PCF-java-client.

@Manokethan
Copy link

Manokethan commented Oct 9, 2018

Hi @sabbyanandan,

As promised, I worked on quartz integration in SCDF. You can see the result in my repo: https://github.com/Manokethan/spring-cloud-scheduler-quartz

I am a beginner in the world of spring. It is also the first time I contribute on github. Could you review the code and guide me in the process?

Hoping that the implementation follows your ideas.

Thank you beforehand.

@sabbyanandan
Copy link
Contributor

Great. Thanks for the update! Before we start to review the work, please make sure you follow the contributor guide, so the subtle things are taken care of right away.

Once when you're ready with it, please submit a pull-request against spring-cloud-scheduler-quartz repo.

@Manokethan
Copy link

Manokethan commented Oct 9, 2018

Thanks for your quick answer. I tried to make a pull request but he redirects me to the main page of the repo showing that it is empty...

@sabbyanandan
Copy link
Contributor

Fixed that. Please retry.

@Manokethan
Copy link

Manokethan commented Oct 9, 2018

thanks, it worked. I submitted a pull request spring-attic/spring-cloud-scheduler-quartz#1

@rtrompier
Copy link

Hi guys,
Any news about this feature ?
Thx ;)

@cppwfs
Copy link
Contributor

cppwfs commented May 21, 2019

Our team has discussed this addition to the Spring Cloud Data Flow project. At this point we will not be supporting a local scheduler..

@cppwfs cppwfs closed this as completed May 21, 2019
@deshanshehntha
Copy link

Hi, Are there any updates for this issues ? Still no scheduler for SCDF local ?

@f3l1xss
Copy link

f3l1xss commented Jan 24, 2021

I find it quite baffling for this seemingly basic feature to be missing

@sabbyanandan
Copy link
Contributor

Hi, folks. As you might have read in the docs or StackOverflow threads, the local impementation of the SCDF is recommended for dev/sandbox experimentation, and there are no resiliency patterns backed into the local deployment experience. Scheduling happens to be one of the critical components that you'd expect to have non-functional requirements baked-in, and we didn't want to add support for it and not meet the expectations fully.

The Local experience is intentionally not built with HA/FT in mind. Instead, using a platform like Kubernetes (and its native cronjob spec) would help orchestrate the scheduled launches more efficiently and predictably — the platform here takes the responsibility of resilient operations. I hope this clarifies our position.

All that said, there are few options to build and wrap a scheduler implementation that matches your desired deployment model, and we have them listed in the Microsite for reference (see under Local tab).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type/help-needed Calling help
Projects
None yet
Development

No branches or pull requests

7 participants