Univention Bugzilla – Bug 53849
Run UDM REST API in PyPy
Last modified: 2021-09-30 14:55:06 CEST
+++ This bug was initially created as a clone of Bug #50050 +++ The UDM HTTP API service uses only 1 process. Under medium load UDM is CPU-bound, and thus the UDM HTTP API cannot deliver speedups available in multi-cpu/core systems. -------------------------------------------- As UDM, and thus the UDM REST API, is CPU bound, executing it in PyPy (https://www.pypy.org/) can make it run up to 4 times faster with relatively small modifications. Of cause that means not only adapting the UDM REST API to execute in PyPy, but also all UDM modules and hooks. It could be worth it, to at least create a PoC to see possible speed improvements.
We would need to execute tests for all UDM modules, hooks, syntaxes with pypy. Sometimes pypy has some obscure differences to cpython.
Yes, such a test suite would be required. It would be worth creating it for environments with high performance requirements.