I am working on a web service that requires user input python code to be executed on my server (we have checks for code injection).  I have to import a rather large module so I would like to make sure that I am not starting up python and importing the module from scratch each time something runs (it takes about 4-6s).  
To do this I was planning to create a python (3.2) deamon that imports the user input code as a module, executes it and then delete/garbage collect that module.  I need to make sure that that module is completely gone from RAM since this process will continue until the server is restarted.  I have read a bunch of things that say this is a very difficult thing to do in python.
What is the best way to do this?  Would it be better to use exec to define a function with the user input code (for variable scoping) and then execute that function and somehow remove the function?   Or is there a better way to do this process that I have missed?
You could perhaps consider to create a pool of python daemon processes?
Their purpose would be to serve one request and to die afterwards.
You would have to write a pool-manager that ensures that there are always X daemon processes waiting for an incoming request. (X being the number of waiting daemon processes: depending on the required workload). The pool-manager would have to observe the pool of daemon processes and start new instances every time a process was finished.
User Input Python Script Executing Daemon