diff --git a/podder/handlers.py b/podder/handlers.py
index 2cafc7e..825cd60 100644
--- a/podder/handlers.py
+++ b/podder/handlers.py
@@ -15,6 +15,7 @@
 #
 from common.utils.dockerhelpers import create_host_config, create_container, start_container, create_networking_config, \
     get_all_running_containers, inspect_container, remove_container
+from docker import errors
 
 from structlog import get_logger
 import yaml
@@ -77,7 +78,10 @@
 def service_shutdown(service, instance_name, config):
     containers = get_all_running_containers()
     for container in containers:
-        info = inspect_container(container['Id'])
+        try:
+            info = inspect_container(container['Id'])
+        except errors.NotFound, e:
+            continue
         envs = info['Config']['Env']
         for env in envs:
             for name in env.split('='):
diff --git a/podder/main.py b/podder/main.py
index d02fc63..412ae58 100755
--- a/podder/main.py
+++ b/podder/main.py
@@ -35,7 +35,8 @@
     instance_id=os.environ.get('INSTANCE_ID', os.environ.get('HOSTNAME', '1')),
     internal_host_address=os.environ.get('INTERNAL_HOST_ADDRESS',
                                          get_my_primary_local_ipv4()),
-    work_dir=os.environ.get('WORK_DIR', '/tmp/podder')
+    work_dir=os.environ.get('WORK_DIR', '/tmp/podder'),
+    threads=os.environ.get('PODDER_THREADS', 5)
 )
 
 def parse_args():
@@ -103,6 +104,14 @@
                         action='count',
                         help=_help)
 
+    _help = 'Number of events to handle in parallel'
+    parser.add_argument('-e', '--events-in-parallel',
+                        dest='threads',
+                        type=int,
+                        default=defs['threads'],
+                        action='store',
+                        help=_help)
+
 
     args = parser.parse_args()
 
diff --git a/podder/podder.py b/podder/podder.py
index 7cd166d..e3a2fe4 100644
--- a/podder/podder.py
+++ b/podder/podder.py
@@ -27,7 +27,7 @@
     def __init__(self, args, slave_config):
         self.log.info('Initializing Podder')
         self.running = False
-        self.events = EventProcessor()
+        self.events = EventProcessor(threads=args.threads)
         self.handlers = { 'podder_config' : Template(slave_config) }
 
     def run(self):
