In a
word: yes. Well, not so much that GC "can't keep up", but simply that GC overhead becomes apparent once max memory is consumed and the only free memory comes from reclamation.
I'd be concerned, though, that there's an issue with excess memory consumption -- probably a leak. Is it possible that there are objects being retained past their useful lives? Are there static variables of any kind? And kind of static caches? Threads being created for each client?