Siddharth,
The gateway can stream through messages that are over 2GB in size as long as the gateway does not have to act against the payload - transformation, logging, and such. When the payload is acted against then the request may need to be saved to memory and/or writing to the audit database tables so memory allocation and database table size becomes a factor.
As for the efficient payload size, 100k to 1MB is the standard that we see where transformation/orchestration is employed. This size can grow and usually is separating fast path (small messages) and slow path (large messages) through either dedicated ports with private thread pool or gateway clusters.
Sincerely,
Stephen Hughes
Director, CA Support