vert-x3 / issues

Apache License 2.0
37 stars 7 forks source link

Erlang-style Verticle supervisor #211

Open InfoSec812 opened 7 years ago

InfoSec812 commented 7 years ago

Erlang supports the concept of a "Supervisor" which keeps track of the state of various "Actors" within the virtual machine. It would be awesome if Vert.x could support a similar concept. For example, the vertx.deployVerticle() method could have a counterpart (e.g. vertx.deploySupervisedVerticle()) which returns the deployment ID and allows the calling Verticle to track and monitor the state of the deployed Verticle. I can accomplish SOME of this using the event bus and start future, but a simplified and standardized API would be boon.

http://erlang.org/doc/man/supervisor.html

vietj commented 7 years ago

@InfoSec812 it would be a nice feature indeed, recently we have added the handler to know the uncaught failures on a Verticle context (Context#exceptionHandler), if we expose the Context somehow, this context handler can be used to undeploy the verticle and redeploy it with a policy.

Is it something you would like to contribute ?

InfoSec812 commented 7 years ago

Julien,

Sorry for the slow response, but I was out of town for a while... I

will certainly take a look, though I expect my ramp-up time will be drawn out.

Deven

On Sun, Nov 6, 2016 at 9:46 AM, Julien Viet notifications@github.com wrote:

@InfoSec812 https://github.com/InfoSec812 it would be a nice feature indeed, recently we have added the handler to know the uncaught failures on a Verticle context (Context#exceptionHandler), if we expose the Context somehow, this context handler can be used to undeploy the verticle and redeploy it with a policy.

Is it something you would like to contribute ?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/vert-x3/issues/issues/211#issuecomment-258685474, or mute the thread https://github.com/notifications/unsubscribe-auth/AAGFayFqtarmZczDdSKN7S-90gmFvtzTks5q7egpgaJpZM4Kqh-1 .