If your application is suitable for clustering and/or load balancing, then you can avoid missing resource issues during restarts by running multiple AS nodes, and restarting them one at a time.
I've typically used Apache with mod_jk for this, but I believe the current recommended solution is mod_cluster.
http://www.jboss.org/mod_cluster
In particular:
In mod_cluster, each server forwards any web application context lifecycle events (e.g. web-app deploy/undeploy) to the proxy informing it to start/stop routing requests for a given context to that server.
Hope that helps.