Is it possible to limit the amount of concurrent connections of a specific user
Affiliation General Atomics/DIII-D
Context We have an automated workflow that we are in the process of applying to a large chunk of our MDS+ database. At the moment the going is slow because we limit the amount of concurrent instances of this workflow to avoid overloading our MDS+ server. The workflow is launched by a service account, and if the MDS+ server would automatically hold concurrent connections from this service account when a certain threshold is reached, we could scale-up without having to worry about our MDS+ server.
Question Is it possible to automatically hold connection attempts for a specific user once a threshold of connections has already been opened by this user. Note that we want to hold them and not reject them as that would cause unacceptable failures in our workflow downstream.
Hi @AreWeDreaming,
My initial guess (perhaps wrong) is that is not possible in current versions of MDSplus. However, I will investigate and post a definitive answer in the next day or two.
If limiting concurrent connections per user can't be done at the moment, we might be able to add that capability as a new feature. That too would require some investigation to determine feasibility.
Hi @AreWeDreaming,
My colleagues have confirmed that MDSplus presently cannot limit concurrent mdsip connections per user. (Using the standard features of Linux, it is possible to apply "rate limiting" to all connections, but that likely isn't what is needed for your automated workflow).
If you decide that this is a feature that MDSplus should have, let us know if this issue should be upgraded to a feature request.
Yes, just to reiterate, once an mdsip process is spawned (by xinetd or systemd) it is "out of our hands" so to speak. We do not have a system-wide process managing the mdsip processes, and adding one would be a threading nightmare. You will unfortunately have to rely on system management tools to control the number of processes, and I don't have any recommendations as to how.