Bug 32118 - UMC-Server: Module processes need too much memory
UMC-Server: Module processes need too much memory
Status: NEW
Product: UCS
Classification: Unclassified
Component: UMC (Generic)
UCS 5.0
Other Linux
: P5 normal (vote)
: ---
Assigned To: UMC maintainers
:
: 52655 (view as bug list)
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2013-07-29 16:34 CEST by Alexander Kläser
Modified: 2023-06-09 17:13 CEST (History)
3 users (show)

See Also:
What kind of report is it?: Bug Report
What type of bug is this?: 5: Major Usability: Impairs usability in key scenarios
Who will be affected by this bug?: 3: Will affect average number of installed domains
How will those affected feel about the bug?: 2: A Pain – users won’t like this once they notice it
User Pain: 0.171
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Kläser univentionstaff 2013-07-29 16:34:37 CEST
A little module such as the services module needs about 13MB of memory. This easily sums up for multiple users as each module has its own process and upon new authentication new processes are launched. The timeout for orphaned module processes is by default 10min.

The major problem is the stateful design of UMC. This problem can only be overcome with a stateless implementation such as REST postulates it (see also Bug 27816).
Comment 1 Florian Best univentionstaff 2023-06-09 17:10:22 CEST
*** Bug 52655 has been marked as a duplicate of this bug. ***
Comment 2 Florian Best univentionstaff 2023-06-09 17:13:36 CEST
Bug #43633 provides the possibility to let UMC modules be started as singleton, so that every user/session ends in the same subprocess → consumes only RAM for one additional process.

This can be enabled on a per module base. The first candidate where we should activate is the self-service as this is the most used UMC module from different users and therefore using the most resources.
A module must be capable to handle this.
A important thing therefore is, that when it uses data from the user (e.g. username, password) now `request.{username,password,auth_type}` must be used instead of `self.{username,password,auth_type}`.