I love the simplicity of RPyC - fantasic however I have one issue which is preventing me from using it. Has anyone successfully implemented RPyC using the multiprocessing module in a service exposed by RPyC.
My requirement is as follows, I have a server process running on multiple machines, a client process centrally controls the schedule and dependencies of multiple "jobs" which are executed by service the server (a "job" for all intensive purposes is a Linux shell script, windows batch file, python module, Java, etc.) As multiple jobs may be executed in parallel on the same server, I had implemented this using the python multiprocessing module such that it would run in a separate thread and I could run multiple "jobs" on the same server at the same time. I do not know nor am I able to limit the number of "Jobs" to be executed in parallel on the server. I get the following errors, I will paste my code in a subsequent post if it helps however someone maybe able to advise if this is a known issue, RPyC constraint or someone has a suggested pattern or workaround for this problem. *ERROR ON CLIENT SIDE* *...* *...* *"PicklingError: Can't pickle <type 'thread.lock'>: it's not found as thread.lock"* *ERROR ON SERVER SIDE*: *Traceback (most recent call last):* * File "<string>", line 1, in <module>* * File "C:\Python27\lib\multiprocessing\forking.py", line 381, in main* * self = load(from_parent)* * File "C:\Python27\lib\pickle.py", line 1378, in load* * return Unpickler(file).load()* * File "C:\Python27\lib\pickle.py", line 858, in load* * dispatch[key](self)* * File "C:\Python27\lib\pickle.py", line 880, in load_eof* * raise EOFError* *EOFError* *Exception AttributeError: "'Connection' object has no attribute '_closed'" in ignored* Any advice would be greatly appreciated. -- --- You received this message because you are subscribed to the Google Groups "rpyc" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
