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

Replace Akka by a Thread Pool / Executor service #398

Closed
cescoffier opened this Issue Dec 28, 2014 · 6 comments

Comments

Projects
None yet
2 participants
@cescoffier
Member

cescoffier commented Dec 28, 2014

Initially I decided to use Akka for its actor model. But after some time I realize I'm using it as a pure thread pool. It's a big big for a thread pool (as it requires Scala).

We should replace it by a better thread pool service, maybe using Quartz (http://quartz-scheduler.org/generated/2.2.1/html/qs-all/#page/Quartz_Scheduler_Documentation_Set%2Fco-abt_quartz_features.html%23) or pure Executors.

@cescoffier cescoffier added this to the 0.7.1 milestone Dec 28, 2014

@cescoffier

This comment has been minimized.

Show comment
Hide comment
@cescoffier

cescoffier Dec 28, 2014

Member

Except if you use the Akka service directly, you should not be impacted by this change. The current Akka support is going to be exported as an extension.

Member

cescoffier commented Dec 28, 2014

Except if you use the Akka service directly, you should not be impacted by this change. The current Akka support is going to be exported as an extension.

@remi-parain

This comment has been minimized.

Show comment
Hide comment
@remi-parain

remi-parain Jan 11, 2015

Contributor

I use the akka service when i need the scheduled behavior for a non-harcoded time interval ( no annotation ). Will it be possible to do this with Thread Pool or will it need the extension?

Contributor

remi-parain commented Jan 11, 2015

I use the akka service when i need the scheduled behavior for a non-harcoded time interval ( no annotation ). Will it be possible to do this with Thread Pool or will it need the extension?

@cescoffier

This comment has been minimized.

Show comment
Hide comment
@cescoffier

cescoffier Jan 11, 2015

Member

The service will be a bit different, but you will have this feature, in a more flexible way actually.

If you rely on Akka API, you would need to deploy the (current) Akka-System explicitly.

Member

cescoffier commented Jan 11, 2015

The service will be a bit different, but you will have this feature, in a more flexible way actually.

If you rely on Akka API, you would need to deploy the (current) Akka-System explicitly.

cescoffier added a commit that referenced this issue Jan 17, 2015

#398 - Initial implementation of the thread pool service
Signed-off-by: Clement Escoffier <clement.escoffier@gmail.com>
@cescoffier

This comment has been minimized.

Show comment
Hide comment
@cescoffier

cescoffier Jan 17, 2015

Member

Ongoing work on the #398 branch.

Member

cescoffier commented Jan 17, 2015

Ongoing work on the #398 branch.

cescoffier added a commit that referenced this issue Jan 18, 2015

#398 - support scheduled task
Refactoring
Support of scheduled and periodic tasks
More tests

Signed-off-by: Clement Escoffier <clement.escoffier@gmail.com>

cescoffier added a commit that referenced this issue Jan 18, 2015

#398 - HTTP Context migrator
Signed-off-by: Clement Escoffier <clement.escoffier@gmail.com>

cescoffier added a commit that referenced this issue Jan 18, 2015

#398 - Fix the system executor and scheduler names
Signed-off-by: Clement Escoffier <clement.escoffier@gmail.com>

cescoffier added a commit that referenced this issue Jan 18, 2015

#398 - add pool creator
Signed-off-by: Clement Escoffier <clement.escoffier@gmail.com>

cescoffier added a commit that referenced this issue Jan 18, 2015

#398 - Integrate the new thread management system
Add the wisdom-thread-pools project to the base distribution
Migrate the router to the new services
Migrate Vertx to the new services

Signed-off-by: Clement Escoffier <clement.escoffier@gmail.com>

cescoffier added a commit that referenced this issue Jan 18, 2015

#398 - Add missing license headers
Signed-off-by: Clement Escoffier <clement.escoffier@gmail.com>

cescoffier added a commit that referenced this issue Jan 18, 2015

#398 - Migrate the @AynC support to the new Thread Pool Service
Signed-off-by: Clement Escoffier <clement.escoffier@gmail.com>

cescoffier added a commit that referenced this issue Jan 18, 2015

#398 - Migrate @every support
Also provide a TCCL Execution environment

Signed-off-by: Clement Escoffier <clement.escoffier@gmail.com>

cescoffier added a commit that referenced this issue Jan 18, 2015

#398 - Migrate the @every support (scheduler)
Signed-off-by: Clement Escoffier <clement.escoffier@gmail.com>

cescoffier added a commit that referenced this issue Jan 18, 2015

#398 - Migrate the monitor dashboard to new Scheduler service
Signed-off-by: Clement Escoffier <clement.escoffier@gmail.com>

cescoffier added a commit that referenced this issue Jan 18, 2015

#398 - Rename the module to wisdom-executors
Signed-off-by: Clement Escoffier <clement.escoffier@gmail.com>

cescoffier added a commit that referenced this issue Jan 18, 2015

#398 - Add tests about the TCCL migrator
Signed-off-by: Clement Escoffier <clement.escoffier@gmail.com>
@cescoffier

This comment has been minimized.

Show comment
Hide comment
@cescoffier

cescoffier Jan 18, 2015

Member

Right now, we still provide Akka (in the 0.7.1), Akka will be moved as an extension in the 0.7.2

Member

cescoffier commented Jan 18, 2015

Right now, we still provide Akka (in the 0.7.1), Akka will be moved as an extension in the 0.7.2

cescoffier added a commit that referenced this issue Jan 18, 2015

#398 - Add documentation
Signed-off-by: Clement Escoffier <clement.escoffier@gmail.com>
@cescoffier

This comment has been minimized.

Show comment
Hide comment
@cescoffier

cescoffier Jan 18, 2015

Member

So, I've made an implementation of executors and schedulers based on the Java Execution Services. This implementation is close to the JavaEE Concurrent specification (so you may recognize some concepts), but is definitely not an implementation (as it's really close to JavaEE).

I've migrated all Wisdom core feature to the new model.

Member

cescoffier commented Jan 18, 2015

So, I've made an implementation of executors and schedulers based on the Java Execution Services. This implementation is close to the JavaEE Concurrent specification (so you may recognize some concepts), but is definitely not an implementation (as it's really close to JavaEE).

I've migrated all Wisdom core feature to the new model.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment