Is that safe to do it once, store as static, and after that reuse these resources? According to my test yes, but I would like any confirmation from the Activiti developers, you know, to be on the safe side…

RuntimeService uses parts of the created process engine. You can call getRuntimeService() multiple times, it doesn't affect the application performance. You can always read the code for yourself if in doubt :)