[jboss-jira] [JBoss JIRA] Issue Comment Edited: (JBBOOT-116) Implement a Graceful Shutdown API and Implementation
Andrew Lee Rubinger (JIRA)
jira-events at lists.jboss.org
Mon Nov 23 13:36:29 EST 2009
[ https://jira.jboss.org/jira/browse/JBBOOT-116?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12496130#action_12496130 ]
Andrew Lee Rubinger edited comment on JBBOOT-116 at 11/23/09 1:36 PM:
----------------------------------------------------------------------
This may have to be spun up outside jboss-bootstrap, to be aware of the dependencies.
JBossWeb > EJB3 > JCA
JBossWeb must stop accepting new connections before EJB3 does, else the new connection may come in via Web and then blow up upon hitting EJB3.
I see 3 solutions:
1) ThreadLocal to mark that you have an incoming request in process. Other subsystems must honor this regardless of if they've already halted other normal requests. Ugly contract.
2) Tie into MC dependency mechanism through some add-on
3) New lifecycle phase like "pre-stop", where we add this graceful shutdown handling. Then the dep chain is built into and fired from MC, and we take advantage of this in a lifecycle callback.
was (Author: ALRubinger):
This may have to become an MC component, to be aware of the dependencies.
JBossWeb > EJB3 > JCA
JBossWeb must stop accepting new connections before EJB3 does, else the new connection may come in via Web and then blow up upon hitting EJB3.
I see 3 solutions:
1) ThreadLocal to mark that you have an incoming request in process. Other subsystems must honor this regardless of if they've already halted other normal requests. Ugly contract.
2) Tie into MC dependency mechanism through some add-on
3) New lifecycle phase like "pre-stop", where we add this graceful shutdown handling. Then the dep chain is built into and fired from MC, and we take advantage of this in a lifecycle callback.
> Implement a Graceful Shutdown API and Implementation
> -----------------------------------------------------
>
> Key: JBBOOT-116
> URL: https://jira.jboss.org/jira/browse/JBBOOT-116
> Project: JBoss Bootstrap
> Issue Type: Feature Request
> Reporter: Andrew Lee Rubinger
> Assignee: Andrew Lee Rubinger
>
> As identified by the Summer 2009 AS Meeting.
> Requirements:
> * Decoupled sufficiently from other Bootstrap mechanisms as to not leak out dependencies
> * 2-phase event-listener registration API
> * May be injected into MC Beans
> * 1st phase is a concurrent broadcast to all subsystems which have registered: "prepare for shutdown"
> * When all listeners have reported "ready", fire 2nd phase: "shutdown"
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list