Theoretically, the message size is limited only by the size of the JVM. But I do not think it is good sending too large messages. I would say if your message is more than 10K, think about your design.
If you really need to send a lot of messages with your message, probably the best solution would be to store the data in the database and send the identifier of the main object with the message, so that the other side will be able to extract the data it needs.
source share