Long-running comet requests are not a problem, they're the system functioning correctly. A comet request should last up to 120 seconds. If your request is taking 40 seconds, that means it takes 40 seconds for the comet actor on the server to send something to the client, which is perfectly normal. Now, if you're expecting updates more frequently, it's more likely that the load the backend is causing isn't allowing the comet actors to actually run, so they don't get a chance to send their responses back down to the client.
Thanks,
Antonio