moved executionService.shutdown to the end of the shutdown procedure

info: because other services still uses execution service, it is better to shutdown it last. currently it may throw exception.