In the logs, I see repeated info logs from client session which have the message "WebSocket disconnected from sessions" and I have many warning messages from client session with the message "Received event for missing view". I do have the views so I am not sure why it says missing view.
You'll have to provide us with a bit more detail for anyone to know where to point you to start looking. Provide specifications on your gateway server (RAM, CPU cores, vm/baremetal, sharing a VM with a db, etc), as well as the number of connected devices and normal amount of perspective sessions you have connected. If you have a large amount of trending in perspective that can put a large load on your gateway.
Also, if you haven't already, check out the sizing guide from IA. You may just be running an undersized server for your workload.
I agree that calling support is your best course of action.
I will add that I've seen cameras drive up CPU utilization if your camera settings are aggressively streaming frames to an HMI client. If you're using a camera, try temporarily removing that and see where you're at. If it is the camera you can adjust the configuration to cut CPU utilization.