This discussion has been locked. The information referenced herein may be inaccurate due to age, software updates, or external references.
You can no longer post new replies to this discussion. If you have a similar question you can start a new discussion in this forum.

Serv-u loads only one processor core during high-load operations

Our team noticed that Serv-u started to work very slow, did not allow pretty much every new connection/login. It started to happen after import of ~500 users where some of them had missing Home Directories (that was the core issue eventually). It happened for a few days in a row. Looks like Serv-u initialized some user validations which took all available for it CPU. Serv-u did not provide any explanation what is going on.

Anyway when we were digging into the issue we noticed that on the multi (6) core server Serv-u consumes only one core but completely (at glance 80+%).

Questions:

1 how to make sure that Serv-u can use all available server resources in particular all processor cores?

2 am I right about user Home Driectopry validation in the background? if so could the case with 500+ users with wrong directories trigger such a slowness?

3 according to the import description do you think it is expected behavior for Serv-u to halt the ftp server behind the scene without reason explanation? maybe I need to look at specific place in the app/log/system to understand what is going on?

Details

The ftp server machine was configured for modest traffic recommendation as per https://support.solarwinds.com/@api/deki/files/27052/Serv-U_File_Server_Administrator_Guide.pdf?revision=6

Windows Server 2012 R2

Intel Xean CPU E5-2620 v3 2.4Ghz 6 cores

RAM 4 GB

Network 10GB

Hard drive space 120 GB

Serv-U v 15.1.4.6

  • I have also seen this activity but when maxed out the Serv-U.exe process only seems to use 25-30% CPU on Task Manager (probably because it is a 4-core server).

    Any ideas on giving serv-u.exe more processing power in high-load situations?

  • Are you using SQL to manage your user accounts?  If so, it gets very ugly once each user collection exceeds around 100 users.  Try splitting off your userlist into smaller sized user collections (organizations) so the users within don't go over 100 in each. 

    Also use the management console over HTTPS from another machine.  Using the local one from a console session kills server performance as well.

  • Yes having lots of users in a single collection does take a lot of CPU but even when not using SQL. Whichever method is used, Serv-U.exe still does not use more than 1 core.

    Any ideas?

  • Use a better product if you're able to move off Serv-U.  Multi threaded applications have been around a long time now and the Solarwinds developers most likely haven't moved with the times.  It's possible the Linux version is more CPU efficient but that will need an answer from them as I can't use my thousands of users a guinea pigs to test this on.  It seems best practice is largely ignored.  If you use SFTP (SSH) as an example the only Key Exchange Method on the ITEF current draft which is down as "MUST" support isn't available in the latest Serv-U version.