Was configuring WSUS on a Server 2016 VM for a customer recently and found the performance to be very sluggish and most of the time the client PCs would time-out and throw an error message when trying to check for updates.
After much digging on different forums I came across a fix that worked nicely:
Open Internet Information Services (IIS) Manager and click on Application Pools
Then Right-Click on your WsusPool instance and choose Advanced Settings
Scroll down to Private Memory Limit (KB) and change it from the default of 1843200 to 0 which means unlimited.
Then right-click and stop the WsusPool and then start it again.
Hope this works for you.