containerised optaPlanner, job scheduling, docker

419 views
Skip to first unread message

Isaac Zhang

unread,
Sep 23, 2015, 12:09:10 AM9/23/15
to OptaPlanner development
Hi,

I want to provision constraint optimisation based on optaPlanner as a SaaS model. We package several use cases and allow developers to access the service through API and parse the data through API or cloud storage. The architecture should allow flexible job scheduling and auto-scalability to accommodate complex system integration and varying service loads.

I wonder if an architecture similar to http://tech.adroll.com/blog/data/2015/09/22/data-pipelines-docker.html will fit? 

In short, we can try to containerised the optaPlanner, run it on docker-compatible service orchestration platforms (ECS, Fabric8?) and use scheduling tools to for high-level job orchestration. Is there anyone with experience in provisioning such as service? or any advice? Anything would be greatly appreciated.

Thanks,
Isaac

Geoffrey De Smet

unread,
Sep 23, 2015, 8:08:50 AM9/23/15
to optapla...@googlegroups.com, Roger Martinez Palleja
I am also interested in experience in this this area.
Any suggestions to improve OptaPlanner upstream to fit better into such an an environment will be taken very seriously.

In time, we plan to build:
- OptaPlanner Execution Server (which is a REST server for OptaPlanner, similar to Drools Execution Server)
- Deploy OptaPlanner Execution Server to OpenShift 3 (which is based on docker)
- A docker example of optaplanner-webexamples

With kind regards,
Geoffrey De Smet

--
You received this message because you are subscribed to the Google Groups "OptaPlanner development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to optaplanner-d...@googlegroups.com.
To post to this group, send email to optapla...@googlegroups.com.
Visit this group at http://groups.google.com/group/optaplanner-dev.
For more options, visit https://groups.google.com/d/optout.

pra...@vitamap.com

unread,
Oct 6, 2015, 6:24:57 AM10/6/15
to OptaPlanner development, roma...@redhat.com
Hi Issac,

Same here, very much interested if the OptaPlanner moves in this direction (API driven data streaming of problem and solution).
Would love to see/use what you will build.

Hi Geoffrey,

I am very much a newbie in Optaplanner but very interested to use.

As a start we have started experimenting simple job route optimization and allocation to integrate with our mobile workforce management product.

Webexample has been taken as reference (6.4 with RESTapi)  and are building rest of the components around it (problem reading/UI/configuration).

- User uploads data from UI/or received from API (CRM/ERP) for optimization or allocation (Stored mostly in a mongodb)
- Runs the job through API (future can be offloaded to on demand cloud workers (eg Iron worker)
- On completion downloads it or pushed to allocation systems/mobile

One suggestion (not on architecture) is to make webexample configurable (Interface to have problem, solution & configuration) and Remove restriction on session storage.
Allow problem upload and solution download (xls/json ?)

This might make easier to integrate with simple applications (not necessarily large scale SaaS problem Issac is talking)

Thanks,
Prasad

Anton Hughes

unread,
Oct 7, 2015, 4:31:29 PM10/7/15
to OptaPlanner development, roma...@redhat.com
 Geoffrey
In time, we plan to build:
- OptaPlanner Execution Server (which is a REST server for OptaPlanner, similar to Drools Execution Server)
- Deploy OptaPlanner Execution Server to OpenShift 3 (which is based on docker)
- A docker example of optaplanner-webexamples
Do you need a hand with any of this?  

Geoffrey De Smet

unread,
Dec 1, 2015, 10:01:31 AM12/1/15
to optapla...@googlegroups.com
Contributions are always welcome :)

These are big features though and there's still a lot of uncertainty on how to design these
(although they 'll reuse the drools/jbpm execution server and workbench code as much as possible to simplify integration with drools workbench)
so if you want to contribute, I might suggest looking at smaller issues first (go through our jira and our stackoverflow questions).

With kind regards,
Geoffrey De Smet

Reply all
Reply to author
Forward
0 new messages